The Short Version

Twenty-seven signals across five families. The first six (Reachability) are the floor: without them the other 21 don't matter. The next six (Legibility) make your content identifiable. The middle six (Quotability) decide whether the engine can lift a passage. The next five (Credibility) decide whether it cites you by name. The last four (Cluster Depth) decide your ceiling.

The 5 signal families (30-second recap)

The definitional pillar explains the families in depth; here's the short version with the signal count per family:

The 5 families and their signal counts

  • Reachability (6 signals):can the bot reach the page
  • Legibility (6 signals):does the bot understand what the page is
  • Quotability (6 signals):is the content structured to be lifted
  • Credibility (5 signals): is the page trustworthy as a source
  • Cluster Depth (4 signals): does the site show topic authority

No engine publishes exact signal weights, and the relative weights differ by engine (Google AI Overview is strictest on schema, Perplexity is most aggressive about citation). Each family below ends with a directional weight note.

Reachability (6 signals)

The crawl-access family. Floor signals: if a Reachability signal fails, none of the other 21 matter.

1llms.txt validity

A machine-readable file at /llms.txt signalling to AI crawlers which pages on your site to prioritize. Generative engines use llms.txt the way classical search engines used sitemap.xml in 2010 — as a content-priority map. Missing or malformed llms.txt drops you below sites that have one. Measure: fetch https://yoursite.com/llms.txt and validate format.

2AI bot allowlist in robots.txt

Explicit Allow rules for GPTBot, ClaudeBot, PerplexityBot, Google-Extended, and Bytespider. CDN templates often block AI bots by default; sites that don't review this stay out of the training and retrieval indexes. Measure: curl https://yoursite.com/robots.txt and grep for each user-agent.

3Server-side rendered HTML

Generative engine crawlers do not reliably execute JavaScript. Content delivered as HTML (SSR or static) is visible; content that depends on client-side hydration often isn't. Measure: view-source your page and confirm the main content is present in the raw HTML, not just <div id="root">.

4Response code health

4xx and 5xx responses on indexed pages reduce overall site trust and cap crawl frequency. A clean 2xx profile across the pages engines try to fetch is the cheapest signal to maintain. Measure: monitor server-log status codes; Search Console flags persistent 4xx/5xx.

5XML sitemap completeness

A current XML sitemap listing every indexable page, with accurate <lastmod> dates per URL. Engines use the sitemap to discover new content and prioritize freshly-changed pages. Stale or incomplete sitemaps slow discovery without erroring visibly. Measure: compare sitemap URL count against your site's actual page count.

6Page load speed

Crawlers operate on rate-limited budgets. Slower pages get crawled less often. Core Web Vitals (LCP, FID, CLS) affect AI crawl frequency the same way they affect Google's crawl frequency. Measure: PageSpeed Insights or any Core Web Vitals dashboard.

Reachability weight: floor. Required, not differentiating. Skipping this family is the only fatal error.

Legibility (6 signals)

The bot-understanding family. Reachability gets the crawler to your page; Legibility tells it what kind of content it found and who published it.

7Article + Organization + Author + FAQPage schema

Schema.org markup declaring the page type. Engines use schema to identify candidate pages for specific query types: FAQPage schema for question queries, HowTo for instructional, DefinedTerm for definitional. Without schema, the engine has to infer. Measure: Google's Rich Results Test or schema.org validator.

8Semantic HTML hierarchy

Properly nested H1 → H2 → H3 with no skipped levels. Ordered lists for sequences. Tables for comparisons. Semantic HTML tells the engine which chunks are quotable as standalone passages. A wall of <div> tags reads as undifferentiated text.

9Entity name consistency

Your organization, product, and author names spelled identically across pages. "SEMalytics" vs "Semalytics" vs "SemAnalytics" forces the engine to disambiguate three entities that should be one — and lowers entity confidence for all three.

10About-section presence

A linked About page with Organization schema, founding details, and named team. Anonymous sites get lower citation confidence. The About page is where engines go to confirm you're a real organization — without it, they're guessing.

11Canonical URLs

One canonical URL per piece of content, declared via <link rel="canonical">. Duplicate or competing URLs split citation share and confuse entity attribution. Common failure mode: parameterized URLs and AMP variants without canonical declarations.

12Open Graph and Twitter Card meta

og:title, og:description, og:type, twitter:card. Originally for social-sharing previews; engines now read them as backup entity signals when on-page content is ambiguous.

Legibility weight: enabling. Required for the engine to evaluate any other family. Fast to ship.

Quotability (6 signals)

The structural-for-extraction family. Highest per-edit leverage: small content changes here move citation share faster than any other family.

13Answer-shaped section leads

The first one or two sentences of each section directly answer the implicit question. Generative engines lift the first quotable sentence per section; if the answer is in paragraph four, you don't get cited.

14FAQ schema with quotable answers

FAQPage schema with Q-A pairs whose answers run 50-300 characters and are structurally complete. AI Overviews preferentially lift FAQ schema answers because they're pre-formatted for citation.

15Step lists for how-to intent

Ordered HTML lists for sequential instructions, optionally with HowTo schema. Engines lift individual steps as discrete quotes; prose narration of the same steps doesn't parse the same way.

16Definition leads for what-is intent

Bold definition sentence followed by elaboration. Often paired with DefinedTerm schema. The highest-leverage format for definitional queries — and definitional queries are the AI Overview's bread and butter.

17Comparison tables for vs intent

HTML tables with proper <thead> and <tbody> for head-to-head comparisons. Engines extract table rows as compact comparative quotes. A vs-query that finds a comparison table tends to surface that table's row over a competitor's prose.

18Blockquote and pull-quote elements

Explicit <blockquote> tags around quote-worthy claims. Marks the passage as "lift-this-verbatim" rather than "summarize-this." A small but real signal that gets ignored on most sites.

Quotability weight: highest per-edit leverage. Fastest ROI on rewrite time.

Credibility (5 signals)

The trust-as-a-source family. Hardest to fake, slowest to build, but determines whether the engine cites you by name or paraphrases without attribution.

19Named author with credentialed bio

Visible author byline on every published page, linked to a bio page with credentials, prior work, and external verification (LinkedIn, published research, GitHub). Anonymous content gets paraphrased; named experts get cited by name.

20Original data or primary research

At least one piece of analysis, data, or observation engines can't find elsewhere. A proprietary benchmark, an original comparison, a named dataset — any of these rank a page higher for citation than pages synthesizing the same public sources every competitor cites. One original table or chart is usually enough to move you out of the summarizer tier.

21Source citations

Named sources with inbound links when citing studies, data, or external claims. Engines pattern-match citation behavior: a page that names and links its sources looks different to a retrieval model than one that asserts without backup, even when the underlying claims overlap.

22dateModified currency

Visible date stamp in the page header plus dateModified in schema, updated when content is substantively changed. An undated page has no freshness signal at all; engines read the date stamp the same way a reader does. Update dateModified only on real changes — typo fixes don't count.

23Organization schema with founder/team

Schema.org Organization markup on your About page including founder, employee, foundingDate, and contact info. The entity backbone engines use to evaluate publisher trustworthiness.

Credibility weight: ceiling. Hardest to game, most determinative once the floor signals are met.

Cluster Depth (4 signals)

The site-level family. Slowest-moving but ceiling-determining: clusters take months to build and signal site-wide topic authority.

24Hub-and-spoke topic architecture

One pillar page per priority topic plus three to seven spoke pages, all cross-linked. The structure engines use to identify topic authorities. A single excellent page on an otherwise-thin topic ranks below the same page surrounded by a coherent cluster.

25Internal link density

Sufficient internal links from pillar to spokes and between siblings to signal cluster membership. Sparse internal linking caps how much authority the cluster can accumulate, regardless of how good the individual pages are.

26No keyword cannibalization

One canonical page per intent. Two pages competing for the same query dilute each other and split citation share. The hidden cases — three pages all targeting "best X" with slightly different framings — are the ones that quietly cap citation share without showing up in Search Console.

27Subtopic coverage breadth

Each cluster covers the major subtopics readers expect under the parent topic. Missing subtopics signal incomplete authority. To find the gaps: run your priority queries through Google AI Overview and Perplexity, catalog the subtopics that appear in their cited sources, then check which of those subtopics your cluster doesn't cover.

Cluster Depth weight: ceiling-determining, slow to build, hardest to undo. Start once you have at least one pillar per priority topic.

Classical SEO vs GEO ranking factors

The two frameworks reward different signals — and the same site can win one while losing the other. Here's where they diverge:

Classical SEO ranking factor GEO ranking factor
Highest-leverage on-page signal Title-tag keyword targeting Answer-shaped section leads (Quotability #13)
Authority signal Backlink graph (domain authority) Cluster depth + citation-worthiness (Credibility + Cluster Depth)
Crawl access robots.txt + XML sitemap llms.txt + AI-bot allowlist + SSR (Reachability #1-3)
Entity disambiguation Google Knowledge Graph + schema Schema + entity name consistency + Organization markup (Legibility #7-12)
Content freshness signal dateModified + content refresh dateModified + original data + recent source citations (Credibility #20-22)
Update cadence 4-6 named algorithm updates per year Continuous via model retraining + retrieval-index refreshes
What "winning" looks like Click from search results Citation by name in the AI-generated answer (zero-click possible)

A site can dominate classical SEO position-tracking while losing every AI Overview citation, and vice versa. The 27 signals above are specifically the GEO side of that gap.

How to measure all 27 at once

Spot-checking each signal manually takes hours per page. Three measurement paths, scaling up:

  1. Manual per-page audit. Use Google's Rich Results Test for schema, PageSpeed Insights for Core Web Vitals, view-source for SSR confirmation, and a llms.txt validator. Each signal takes a few minutes; the full audit takes 1-2 hours per page.
  2. Per-cluster audit. Survey 5-10 pages in your top cluster. Score each on the 27 signals. The patterns emerge faster than the absolute scores — if half your cluster is missing FAQ schema, that's the fix worth shipping first.
  3. Automated 27-signal audit. A GEO audit tool runs all 27 checks across multiple pages and engines, then groups findings by family and impact. The SEMalytics free GEO audit at /seo-audit/ runs the full 27-signal check and returns a prioritized punch list with proposed fixes in plain language.

Score all 27 signals on a single page in under 60 seconds. The free GEO audit groups findings by family and tells you which to fix first.

Run a Free GEO Audit →

FAQ

How many of the 27 signals do I need to win to get cited?

Hitting the floor on Reachability (signals 1-6) is non-negotiable — without it the other 21 don't matter. After that, strong performance on two of the remaining four families beats trying to max all five. A common pattern: ship the six Reachability signals and the six Legibility signals as a baseline, then concentrate edits on Quotability for fastest impact and Credibility for highest ceiling. Cluster Depth compounds in parallel; you don't need to wait for it to start ranking.

Which signal family carries the most weight?

No engine publishes exact weights, and the directional answer depends on which engine. Google AI Overview leans hardest on Credibility (E-E-A-T) because it inherits Google's quality-rater rubric. ChatGPT and Claude weight Reachability and Legibility most visibly because their citation candidates are pulled from indexes built on what their crawlers can read and identify. Perplexity weights Credibility heavily because it cites by name aggressively. The honest prioritization answer: ship Reachability regardless of engine, then choose between Quotability (fastest results, most per-edit leverage) and Credibility (slowest to build, highest ceiling) based on your timeline. If you have three weeks, go Quotability-first. If you have a quarter, run them in parallel.

How often do generative engines update their signal weights?

Continuously, not in named algorithm updates. Classical SEO had Google's 4-6 named updates per year (Panda, Penguin, BERT, helpful-content). Generative engines reweight signals every time their underlying model is retrained or their retrieval index is refreshed — which for ChatGPT and Claude happens in cycles measured in months, and for Google AI Overview happens continuously via the Search Generative Experience layer. Plan on signals shifting in 30-90 day cycles rather than waiting for a named update.

Do these signals apply to all generative engines or just Google AI Overview?

The signal families apply across all four major generative engines (Google AI Overview, ChatGPT, Claude, Perplexity). The relative weights differ. Google AI Overview is the strictest on schema and E-E-A-T. ChatGPT and Claude weight crawl access most visibly because they depend on what GPTBot and ClaudeBot can read. Perplexity is the most aggressive about citing sources by name. A page that passes the 27-signal audit competes for citation across all four; engine-specific tuning is a second-pass optimization.

Where should I start if I'm building a GEO strategy from zero?

Start with what unblocks everything else. llms.txt and the AI-bot allowlist are one-day fixes; ship them first. Schema and semantic HTML take a day or two per page. Then rewrite your section leads to be answer-shaped — that's Quotability, and it moves fastest. Credibility (original data, named author, source citations) is weeks of work per page; start it now and let it compound. Cluster Depth is months-long; don't wait to start, but don't expect it to carry the early results.