Generative Engine Optimization is not a rebrand of SEO. It is a narrower question: can an answer engine fetch your page, read it without a browser, extract a self-contained claim from it, and attribute that claim to you? Four gates, and most sites fail at the first two for reasons that never show up in a rankings report.
This skill is a diagnostic procedure, not a checklist to hand a client. It is built to be run by an agent with shell access against a live site.
Ground rules for this audit
Follow these or the output will be confidently wrong.
- Grade every claim you make. This skill labels its own evidence
[vendor](the engine's own documentation),[measured](a study with a stated method and sample size),[contested], or[unverified]. Carry that discipline into your report. "Google says X" and "an agency blog says X" are not the same finding. - Never state an AI-visibility number from a single observation. Answer
engines are non-deterministic at the systems level, not just at temperature.
One thousand identical requests to Qwen3-235B at temperature 0 produced 80
unique completions — the cause is batch-invariance failure in hosted
inference, so "set temperature to 0" does not make this reproducible
(Thinking Machines Lab, 2025-09-10)
[measured]. See Sampling math before you report any rate. - Report per engine. Only about 2.4% of cited URLs appear in ChatGPT and Perplexity and AI Overviews for the same prompt; roughly 91% appear in exactly one. A blended "GEO score" averages over near-disjoint systems and means nothing.
- Prefer removing a blocker to adding a tactic. The evidence for retrievability fixes is vendor-documented and causal. The evidence for content tactics is correlational and, in the largest end-to-end test, sometimes negative (see Honest limits).
- Do not audit from a logged-in AI account. Personalization and stored memory contaminate the result. Location is a first-class input to every engine; record the one you tested from.
Inputs to collect first
Ask for whatever is missing, then proceed with what you have — most of Phase 1 needs nothing but the domain.
- Domain, and whether a CDN or WAF sits in front of it (Cloudflare especially).
- Search Console access, and specifically whether the property appears in the Generative AI performance report.
- Server or CDN logs, ideally 30 days, with user-agent and status code.
- Analytics with referrer or channel data.
- The 5–20 prompts the business actually wants to be named in. If the user has none, write them: buyers ask "best X for Y", "X alternatives", "is X worth it", not brand names.
- Named competitors, so the answer sets can be compared.
Phase 1 — Retrievability
This phase is the whole audit until it passes. Every finding here is a hard gate: fail one and no amount of content work can compensate. These are also the only findings in this skill backed by vendor documentation rather than correlation.
1.1 Which bots actually matter
The single most common and most expensive mistake in this field is treating "AI crawler" as one thing. Each vendor runs separate, independently controlled bots for training and for search. Blocking the training bot does nothing to your citations. Blocking the search bot removes you from answers today.
OpenAI states it plainly: "Each setting is independent of the others — for
example, a webmaster can allow OAI-SearchBot in order to appear in search
results while disallowing GPTBot", and "Sites that are opted out of
OAI-SearchBot will not be shown in ChatGPT search answers"
(OpenAI bots) [vendor].
| Bot / token | Operator | What it feeds | Blocking it costs citations? |
|---|---|---|---|
OAI-SearchBot | OpenAI | ChatGPT search index | Yes — this is the one |
GPTBot | OpenAI | Model training | No |
ChatGPT-User | OpenAI | Live user-triggered fetch | No (robots "may not apply") |
PerplexityBot | Perplexity | Perplexity's search index | Yes |
Perplexity-User | Perplexity | User-triggered fetch | Yes, for in-answer links |
Claude-SearchBot | Anthropic | Claude's search index | Yes |
Claude-User | Anthropic | User-directed fetch | Yes |
ClaudeBot | Anthropic | Model training | No |
Googlebot | Search index → AI Overviews + AI Mode | Yes | |
Google-Extended | Gemini Apps / Vertex training and grounding | No | |
bingbot | Microsoft | Bing index → Copilot + grounding API | Yes |
Applebot | Apple | Siri, Spotlight, Safari | Yes |
Applebot-Extended | Apple | Training opt-out | No |
meta-externalagent | Meta | Training and indexing | No |
CCBot | Common Crawl | Open corpus used in training sets | No |
Two traps worth stating explicitly in your report:
Google-Extendeddoes not control AI Overviews. Google: it "doesn't have a separate HTTP request user agent string" and "does not impact a site's inclusion in Google Search nor is it used as a ranking signal" (Google crawlers, updated 2026-07-14)[vendor]. AI Overviews are fed by Googlebot. Grepping logs forGoogle-Extendedis wasted effort — it has no UA string to find.- Anthropic publishes tokens, not literal UA strings. Any "full ClaudeBot
user agent" you have seen is a log observation, not documentation
[unverified].
Do this
DOMAIN="example.com"
# 1. Read robots.txt in full — do not trust a summary tool.
curl -sS "https://$DOMAIN/robots.txt"
# 2. Fetch a real content page as each bot that matters. You are looking for
# the status code AND the byte count — a 200 with an empty body is the
# dangerous case.
URL="https://$DOMAIN/"
for UA in "OAI-SearchBot/1.0" "PerplexityBot/1.0" "Claude-SearchBot/1.0" \
"Googlebot/2.1" "bingbot/2.0" "Mozilla/5.0"; do
printf '%-24s %s\n' "$UA" \
"$(curl -sS -o /tmp/geo-body -w 'HTTP %{http_code} %{size_download}B %{time_total}s' \
-A "$UA" "$URL")"
done
Interpretation:
- 403 / 401 / 429 for an AI bot but 200 for a browser → a WAF or CDN rule, not robots.txt. This is invisible in robots.txt and is the most common cause of total AI invisibility.
- 200 with a much smaller body than the browser fetch → either bot-specific cloaking or a challenge page.
- All 4xx except 429 are terminal. Google: "All 4xx errors, except 429,
are treated the same: Google crawlers inform the next processing system that
the content doesn't exist" (HTTP errors, 2026-02-04)
[vendor].
Verify by IP, not by user agent, when reading logs. UA strings are trivially
spoofed. Published ranges: openai.com/gptbot.json, openai.com/searchbot.json,
claude.com/crawling/bots.json, perplexity.com/perplexitybot.json, and
Google's files under developers.google.com/static/crawling/ipranges/. Google is
the only one documenting forward-confirmed reverse DNS.
robots.txt changes take roughly 24 hours to affect ChatGPT search [vendor].
1.2 The CDN layer, and a dated warning
OpenAI's own guidance names the failure mode: to be included you must allow
OAI-SearchBot "and ensure your site host and/or content delivery network allows
traffic from our published IP addresses" [vendor].
If the site is on Cloudflare, check AI Crawl Control and
Security → Configure AI bot policies, plus the legacy "Block AI bots"
toggle. The tell is a crawler showing a healthy block count and a zero
allowed count — you cannot see traffic that never arrived. In one documented
case a firm ran with AI blocking on for seven months without noticing, because
Googlebot was never blocked and classic rankings kept improving; after
unblocking, GPTBot requests went from 0 to 14,292 a day [practitioner, single site].
Time-sensitive as of 2026-08-10. Cloudflare's revised AI policy takes effect 2026-09-15: for new domains including the free tier, Training and Agent crawlers are blocked by default on ad-displaying pages. Cloudflare states that "multi-purpose crawlers such as Googlebot, Applebot, and BingBot will be blocked by customers who have selected to block Training" — including via the legacy Block AI bots service (Cloudflare, 2026-07-01)
[vendor]. On any zone with Training blocked, this is a de-indexing risk, not just an AI risk. Flag it as urgent and diary the date.
Also check whether the zone serves AI Labyrinth decoy pages to non-compliant crawlers. A status-code-only audit sees 200 OK while fabricated content is being attributed to the domain.
1.3 Rendering — assume no JavaScript
Googlebot renders JavaScript; its Web Rendering Service "processes JavaScript
and executes client-side code similar to a modern browser" [vendor]. No
other major AI crawler is known to. Vercel and MERJ instrumented the traffic
and found "none of the major AI crawlers currently render JavaScript" across
OpenAI, Anthropic, Meta, ByteDance and Perplexity
(Vercel, 2024-12-17) [measured].
They fetch JS files without executing them.
Be honest about the state of this evidence in your report: no vendor documents
its rendering behavior either way, and the crawler-level measurement has not
been replicated in the twenty months since. It was independently corroborated
through a different pathway — prompting ChatGPT, Perplexity and Claude for exact
paragraphs from a fully client-rendered site, with server-rendered controls
passing and the CSR pages failing, ChatGPT stating outright that it could not
read content that relied on JavaScript rendering
(Gabe, 2025-08-11) [measured, small n].
The asymmetry to communicate: a client-rendered SPA is a mild Google problem and a total blocker for ChatGPT, Claude and Perplexity.
Do this
# What a non-rendering crawler sees. Compare the word count to the page as a
# human reads it — an order-of-magnitude gap means the content is JS-only.
curl -sS -A "OAI-SearchBot/1.0" "https://$DOMAIN/" \
| sed -e 's/<script[^>]*>.*<\/script>//g' -e 's/<[^>]*>/ /g' \
| tr -s '[:space:]' ' ' | wc -w
Then check that the specific claims you want cited — pricing, the definition, the differentiator — appear in that raw text, not just the word count.
Do not be fooled by agentic browsers. ChatGPT Atlas, Claude for Chrome and Comet run real Chromium and will happily read a pasted SPA URL. They are user-driven, one page at a time, and populate no index. "ChatGPT read my site when I gave it the link" is not evidence the site is retrievable.
Related and frequently missed: a JavaScript paywall that ships the full article
into the DOM leaks it to non-rendering crawlers, while a server-side paywall
blocks them entirely. One curl tells you which you have. If content is
deliberately gated, mark it up with isAccessibleForFree and
hasPart/cssSelector so it reads as a paywall rather than cloaking [vendor].
1.4 Eligibility gates and snippet controls
Two Google-specific gates that are invisible unless you look for them:
- The Search Console generative-AI control. Google's guide states a page
must be indexed and eligible to be shown with a snippet, and that the site
must be included in Search generative AI features via the Search Console
setting (opt-out control, announced 2026-06-03)
[vendor]. Check it. It is new, it is a hard gate, and nothing in analytics reveals it. nosnippetandmax-snippet. These are the only documented levers on AI Overviews input. Google:nosnippet"will also prevent the content from being used as a direct input for AI Overviews and AI Mode" (robots meta tag, updated 2026-03-24)[vendor]. There is no AI-only opt-out here — using it costs the ordinary search snippet too. Note the exception: themax-snippetlimit does not apply to content supplied as in-page structured data.data-nosnippetworks only on<span>,<div>and<section>.
Bing exposes the cleanest "stay indexed, leave the AI" controls in the
industry: NOARCHIVE "prevents content from being used in Copilot responses
and grounding results", NOCACHE limits Copilot to URL, title and snippet
(Bing Webmaster Guidelines) [vendor].
Audit these as unintended opt-outs — they are often inherited from a template.
Also worth checking: Google now caps fetches at 2MB per URL, headers
included; beyond that, bytes "aren't fetched, aren't rendered, aren't
indexed" [vendor]. Keep title, canonical and JSON-LD high in the document.
1.5 Crawl waste
AI crawlers are far less efficient than Googlebot and burn their budget on dead
URLs: ChatGPT spends 34.8% of fetches on 404s plus 14.4% on redirects, and
Claude 34.2% on 404s, against Googlebot's 8.2% and 1.5% [measured, Vercel/MERJ].
Audit sitemaps for dead and redirecting URLs, collapse redirect chains, and fix internal links pointing at 404s. This is unglamorous and it is the highest-yield mechanical fix available.
Ignore the widely repeated "AI crawlers time out after 1–5 seconds" figures.
They trace to a single vendor blog citing a secondary source, the variants
contradict each other, and no AI vendor documents any crawl timeout
[unverified].
Phase 2 — Extractability
Only start here once Phase 1 is clean. Everything below is correlational. Say so.
2.1 The retrieval model to reason from
Both documented engines expand a user's question into several machine-generated queries before retrieving anything.
Google calls it query fan-out: "a set of concurrent, related queries
generated by the model", retrieved against the ordinary Search index
(AI optimization guide, updated 2026-07-10) [vendor].
OpenAI describes the same shape: ChatGPT "typically rewrites your query into
one or more targeted queries", sent to search partners — Bing and Shopify are
the named partners — with follow-up queries after reviewing results [vendor].
The largest retrieval study measured what this does in practice: 548,534 pages
retrieved across 15,000 prompts, of which only 15% were cited; 89.6% of
prompts triggered two or more fan-out searches; 32.9% of cited pages
appeared only in fan-out results; and 95% of fan-out queries have zero
traditional search volume
(AirOps, 2026-03-13) [measured].
Two consequences for the audit:
- Classic ranking is still the substrate. 55.8% of cited pages ranked in
Google's top 20, and position 1 was cited 3.5× more often than pages outside
the top 20
[measured]. A site with no organic visibility has a retrieval problem before it has a GEO problem. - Keyword volume is the wrong map. Most of the queries that actually fetch your page do not exist in any keyword tool. Audit topic coverage against the sub-questions a buyer asks, not against a volume list.
2.2 Where the citation comes from on the page
The strongest content-level study matched 18,012 verified citations from 1.2M
AI answers using sentence-transformer alignment
(Indig, 2026-02-18) [measured]:
- 44.2% of citations come from the first 30% of the page; 24.7% from the final third. Burying the answer roughly halves retrieval probability.
- Within a paragraph the pattern inverts — 53% of citations come from paragraph middles, only 24.5% from opening sentences. Front-load at the article level; do not strip context out of individual sentences.
- Passages containing a question mark are cited about twice as often, and 78.4% of question-related citations were tied to headings.
- Definitional constructions ("X is", "X refers to") are about twice as likely in cited passages.
- Cited text averages 20.6% proper nouns against a 5–8% baseline — entity density, not keyword density.
- Reading level of cited pages: grade 16, versus 19.1 for underperformers. Clear professional prose, not the grade 6–8 floor the listicles prescribe.
What to check
- Does each page answer its own title question in the first screen, in a sentence that survives being quoted with no surrounding context?
- Are H2/H3s phrased as the questions buyers actually ask?
- Are pronouns resolved within each section? A passage that says "it integrates with" is unusable as a standalone citation.
- Are entities — product, company, category, competitors — named explicitly and spelled consistently across the site?
- Is critical information locked inside tabs or accordions? Microsoft warns
directly: "Don't hide important answers in tabs or expandable menus: AI
systems may not render hidden content"
(Microsoft Advertising, 2025-10)
[vendor]. - Is anything important available only inside a PDF or an image?
2.3 Where Google and Microsoft disagree — surface both
Do not present the field as settled, because the two vendors contradict each other in writing.
Google says structure barely matters [vendor]: no chunking is required
("Google systems are able to understand the nuance of multiple topics on a
page"), "There's no ideal page length", "You don't need to write in a
specific way just for generative AI search", and structured data "isn't
required for generative AI search".
Microsoft says structure is the mechanism [vendor]: Copilot "break[s]
content down, a process called parsing, into smaller, structured pieces… then
assembled into answers", and recommends explicit Q&A pairs because
"Assistants can often lift these pairs word for word". Bing's guidelines add:
surface key information near the top of the URL, make facts verifiable without
relying on implied context, define entities consistently, and keep each URL to
a single topic.
The defensible synthesis: structure the page so a single passage can stand alone, because that costs nothing and one major engine says it is the mechanism. Do not chunk content into fragments to please a parser — the other major engine says that is unnecessary, and Phase 3's evidence says over-fitting prose to the generator can backfire.
2.4 Length, freshness and schema — three tactics that underperform their reputation
Length is measured to be irrelevant. Across 174,048 pages with valid data
drawn from 560,346 AI Overviews, word count correlated with citation at
r = 0.04, and 53.4% of cited pages were under 1,000 words
(Ahrefs, 2025-12-03) [measured].
Google independently says there is no ideal page length. Delete any word-count
floor from the client's brief.
Freshness is weaker than the narrative. Across 16,975,000 cited URLs, the
mean age of a cited page was 1,064 days — about 2.9 years (ChatGPT 958,
Perplexity 1,166), and AI Overviews showed no freshness advantage over plain
organic (Ahrefs, 2025-07-28) [measured].
Claims like "content under 30 days old earns 3.2× more citations" are flatly
contradicted by this and should be treated as false [unverified].
What does matter is date hygiene: a visible, correctly labeled date consistent
with datePublished/dateModified, and minimal competing dates on the page
[vendor]. Sitemap lastmod is used only "if it's consistently and verifiably
accurate" — a CMS stamping build time onto every URL is worse than omitting
it, because the signal is discarded site-wide.
Structured data has the weakest causal case of anything commonly sold as GEO
work. Correlationally, AI-cited pages were three times more likely to carry
JSON-LD — but a difference-in-differences test on 1,885 pages that added
JSON-LD against 4,000 matched controls found AI Overviews citations
−4.6%, with AI Mode (+2.4%) and ChatGPT (+2.2%) indistinguishable from noise
(Ahrefs, 2026-05-11) [measured].
The one genuinely actionable schema finding: a unique fact placed only inside
FAQ schema was retrieved by no platform. Extraction pipelines convert pages to
markdown, which has no representation for a <script type="application/ld+json">
block. If a fact matters, it must be in the visible rendered text.
Two corrections to make loudly if the site or the brief relies on them:
FAQPage rich results ended 2026-05-07 and the documentation was removed
2026-06-15; HowTo has been dead since 2023-09-14 [vendor]. The durable way
to check this yourself — and the check to re-run before quoting any date above —
is that neither type appears in Google's
search gallery
of supported structured data. The question-and-answer content pattern still
works. The markup no longer buys a rich result, and Google says schema is not
required for AI features at all.
Keep structured data for what it is documented to do — Article, Organization, Product, Breadcrumb, Review snippet, Event, JobPosting, LocalBusiness — and stop selling it as an AI lever.
2.5 Agentic readability — the genuinely new surface
This is the newest well-sourced recommendation available, and almost nobody audits it.
Browser agents work by "analyzing visual renderings (like screenshots),
inspecting the DOM structure, and interpreting the accessibility tree"
[vendor]. OpenAI states independently that ChatGPT Atlas "uses ARIA tags —
the same labels and roles that support screen readers — to interpret page
structure" [vendor]. Chrome's Lighthouse has shipped an Agentic Browsing
audit category.
Which means accessibility work is now agent-compatibility work. Check:
real <button> and <a> elements rather than click-handling <div>s; role
and tabindex where custom controls are unavoidable; <label for> on every
input; interactive targets comfortably larger than a few pixels; no transparent
overlays intercepting clicks; and a stable layout, since agents that work from
screenshots are defeated by content that shifts under them [vendor].
If a user cannot complete the signup or the pricing path with a keyboard and a screen reader, an agent probably cannot complete it either.
Phase 3 — Entity presence and off-site
3.1 Your own site is a minority of the answer
Four independent studies converge for brand-subject queries: brand-owned domains
account for roughly 13–18% of citations — 13.2% across 21,311 brand mentions
in 500+ commercial queries; 14.3% across 167,551 citations covering 128
companies; 17.7% for SaaS in a top-10-cited-domains analysis [measured].
You will also see a claim that ~57% of citations go to "brand" sites, from a much larger 11.84-billion-citation dataset. Both are correct and the difference is entirely definitional: that study's "brand" bucket means any company-operated property, including your competitors', and it classes G2, Stack Overflow and LinkedIn as "Social" rather than earned media. State the bucketing or the number is meaningless. The synthesis: the answer is mostly corporate websites, and mostly not yours.
Practical consequence: an audit that stops at the client's own domain has audited a minority of the surface.
3.2 Entity prominence dominates everything else
Across roughly 37,000 runs against a 533-brand catalogue, surface rate fell by
market tier: 77% → 60% → 23% → 8% → 3%, and 48–52% of fourth- and
fifth-tier brands never surfaced in any of the 37,000 runs [measured]. A
separate study found global names in 72.9% of relevant answers against 11.4%
for niche brands [measured].
The mechanism is peer-reviewed rather than folklore: model scaling "fails to
appreciably improve memorization of factual knowledge in the tail", and
retrieval augmentation disproportionately helps long-tail entities
(Mallen et al., ACL 2023) [measured].
Read that as good news for a small brand — retrieval is the equalizer, which is why Phase 1 outranks everything else — and as a reason to be honest about timelines. A tier-4 brand does not become tier-1 by editing its H2s.
While you are here: Wikipedia's weight is a retrieval and quality effect, not a
volume effect. It is 0.19% of tokens in C4 and 0.14% in Dolma [measured].
Do not build a strategy on "get into the training data".
3.3 Mentions track better than links, which is not permission to buy them
Across 75,000 brands, Spearman correlation with AI Overview presence:
branded web mentions 0.664, branded anchors 0.527, branded search volume
0.392, domain rating 0.326, referring domains 0.295, backlinks 0.218
(Ahrefs, 2025-05-26) [measured].
An independent study using a different method found Google page-1 ranking
correlating at ≈0.65 with LLM mentions against ≈0.10 for backlinks — two
organizations, different designs, same ordering [measured].
Ahrefs' own caveat is that these correlations are "moderate to very weak", and
Google warns directly that "Seeking inauthentic 'mentions' across the web isn't
as helpful as it might seem" [vendor].
The honest finding is "AI visibility tracks brand prominence more closely than it tracks the link graph" — a reason to fund PR, docs, community presence and comparison content, not a reason to buy mentions.
3.4 Listicles and reviews
Ranked third-party "best of" listicles are roughly 21% of all citations, and
blog-style lists were 43.8% of cited page types in one 750-prompt sample
[measured]. Moving from unranked to rank 1 in a frequently-cited listicle
was associated with +16.5pp visibility in B2B SaaS, and answer position 1.17
places earlier, across ~200,000 AI responses over eight engines — the authors
correctly call this observational, not causal [measured].
Your own "best X" page can backfire. Across 100 B2B queries there were
224 instances where Google cited a brand's own listicle but excluded that
brand from the recommendations, and recommended competitors in 69% of those
cases (Search Engine Land, 2026-06-18) [measured].
Audit for this specifically: it is a self-inflicted wound that looks like good
content marketing.
Review platforms appear in 34.5% of commercial AI Overviews, but the split
by intent matters — 49% on explicit "review" queries against 17.1% on
"best"/"top" queries [measured]. Temper the pitch: G2's own regression of
review volume against citations returned a coefficient of 0.097 with
R² = 0.009 — roughly +2% citations for +10% reviews [vendor]. That figure
is credible precisely because it is adverse to the vendor selling reviews.
3.5 Expect the source mix to move under you
Over weekly snapshots of 230,000 prompts and 100M+ citations, ChatGPT's Reddit
citation rate fell from ~60% to ~10% and Wikipedia from ~55% to under 20%
within a single month, with no corresponding change at Reddit or Wikipedia
[measured]. Separately, 40–60% of cited sources turn over month to month
[measured].
Put this in the report as an expectation-setter. A month-over-month swing in citation share is the base rate, not evidence that the work failed or worked.
Phase 4 — Measurement
4.1 What each platform actually gives you
| Bing | OpenAI / Anthropic / Perplexity | ||
|---|---|---|---|
| Report | Generative AI performance report | AI Performance (public preview) | None |
| Metric | Impressions only | Citations | — |
| Clicks / CTR | No | No | — |
| Queries | No | Yes — sampled grounding queries | — |
Neither major report gives a funnel: Google gives impressions without citations, Bing gives citations without clicks.
One mechanic to internalize before drawing any conclusion from Search Console:
"An AI Overview occupies a single position in search results, and all links in
the AI Overview are assigned that same position" [vendor], and AI Overview
data sits inside the Web search type with no appearance filter. So
"impressions up, clicks down" cannot be attributed to AI Overviews from Search
Console alone unless the property has the newer generative-AI report.
4.2 Referrals, and why the number is always a floor
GA4 now ships a native AI Assistants channel (medium ai-assistant) —
check for it before hand-rolling a channel group [vendor]. ChatGPT appends
utm_source=chatgpt.com, which is vendor-documented in OpenAI's publisher FAQ
[vendor]. Perplexity and Gemini generally append nothing [practitioner].
Native apps strip referrers, and Gemini and AI Overview clicks arrive labelled
google.com, indistinguishable from organic. Every AI referral number you
report is a lower bound. Say so in the report.
4.3 Log analysis
Segment by bot token, then by status code:
200with healthy byte counts — working.403— WAF or CDN block. Phase 1.2.429— rate limiting; check whether it is aggressive enough to matter.200with a near-empty body — client-side rendering failure. The most dangerous row in the table, because the logs look perfectly healthy.
Track the ratio of OAI-SearchBot to GPTBot hits: search-bot activity is the
one that predicts citation eligibility.
4.4 Prompt-level tracking, and the sampling math
Rank tracking does not transfer. Two runs of the same query returned AI Overview
sources at RBO 0.67; a minor query edit dropped it to 0.49 [measured]. In
a 2,961-run volunteer study, ChatGPT and Google AI returned the same brand list
twice in fewer than 1 in 100 runs, and the same list in the same order about
1 in 1,000 [measured]. Sentiment flips roughly 6.7× more often than
mention presence does [measured].
So report a rate with an interval, never a rank. At p ≈ 0.3, a 95% confidence interval is roughly ±28pp at n = 10, ±16pp at n = 30, and ±9pp at n = 100. Worse, the false-negative risk of observing zero mentions when the true rate is 20% is 80% at n = 1 and 11% at n = 10.
A single "ChatGPT doesn't mention us" check is worthless. If a client's brief rests on one, that is itself a finding. Sample each prompt at least 10 times per engine, and prefer 30 before claiming a change over time.
Two more cautions:
- Vendor metrics are not comparable. Definitions differ enough that a brand appearing at position 5 in 80% of answers can score ~52 in one tool and 80 in another, both correct by their own documentation. Switching tools produces a step change with no real-world cause. Never mix tools in one trend line.
- The API is not the consumer product. Answers captured through an API
differ from what a user sees in the app, and no published study quantifies the
gap
[unverified]. - Cited is not named. In one dataset 61.7% of citations never named the
brand, and citation correlated with mention at −0.229
[measured]. Track both; do not treat them as one metric.
Anti-patterns — do not recommend these
Each of these is either measured not to work or contradicted by vendor documentation. If the site already does one, that is a finding.
| Recommendation | Why it's wrong |
|---|---|
| Keyword stuffing "for the LLM" | The only intervention that scored below baseline in the GEO paper (17.8 vs 19.5); Bing lists it under abuse [measured, vendor] |
Publishing llms.txt for visibility | See below [vendor, measured] |
Blocking GPTBot to "protect content" while expecting ChatGPT citations | Independent settings; OAI-SearchBot is the one that matters [vendor] |
Using Google-Extended to control AI Overviews | It governs Gemini/Vertex only and has no UA string [vendor] |
| Adding FAQPage or HowTo schema for rich results | FAQPage ended 2026-05-07; HowTo since 2023-09-14 [vendor] |
| Marking up content that is not visible on the page | Extraction is markdown-based; invisible facts are not retrieved, and it risks a manual action [vendor, measured] |
| Word-count floors, reading-level floors, chunking into fragments | r = 0.04 with citation; Google says no ideal length; cited pages read at grade 16 [measured, vendor] |
| Refreshing dates without changing content | Mean cited page is ~2.9 years old; inaccurate lastmod gets the signal discarded site-wide [measured, vendor] |
| Buying unlinked brand mentions | Google: inauthentic mentions "aren't as helpful as it might seem" [vendor] |
| "Submitting" a site to ChatGPT | No such mechanism exists; the only lever is bot access [vendor] |
| Using IndexNow to reach AI assistants | IndexNow names six consumers: Amazon, Bing, Naver, Seznam, Yandex, Yep [vendor] |
| Claiming AI penalizes AI-written content | The policy targets scaled content abuse, not the authoring tool [vendor] |
| Trusting a tool that claims insight into AI ranking systems | Google: "No third-party tool has access to our internal ranking or AI systems" [vendor] |
On llms.txt specifically
State this precisely, because the sloppy version is easy to refute.
No AI search system is documented to consume llms.txt for citation. Google
is explicit: "You don't need to create new machine readable files, AI text
files, markup, or Markdown to appear in Google Search… as Google Search itself
doesn't use them" [vendor]. Across 137,210 domains with recent traffic,
97% of published llms.txt files received zero requests in a month; of the
3% fetched, 96% of requests came from bots, led by SEO audit tools at 21.7%
(Ahrefs, 2026-06-15) [measured]. The
study's control is the strongest part: no AI bot goes looking for an llms.txt
that does not exist.
Two honest qualifications, which make the position stronger rather than weaker:
- Coding agents do read it. In that same study Claude Code out-fetched every
AI retrieval bot. The format's author describes it as "basically a
pre-written CLAUDE.md/AGENTS.md file" — a developer-docs use case, not a
search one. If the site is a developer tool,
llms.txtmay earn its place for that reason alone. - Chrome's Lighthouse audits for it under Agentic Browsing — but the file is optional there, a missing file scores N/A rather than failing, and the page names no consuming system. Different product team, about browser agents, not AI search.
So: not a visibility lever, occasionally justified as developer documentation. Never bill it as GEO.
Numbers in circulation that are false or unsourced
If the client's existing strategy deck contains any of these, correcting it is a deliverable:
- "Wikipedia is 47.9% of ChatGPT citations" — that is 47.9% of a top-10 subset; the figure across all citations is about 7.8%.
- "Content under 30 days old earns 3.2× more citations" and variants — contradicted by a 16.9M-URL measurement of ~2.9-year-old cited pages.
- "Schema markup produces 2.3× more citations" — traceable only to an unattributed lead-generation page.
- "Statistics increase AI citation rates by 15–30%" quoted as a general fact — that range is the GEO paper's Subjective Impression lift under a simulated engine over a fixed five-document context, not a citation rate in the wild.
- "AI traffic converts 4.4× better" — contested; a separate 81,947-site study found AI traffic with worse engagement (4.0 vs 5.2 pages per visit). Report both or neither.
- Any AI-crawler timeout figure; any claim that a vendor honours
noaiornoimageai(contradicted by those vendors' own documentation); any citation of "LumenGEO", the "ConvertMate 80M-citation study", or the "Digital Bloom 680M-citation study" — these do not exist.
Honest limits
Include a version of this in every report. It is the difference between advice and astrology, and clients notice.
- Most of this is correlational. The causal experiments measure re-use of text that has already been retrieved, not whether it gets retrieved.
- The best-known GEO result is smaller and stranger than it is usually quoted. The KDD 2024 paper's own headline is 41% on position-adjusted word count and 28% on subjective impression, from a simulated engine (GPT-3.5 over a fixed top-5 context), on 10,000 queries. Its three most useful findings are almost never repeated: the gains are an equalizer — Cite Sources was −30.3% for the rank-1 result and +115.1% for rank-5; authoritative tone did nothing ("Generative Engines are already somewhat robust to such changes"); and on real Perplexity, Cite Sources raised one metric while lowering the other.
- Independent replication is unkind. C-SEO Bench (NeurIPS 2025) found most
GEO methods largely ineffective, with only 3 of 54 method–domain combinations
significantly positive and none in question answering. A full-pipeline study
over 171,003 documents found body-only GEO optimization reduced top-20
presence ~9% and final citation ~6% — optimizing prose for the generator broke
the retriever. A critical survey of 45 studies concluded that "no reviewed
technique shows a stable, longitudinal, cross-platform causal effect", with
topical relevance and context position the only reproducible levers
[measured]. - Keep the size of the prize proportionate. AI referrals are on the order of
1% of total web traffic, and roughly 1% of AI Overview impressions produce a
click to a citation. The measured commercial damage is zero-click erosion
— 68.0% zero-click in 2026 against 49% in 2019 — not a traffic channel that
has already replaced search
[measured]. A GEO program justified as a traffic channel will disappoint; one justified as defending share of recommendation will not.
The defensible position: fix retrieval, because that is documented and causal; write pages that can be quoted in one passage, because it costs nothing and one major vendor says it is the mechanism; build entity prominence, because it correlates more strongly than anything else; and measure with intervals, because the systems are non-deterministic.
Output format
Produce a report in this order. Lead with the gates — a client with a 403 on
OAI-SearchBot does not need a paragraph about heading structure.
1. Verdict. One paragraph. Is the site retrievable by AI answer engines at all, and if not, what is the single blocker?
2. Blockers (Phase 1 failures). For each:
- Finding — what is wrong, with the evidence you gathered (the actual status code, the actual robots.txt line, the actual word count).
- Engines affected — name them; do not say "AI".
- Impact — what it costs, stated without inflation.
- Fix — specific, with the file or setting to change.
- How to verify — the exact command or report that will show it fixed.
3. Extractability findings (Phase 2), same structure, explicitly labelled as correlational.
4. Entity and off-site (Phase 3), with the owned-vs-third-party split stated.
5. Measurement plan (Phase 4) — which reports to enable, which prompts to track, at what sample size, and what a real change would have to look like to be distinguishable from noise.
6. Limits — a short version of Honest limits, including the confidence intervals on anything you measured.
Prioritize strictly: everything in Phase 1 outranks everything in Phase 2, and within Phase 1, anything returning a non-200 to a search bot comes first.
Published by QuickSEO under CC BY 4.0. Facts were verified against primary sources on 2026-08-10; this field moves monthly, so re-check anything dated before relying on it. QuickSEO tracks prompt-level visibility across ChatGPT, Gemini, Claude and Perplexity alongside Search Console data, which is where the Phase 4 sampling discipline comes from.