Skip to main content
USA-Based Digital Agency

What Should a GEO Audit Include? The 12 Checks

A GEO audit should answer five questions in order: can AI systems reach your pages, do they know exactly who you are, is there text they can quote, do outside sources agree with you, and can you measure any of it. Twelve checks cover those five questions. Three of them are blocking.

By George Shvaya · · 10 min read

Most documents sold as a “GEO audit” are an SEO audit with the word AI added to the cover. That is not entirely wrong. Google’s own guidance on AI features says a page needs only to be indexed and eligible for a snippet, that “there are no additional technical requirements,” and that “there’s also no special schema.org structured data that you need to add.” The SEO fundamentals are the floor.

But Google is one of several systems, and the others do not share its index. ChatGPT, Claude and Perplexity each run their own crawlers, fetch pages on a user’s behalf, and decide what to quote using signals that have nothing to do with a Google ranking. A generative engine optimization audit has to cover that wider surface. These are the twelve checks we run, grouped into the five questions they answer. The full method sits inside the AI Search Playbook.

Access: can AI systems reach the page?

Check 1: robots.txt and CDN or WAF rules for search-type AI agents

Look at: the live robots.txt, plus the bot-management and firewall settings in your CDN. The agents that matter for visibility are the search-index and user-triggered ones: OAI-SearchBot and ChatGPT-User from OpenAI, Claude-SearchBot and Claude-User from Anthropic, PerplexityBot and Perplexity-User from Perplexity. Training crawlers (GPTBot, ClaudeBot) are a separate policy decision and do not, per the vendors’ documentation, control search features.

Pass: every search-type and user-triggered agent above can fetch a representative page and receives a 200 with the full HTML. Test it from outside your network with the user-agent string set.

Typical fix: remove blanket Disallow rules that catch these agents, and add explicit allow rules for them in the CDN’s bot settings. Many CDNs now block AI agents by default; see is your CDN blocking AI crawlers for how to check and what to allow.

Check 2: indexation rate

Look at: Search Console, Pages report, filtered to your sitemap. Divide indexed by submitted.

Pass: the ratio is high enough that new pages are being indexed rather than joining a backlog, and every page you expect to be cited is in the indexed set. We treat anything below roughly 70% as a stop sign, for reasons laid out in why index coverage, not content, is usually the problem.

Typical fix: this is index governance work: collapse duplicate URL families to one canonical, remove thin pages from the sitemap, and fix the host and protocol redirects so the site exists once.

Check 3: server-rendered content

Look at: the raw HTML response for your key pages, fetched without a browser. Compare it with what you see on screen.

Pass: the headline, the answer paragraph, the prices, the FAQ text and the structured data are all present in the initial HTML. Googlebot renders JavaScript; the other vendors do not document that they do, and an audit should not assume what a vendor does not state.

Typical fix: move content rendering to the server. On a modern framework that is a configuration choice; on a page builder it can mean replacing the components that inject text client-side.

Identity: do they know exactly who you are?

Check 4: one organization node with an @id, and a consistent name, address and phone

Look at: the JSON-LD across the site. There should be a single Organization or LocalBusiness node with a stable @id that every other page references rather than restates. Then compare its name, address and phone with the footer, the contact page, Google Business Profile and the main directories.

Pass: one node, one @id, zero dangling references, and the same name, address and phone everywhere. Variants of the business name count as a fail.

Typical fix: emit the organization node once, reference it by @id from services, articles and locations, and correct the off-site listings. This is the core of entity SEO.

Check 5: founder and author Person nodes with visible bylines

Look at: who is credited on articles and service pages, both in the visible byline and in the schema author field.

Pass: a real person, with a page of their own, a Person node with an @id, and the same person named in the schema and on screen. An Organization as author of every article is a common pattern and a fail here, because it tells an assistant nothing about expertise.

Typical fix: create or complete the founder and author pages, reference them by @id, and add a visible byline and date to every article.

Check 6: llms.txt and sitemap accuracy

Look at: /llms.txt and the XML sitemaps. Both describe the site to machines, and both drift.

Pass: every URL in each file returns 200, the business description in llms.txt matches the current positioning, and the sitemap contains no noindexed, redirected or duplicate URLs.

Typical fix: generate both from the same source of truth as the site, and add a build check that fails when a listed URL stops resolving.

Quotability: is there text they can lift?

Check 7: answer-first intros and definitions

Look at: the first paragraph under each H1, and any sentence that defines a term or a service.

Pass: the page’s main question is answered in plain language within the first 40 to 60 words, and definitions are phrased as “X is …” so they can be quoted without the surrounding paragraph.

Typical fix: rewrite intros to lead with the answer, and move throat-clearing paragraphs below it.

Check 8: tables, steps and prices stated plainly

Look at: anywhere the page compares options, lists a process, or discusses cost.

Pass: comparable facts are in a table with real header cells, processes are numbered steps, and prices or ranges are stated as numbers rather than “contact us.”

Typical fix: convert prose comparisons to tables and publish the price ranges you already quote on calls.

Check 9: visible FAQs, mirrored in schema only when visible

Look at: FAQ sections and any FAQPage schema.

Pass: the questions are the ones customers actually ask, each answer is self-contained, the text on the page and the text in the schema are identical, and no FAQPage node exists for content that is not shown.

Typical fix: delete hidden-content schema, and replace generic questions with the ones from your inbox.

Want the twelve checks run on your site?

The free audit covers access, indexation and identity, and shows what assistants currently say about your category.

Get a Free AI Visibility Audit

Prefer to talk it through? Book a Free Call

Corroboration: do outside sources agree with you?

Check 10: Google Business Profile, directories, press and reviews

Look at: every place your business is described by someone other than you, starting with the Google Business Profile, then the directories and review platforms relevant to your category, then any press.

Pass: the category, services, service area, name, address and phone match the site, and the profile is claimed and active. Assistants cross-reference; a listing that says you do something your site never mentions is a contradiction, not extra coverage.

Typical fix: claim unclaimed profiles, correct the contradictions, and link the real ones from the organization node’s sameAs.

Check 11: competitor comparison of what assistants cite

Look at: the answers assistants give to your customers’ questions today, and specifically the sources they link.

Pass: you know which competitors appear, which of their pages are cited, and which third-party sources the assistant treats as authoritative for your category. A pass is knowledge, not a result.

Typical fix: the cited pages tell you what format and depth the assistant trusts; the cited third parties tell you where corroboration is being read from. Both feed the content and outreach plan. See what AI citations are.

Measurement: can you tell if any of it worked?

Check 12: prompt-panel baseline plus log and analytics setup

Look at: whether a fixed set of 20 to 40 real customer prompts has been recorded against each assistant this month, whether server logs are being grouped by AI user agent, and whether analytics has a segment for assistant referrers.

Pass: all three exist and have a dated first entry. An audit that ends without a baseline cannot be compared with the next one.

Typical fix: set up the four sources described in how to measure AI search visibility and run the first month before changing anything else, so the changes have something to be measured against.

The twelve checks at a glance

The twelve GEO audit checks with their group and severity
#CheckGroupSeverity
1Crawler access: robots.txt and CDN/WAF rulesAccessBlocking
2Indexation rate (indexed ÷ submitted)AccessBlocking
3Server-rendered content, not client-only JavaScriptAccessBlocking
4One organization node, consistent name, address and phoneIdentityImportant
5Founder and author Person nodes with visible bylinesIdentityImportant
6llms.txt and sitemap accuracyIdentityImportant
7Answer-first intros and definitionsQuotabilityImportant
8Tables, steps and prices stated plainlyQuotabilityImportant
9Visible FAQs, mirrored in FAQPage schema only when visibleQuotabilityNice to have
10Google Business Profile, directories, press and reviews agree with the siteCorroborationImportant
11Competitor comparison: what assistants cite todayCorroborationImportant
12Prompt-panel baseline plus log and analytics setupMeasurementNice to have

Blocking means nothing downstream can work until it passes. Important means an assistant can still find and read you, but is likely to misunderstand or distrust what it reads. Nice to have means it sharpens an outcome that is already possible.

What the Webvello audit covers

Our free audit runs the access and identity checks against your live site, reads your indexation rate from Search Console if you grant access, and records what the main assistants currently say when asked about your category. The AEO audit tool runs a subset of these checks automatically against any URL, which is a reasonable place to start before anyone looks at it by hand.

Frequently asked questions

How is a GEO audit different from an SEO audit?

An SEO audit asks whether Google can crawl, index and rank a page. A GEO audit keeps those questions and adds four more: can every AI system reach the page, does the site state unambiguously who the business is, is there text an assistant can lift as an answer, and do sources outside the site confirm what the site says. Google itself says there are no additional technical requirements for AI Overviews, so the SEO half is still a prerequisite.

Do I need special schema or an llms.txt file to appear in AI answers?

Not for Google. Its documentation says there is no special schema.org structured data to add for AI Overviews or AI Mode. Schema still matters because it removes ambiguity about who you are and what each page is, and llms.txt is a cheap way to give assistants an accurate summary. The audit checks that both are correct and current, not merely present.

Which of the 12 checks should be fixed first?

The blocking ones: crawler access, indexation rate and server-rendered content. If a search-type AI agent cannot fetch the page, or Google has not indexed it, or the text only exists after JavaScript runs in a browser, nothing in the other nine checks can take effect.

How long does a GEO audit take?

The access and identity checks can be run in an afternoon with Search Console, a log export and a schema validator. The corroboration and measurement checks take longer because they involve reading what assistants currently say and setting up a baseline that is only useful once it has a second month to compare against.

About the work

Webvello is an AI search optimization and index engineering company founded in 2024, based in Roseville, California. We’ve delivered 50+ projects across 37+ cities, with average client ROI in the 3–5x range on properties where the blocking checks above were the real constraint. Founder George Shvaya came to search from cybersecurity and systems engineering, which is why this audit starts with access and ends with a baseline.

Want to know which of the twelve checks your site fails before you spend on content?

Book a Free Call