VectorCiteVectorCite
Transparent · the full rubric

47 signals.Every weight published.

Most AEO tools ship a number out of a black box. We ship the entire scorecard. Each signal lists what we measure, why it matters for AI citation, the fix when it's absent, and the published source. Use this as a working spec — implement it against your own audit if you want.

Structure
13 signals
Authority
8 signals
Content
11 signals
Trust
7 signals
E-E-A-T
8 signals
A note on calibration: impact tiers shown on this page are a public summary. Exact category-weight ratios and per-signal calibration values live in the open spec at AEO-SPEC-v1. They're calibrated quarterly against the public corpus and updated under semver.

Structure

13 signals · 25% of overall

How parseable your page is to an AI engine. Schema, headings, lists, tables, alt-text, OG meta. The substrate that makes everything else legible.

  • structural-depth

    Structural depth (GEO-SFE)

    High impact
    What
    Heading hierarchy + nested structure depth — H1→H2→H3 nesting that mirrors a real outline.
    Why
    arXiv:2603.29979 shows a +17.3% citation lift for pages with measurable structural depth vs flat documents.
    Fix
    Group your content under named H2 subsections. Use H3 for sub-points. Don't skip levels.
    Source
    GEO-SFE (arXiv:2603.29979) + Aggarwal et al. NeurIPS 2024
  • internal-linking

    Internal linking

    Medium impact
    What
    Links from this page to other pages on your site — signal of a navigable graph.
    Why
    AI crawlers expand context via internal links the same way they crawl. Isolated pages get under-indexed.
    Fix
    Add 5–10 internal links per page to related concepts, glossary terms, or supporting pages.
    Source
    Anthropic web-search retrieval docs
  • page-weight

    Page weight

    Standard impact
    What
    Total HTML size, lower is better. We flag pages over 500 KB.
    Why
    AI render bots have shorter timeouts than humans. Heavy pages get truncated or skipped.
    Fix
    Strip unused JS, defer below-the-fold images, kill render-blocking third-party scripts.
    Source
    Google SGE crawler docs
  • json-ld-presence

    JSON-LD presence

    High impact
    What
    Whether the page ships at least one schema.org JSON-LD block.
    Why
    Schema.org is the single highest-leverage signal for AI Overview eligibility — engines parse it before text.
    Fix
    Add at minimum an Organization or Article block. Our /tools/schema-generator outputs valid JSON-LD.
    Source
    Google SGE evaluation guide
  • json-ld-validity

    JSON-LD validity

    Medium impact
    What
    Whether the JSON-LD parses, has @context = schema.org, and a valid @type.
    Why
    Malformed JSON-LD is worse than absent — engines log a parse error and downrank trust.
    Fix
    Run your JSON-LD through Google's Rich Results Test before shipping.
    Source
    Google SGE evaluation guide
  • json-ld-relevance

    JSON-LD type relevance

    Medium impact
    What
    Whether the @type matches the page intent (Article on a blog, Product on a PDP, FAQPage on a FAQ).
    Why
    Wrong-type schema gets ignored — Article markup on a homepage is parsed as noise.
    Fix
    Pick the closest schema.org type for the page's actual content, not a generic catch-all.
    Source
    schema.org documentation
  • faq-schema

    FAQ schema

    Medium impact
    What
    FAQPage JSON-LD with at least 2 Q&A pairs.
    Why
    FAQPage is the highest single-type lift for AI Overview citations per Google's own SGE guidance.
    Fix
    Add FAQPage schema with 3–5 question/answer pairs that mirror real buyer queries.
    Source
    Google SGE evaluation guide
  • h1-quality

    H1 quality

    Medium impact
    What
    Exactly one H1, length 20–70 chars, contains a primary query token.
    Why
    AI engines treat H1 as the page's claim — multiple H1s confuse the topical model.
    Fix
    One H1 per page, descriptive, 30–60 chars, includes the page's primary topic.
    Source
    Google SGE crawler docs
  • h2-coverage

    H2 coverage

    Medium impact
    What
    ≥3 H2 subsections that segment the content for skim-readability.
    Why
    AI engines extract H2s as section anchors — pages without them are harder to summarize.
    Fix
    Break content into 3–6 H2 subsections, each addressing a sub-question.
    Source
    Aggarwal et al. NeurIPS 2024
  • lists

    Lists

    Standard impact
    What
    ≥1 <ul> or <ol> with ≥3 items.
    Why
    Lists are the unit AI engines preferentially extract for 'how to X' and 'best Y' queries.
    Fix
    Convert at least one paragraph of enumerated reasons or steps into a real <ul>/<ol>.
    Source
    Aggarwal et al. NeurIPS 2024
  • tables

    Tables

    Standard impact
    What
    ≥1 <table> with proper <thead>/<tbody> for structured data.
    Why
    Tables are the highest-extraction-rate format for comparison and spec-sheet queries.
    Fix
    If you have specs, prices, or comparisons, render them as real <table>s, not images.
    Source
    Aggarwal et al. NeurIPS 2024
  • alt-text

    Alt-text

    Standard impact
    What
    ≥80% of <img> tags have non-empty alt attributes.
    Why
    Multi-modal engines (Gemini, Claude, GPT-4o) read alt-text as page semantic context.
    Fix
    Add descriptive alt to every meaningful image. Decorative images get alt="".
    Source
    Google SGE evaluation guide
  • open-graph

    Open Graph metadata

    Medium impact
    What
    og:title, og:description, og:image, og:type all present.
    Why
    AI engine link previews + social shares use OG meta as the citation card.
    Fix
    Add the 4 OG tags. Use 1200×630 og:image. Our /tools/og-checker validates them.
    Source
    Open Graph Protocol

Authority

8 signals · 20% of overall

Whether your page reads as authored by an expert, citing real sources. Bylines, citations, statistics, quotations, freshness, technical terms.

  • citation-density

    Citation density

    Medium impact
    What
    Inline citations per 1000 words (target ≥2).
    Why
    Pages that cite sources get cited as sources. Citation density is the strongest non-link authority signal.
    Fix
    Replace 'studies show' with 'a 2024 Stanford study (link)'. Specificity wins.
    Source
    GEO paper §4.2
  • statistic-density

    Statistic density

    Medium impact
    What
    Quantitative claims with numbers per 1000 words (target ≥3).
    Why
    AI engines preferentially cite content with measurable claims over hand-wavy text.
    Fix
    Add real numbers — percentages, dollar amounts, time durations — to your claims.
    Source
    Aggarwal et al. NeurIPS 2024
  • quotations

    Direct quotations

    Standard impact
    What
    Inline <blockquote> or quoted attributions.
    Why
    Quotations imply primary research. They lift citation rates ~12% in the GEO paper test set.
    Fix
    Quote one customer, one expert, or one primary source per long page.
    Source
    GEO paper
  • author-byline

    Author byline

    Medium impact
    What
    A named author with at least a real name in the byline area.
    Why
    Anonymous content is treated as low-E-E-A-T. AI engines surface authored content.
    Fix
    Add 'By [Name]' at the top. Link to a real author bio page. Use Person schema.
    Source
    Google SGE + E-E-A-T docs
  • date-markup

    Date markup

    Standard impact
    What
    datePublished + dateModified in JSON-LD or <time datetime>.
    Why
    Engines penalize undated content as potentially stale. Dated content gets freshness scoring.
    Fix
    Add JSON-LD datePublished + dateModified, or a visible <time datetime> tag.
    Source
    Google SGE evaluation guide
  • freshness

    Freshness

    Standard impact
    What
    Date modified within the last 365 days.
    Why
    Stale content gets downranked for time-sensitive queries. Re-publishing dates resets the clock.
    Fix
    Refresh top pages at least annually. Bump dateModified when you do.
    Source
    Google freshness algorithm docs
  • technical-terms

    Technical term density

    Standard impact
    What
    Domain-specific terminology indicating real expertise vs surface-level writing.
    Why
    Pages that use precise technical vocabulary signal genuine expertise.
    Fix
    Use the field's actual technical language. Glossary-link or define the first occurrence.
    Source
    GEO paper §4.3

Content

11 signals · 25% of overall

Whether the page actually answers the buyer query — directly, completely, in the right register. BLUF, query coverage, sub-question coverage, readability.

  • direct-answer

    Direct answer to query

    High impact
    What
    Whether the buyer query appears answered in the first 200 chars.
    Why
    AI engines preferentially extract direct answers. Burying the answer = no citation.
    Fix
    Lead the page with a 1–2 sentence direct answer to the primary query. Then expand.
    Source
    GEO paper §3.2
  • bluf-answer

    BLUF (Bottom Line Up Front)

    Medium impact
    What
    A clear thesis statement in the first paragraph stating the page's main claim.
    Why
    Military-doctrine writing style — BLUF dramatically improves AI extractability.
    Fix
    Open with 'The answer is X. Here's why.' Don't bury the lede.
    Source
    U.S. military writing doctrine + adopted by Anthropic prompt eng team
  • query-coverage

    Query token coverage

    Medium impact
    What
    Fraction of query tokens that appear in the page body (target ≥80%).
    Why
    Coverage is a baseline relevance signal — missing tokens means the page misses the query.
    Fix
    Make sure every meaningful query token appears at least once in body content.
    Source
    BM25 + cosine retrieval fundamentals
  • entity-coverage

    Entity coverage

    Medium impact
    What
    Named entities mentioned that match the query's entity space.
    Why
    AI engines build an entity graph per page — missing related entities reduces topical authority.
    Fix
    If the page is about X, mention X's known related entities (people, places, products).
    Source
    Knowledge graph extraction literature
  • readability

    Readability (Flesch)

    Standard impact
    What
    Flesch Reading Ease score (target 50–70 for general audiences).
    Why
    Engines extract from content humans can read. Sub-30 (academic) and 80+ (childlike) both underperform.
    Fix
    Shorten sentences. Cut adverbs. Aim for 16-word average sentence length.
    Source
    Flesch (1948) + adapted by SGE
  • length

    Page length

    Standard impact
    What
    Word count in the main content (target 800–3000).
    Why
    Too short = thin; too long = engines truncate. Sweet spot is medium-long form.
    Fix
    If under 600 words, expand with examples + sub-sections. If over 4000, split into hub + spokes.
    Source
    Empirical GEO paper data
  • info-density

    Information density

    Standard impact
    What
    Ratio of substantive content to filler.
    Why
    Dense content gets preferentially cited. Engines model 'value per token' implicitly.
    Fix
    Cut throat-clearing sentences. Replace 'It is important to note that' with the actual point.
    Source
    Empirical GEO paper data
  • mega-page-coverage

    Mega-page coverage

    Medium impact
    What
    Whether the page covers multiple closely-related sub-topics under one URL.
    Why
    Mega-pages outrank thin pages on AI engines because they cover entity neighborhoods.
    Fix
    Consolidate 3 thin pages into one comprehensive page with H2-segmented sub-topics.
    Source
    Ahrefs research + Cleartopic.io
  • youtube-embed

    YouTube embed

    Standard impact
    What
    Embedded YouTube video alongside the article.
    Why
    Multi-modal engines weight pages with on-topic video. 0.737 correlation with citation rate.
    Fix
    Create or embed a 2–4 minute video on the page topic. Mark up with VideoObject schema.
    Source
    Ahrefs 2025 study
  • sub-query-coverage

    Sub-query coverage

    Medium impact
    What
    Fraction of decomposed sub-questions answered in body content.
    Why
    Engines decompose seed queries into 4–6 sub-queries (Profound 'fanouts') — missing answers = missing citations.
    Fix
    Add a Q&A section that explicitly addresses the top 5 sub-questions for your topic.
    Source
    Profound Query Fanouts methodology
  • definitions

    In-line definitions

    Standard impact
    What
    First-mention terms defined inline ('X (definition…)').
    Why
    Defined-in-place pages get cited as glossary sources. AI engines preferentially link to them.
    Fix
    Define the key 3–5 terms on first use, in-line.
    Source
    Stanford NLP citation extraction work

Trust

7 signals · 10% of overall

Crawl-time + share-time trust signals: HTTPS, canonical, viewport, AI-bot access via robots/llms.txt, Twitter card, meta description.

  • ai-bot-access

    AI bot access (robots.txt)

    Medium impact
    What
    Whether robots.txt explicitly addresses GPTBot/ClaudeBot/PerplexityBot.
    Why
    Default-allow gets you crawled, but explicit allow signals intent + unlocks niche AI bots.
    Fix
    Add User-agent: GPTBot/ClaudeBot/OAI-SearchBot/PerplexityBot rules to robots.txt.
    Source
    OpenAI / Anthropic / Perplexity bot docs
  • llms-txt-presence

    llms.txt presence

    Medium impact
    What
    Whether /llms.txt exists per llmstxt.org spec.
    Why
    Explicit channel for telling AI engines exactly which content to ingest. 2026 frontier signal.
    Fix
    Generate llms.txt via our /audit/llms-txt tool. Add to site root.
    Source
    llmstxt.org spec
  • https

    HTTPS

    Standard impact
    What
    Site responds correctly over TLS without mixed content.
    Why
    AI crawlers refuse to crawl mixed-content pages. HTTPS is table stakes.
    Fix
    Migrate to HTTPS. Force redirect with HSTS. Fix mixed-content warnings.
    Source
    Web standards + Google ranking docs
  • canonical

    Canonical URL

    Standard impact
    What
    <link rel=canonical> pointing to the page's preferred URL.
    Why
    Without canonical, AI engines may split citations across duplicate URLs and downrank each.
    Fix
    Add <link rel=canonical href=…> to every page. Self-canonical on canonical pages.
    Source
    Google canonical docs
  • viewport

    Viewport meta

    Standard impact
    What
    <meta name=viewport content=…> present.
    Why
    Mobile rendering signal — AI crawlers favor mobile-first content.
    Fix
    Add <meta name=viewport content="width=device-width, initial-scale=1">.
    Source
    Google mobile-first indexing docs
  • twitter-card

    Twitter card

    Standard impact
    What
    <meta name=twitter:card> + twitter:image present.
    Why
    AI engines fall back to Twitter card on platforms without OG support.
    Fix
    Add twitter:card=summary_large_image + twitter:image (can reuse og:image).
    Source
    X (Twitter) card docs
  • meta-description

    Meta description

    Standard impact
    What
    <meta name=description> with 80–160 chars of summary text.
    Why
    AI engines use meta description as a primary summary candidate when generating cites.
    Fix
    Write a 130-char meta description for every page. Include the primary query.
    Source
    Google docs + SGE evaluation guide

E-E-A-T

8 signals · 20% of overall

Google's framework for Experience, Expertise, Authoritativeness, Trustworthiness. First-person evidence, case studies, author credentials, brand entity in Wikidata, press mentions, privacy policy, contact info.

  • first-person

    First-person evidence

    Medium impact
    What
    First-person language indicating real experience ('we tested', 'I built').
    Why
    Google's E-E-A-T update prioritizes lived experience. First-person signals it.
    Fix
    Use first-person sparingly but precisely — 'we tested', 'in our experience', 'I found that…'.
    Source
    Google E-E-A-T quality rater guidelines
  • case-study-evidence

    Case study evidence

    Medium impact
    What
    Named customer outcomes, numbers, or before/after evidence in-line.
    Why
    Case studies are the highest-conversion E-E-A-T signal — prove it, don't just claim it.
    Fix
    Name one customer. Quote one outcome with numbers. 'We helped X go from Y → Z.'
    Source
    Google E-E-A-T guidelines
  • author-credentials

    Author credentials

    Medium impact
    What
    Author has visible credentials — years of experience, prior role, education, certifications.
    Why
    Anonymous bylines fail E-E-A-T. Credentialed authors get treated as expert sources.
    Fix
    Each author page lists credentials, prior roles, years in field, links to LinkedIn/Twitter.
    Source
    Google E-E-A-T guidelines (Quality Rater Guidelines §3.2)
  • byline-depth

    Byline depth

    Standard impact
    What
    Byline links to a real author bio page with sufficient detail.
    Why
    Byline → bio page → credentialed author chain is the E-E-A-T graph engines trace.
    Fix
    Make every byline link to /authors/[name] with bio, photo, credentials, prior work.
    Source
    Google E-E-A-T guidelines
  • brand-entity

    Brand entity in Wikidata

    Medium impact
    What
    Brand has a Wikidata entity (Q-number) that AI engines can dereference.
    Why
    Wikidata is the canonical entity database — engines use it to validate brand identity. No entity = no trust anchor.
    Fix
    Get a Wikidata entry: requires 2–3 press mentions as citations. Submit at wikidata.org.
    Source
    Wikidata + knowledge graph literature
  • press-mentions

    Press mentions

    Standard impact
    What
    References to or links from top-tier press (NYT, WaPo, Bloomberg, FT, etc.).
    Why
    Press mentions transfer authority across the citation graph and validate brand entity claims.
    Fix
    Earn press. Display logos. Link back to the original article (not your case study).
    Source
    Empirical brand-citation research
  • privacy-terms

    Privacy + terms

    Standard impact
    What
    Linked privacy policy + terms of service from every page.
    Why
    YMYL (Your-Money-Your-Life) categories require these — and engines treat them as legitimacy signals everywhere.
    Fix
    Footer-link privacy and terms on every page. Real pages, not coming-soon stubs.
    Source
    Google YMYL + E-E-A-T guidelines
  • contact-info

    Contact info

    Standard impact
    What
    Real contact info — email, phone, or address visible on the page or linked /contact.
    Why
    Anonymous brands fail E-E-A-T. Real contact info signals real entity behind the content.
    Fix
    Add an email + physical address (real or registered office) to the footer.
    Source
    Google E-E-A-T guidelines

Score your page on all 47.

The rubric here is documentation. The audit runs it against your real HTML.

Run free audit