GEO Audit Checklist: What to Check on Your Site, Step by Step
Use this GEO audit checklist to inspect access, page evidence, structured data, and AI impressions, then turn each finding into a fix with an owner.

Quick Answer: A GEO audit checks whether chosen business pages can be reached by relevant crawlers, show accurate and verifiable facts, and appear in an AI search measurement baseline. Inspect each URL, compare structured data with visible copy, record impressions, then assign fixes and repeat the same checks. It is a documented sequence, not a visibility score.
Summary in a mind map
GEO Audit Checklist: What to Check on Your Site, Step by Step │ ├─ Choose the pages │ ├─ Fix the business URLs and customer questions │ ├─ Keep Google and ChatGPT search observations separate │ └─ Preserve the same scope for the next review │ ├─ Prove access │ ├─ Compare indexed status with a live inspection │ ├─ Check crawler permission and actual network access │ └─ Record the Google property inclusion setting │ ├─ Prove page evidence │ ├─ Match structured data to visible copy │ ├─ Put important facts on their own URL │ └─ Ask an owner to confirm unknown facts │ └─ Measure and fix ├─ Save the date range, total and report grouping ├─ Give each defect an owner and repeat check └─ Compare like with like after a change
The audit follows one page at a time from access to evidence to measurement. A flooring retailer might start with its category page, a specific flooring product, its installation service and the contact page. These pages answer different customer questions, so a finding on one must not be copied uncritically to the others. The explanation of generative engine optimisation gives the wider context; this checklist is the working record.
Step 1: Set pages and AI search scope
Choose URLs that matter to a business decision. A product page can answer a material or availability question, while a service page can explain where installation is offered. If both are in scope, list both. The scope sheet records each page's purpose, its expected canonical URL and the customer question it should answer. This keeps the audit from drifting into a generic site review.
Define the experiences to examine separately. Google's Search generative AI control names AI Overviews, AI Mode and generative AI features in Discover; its property setting can be inherited from a parent or set directly.2 ChatGPT search has its own crawler guidance.3 An audit should therefore have separate observations for Google and OpenAI, even if the same page is being assessed. A setting for one service is not evidence of a setting for another.
| Scope item | Example for a flooring retailer | Why it belongs |
|---|---|---|
| Page | Product detail URL | Tests whether product facts are available on the page |
| Page | Installation service URL | Tests a service explanation and location claim |
| Experience | Google generative AI features | Has a property inclusion control and impression report2,6 |
| Experience | ChatGPT search | Has OAI-SearchBot access guidance3 |
Freeze this list before collecting evidence. A follow-up comparison is meaningful only if it uses the same URLs and similar queries or report filters. If a URL is redirected or retired during the work, note that change explicitly; do not silently replace it with a better-performing page. This first step produces a scope sheet, not a judgement about visibility.
Step 2: Inspect the indexed and live URL
For each Google URL, use URL Inspection to check the indexed version and inspect the live page. The tool supports index status, a live URL test, a rendered view and loaded resources.1 Record which mode produced each observation. An indexed snapshot may lag behind a recent edit; a successful live test is a different observation and should occupy a different column in the audit sheet.
The rendered view matters when essential facts are not obvious in source HTML. A customer may see a specification card, while a crawler rendering the page may see a blank area or a missing resource. The screenshot or a concise description belongs beside the URL and the date of inspection. When a resource fails, name the resource and the fact it prevents the page from showing. A bare “rendering issue” gives an owner too little to fix.
The result is diagnostic, not a visibility certificate. Google's help says the indexed result can describe eligibility, yet being indexed does not guarantee an appearance in results.1 Do not treat a passing test as the end of the audit. If a product page is reachable but omits the thickness or finish that buyers ask about, access has passed and content evidence still needs work. This separation prevents a technical result from concealing an editorial gap.
The outcome belongs in a compact table that a developer and editor can both use:
| URL | Indexed observation | Live observation | Evidence to keep |
|---|---|---|---|
| Product detail | Status and canonical seen in URL Inspection | Rendered facts and resources seen in live test | Date, screenshot and missing resource if any |
| Service page | Status and canonical seen in URL Inspection | Visible service text checked | Date and specific sentence or blank area |
If the URL is absent from the index, investigate that status before changing the article's copy. If it is indexed and renders as expected, mark the access check complete and move to crawler controls. These are different branches with different owners.
Step 3: Check crawler and inclusion controls
Check the site's crawler rules and the relevant product settings. OpenAI recommends checking both robots.txt permission for OAI-SearchBot and access from its published IP ranges for ChatGPT search inclusion.3 A permission line alone does not establish that a server or network layer accepts requests. The robots rule and access observation should remain separate evidence. If the network team owns an access rule, send that finding to them with the URL and observed response.
Google's Search generative AI control can inherit a parent property's inclusion choice or be configured for the property itself.2 Record the property inspected, its parent relationship if relevant, and the setting observed. A marketer looking only at a child property could misread an inherited choice. The audit should say what was visible in Search Console on the inspection date, and who can change it, without presenting the setting as a ranking tactic.
Each block or setting needs a distinct row. “Crawler access” can hide several causes: a robots rule, an IP restriction, a property inclusion choice or a page-specific fetch problem. Only the first three are addressed by this step; page-specific fetch evidence belongs in Step 2. When the cause is unknown, mark the row “needs diagnosis”. Guessing a fix is worse than assigning investigation to the correct owner.
The action threshold is straightforward. Where a chosen service is intentionally excluded, record that decision and stop evaluating that service as though it should include the site. Where inclusion is intended, resolve a documented access failure before judging the quality of an answer. For more on the difference between a mention and a recommendation, see whether ChatGPT recommends your business.
Step 4: Match markup to visible facts
Compare structured data with the page a visitor sees. Google's guidelines require accurate representation of visible content and reject misleading markup.4 Make a list of marked-up names, descriptions and other important properties, then locate the corresponding visible text on the same URL. A schema field should not become a private claim that the page itself never makes.
For the retailer, suppose the structured data describes a floor as suitable for a particular room. The audit question is whether the visible product page says that clearly and consistently. If the page uses a different product name or an outdated specification, fix the page and markup together. This is an editorial and technical handoff: an engineer can change markup, but a content owner must confirm the actual claim. The audit should not infer suitability from a field whose business basis has not been checked.
Syntactic validity does not establish relevance. A test may accept a piece of structured data while the page's visible wording remains thin or contradictory. The useful audit output is the exact mismatch: URL, markup property, visible passage, proposed correction and owner. If no mismatch exists, say so; the next step tests whether the visible facts are independently useful.
Extra markup merely to increase the count of types on the page adds no value. The purpose here is consistency and clarity for a reader and for systems that interpret the page. A smaller set of accurate properties attached to complete visible content is a more defensible result than an elaborate hidden description. This is a quality conclusion from Google's policy, not a claim that any particular markup guarantees an AI citation.4
Step 5: Test facts on each URL
Read each chosen page without relying on another tab. Bing's guideline recommends explicit facts and definitions, with important information visible on the URL so it can be verified independently.5 A product page that says “premium finish” but never names the material or finish leaves the reader to guess. A service page that says “local experts” but omits its service area makes a location claim hard to check. The audit records such omissions as content findings.
A small set of customer questions should guide each URL review. What is offered? Who is it for? What are its limits? Which details can be checked from the same page? The questions are editorial probes, not a new list of platform requirements. Quote the page's own wording in the finding; then write the missing fact as a question for the business owner. An unknown specification, opening hour or service area remains a question for its owner.
A missing fact differs from one buried elsewhere. If the service area exists only on the contact page, record the service URL's gap and link to the internal source that should be checked. If the product detail is genuinely unknown, the action is to obtain it from the person responsible for the product data. This makes a finding actionable without letting the auditor write unverified claims into the site.
The result is a page evidence table. Each fact needs a location, an owner and a status: visible and verified, visible but needs confirmation, absent, or not applicable. The status helps prioritise work while preserving uncertainty. A page with complete crawler access but no independently checkable answers should not receive a “pass” merely because it loads. Checking whether AI mentions your brand can then use the same named entities and pages rather than a shifting set of impressions.
Step 6: Save an impression baseline
After access and content checks, take a measurement snapshot. Google's Generative AI performance report presents total impressions for a selected period in its chart and groupings such as page or device in its table.6 Record the property, date range, chart total and selected table dimension. The team should retain a copy of the view or an export if it uses one. The measurement date belongs beside the page findings, so a later reader does not confuse an old baseline with a post-fix result.
The baseline is descriptive. A site can have a technically accessible page and still have no recorded impressions for a given view. A report may also be unavailable to an auditor who lacks access. Those are different states. Use “not accessible to the audit”, “report available with no measured impressions”, and “impressions measured” as distinct notes. A blank cell must not be converted into a numerical zero.
If the report is grouped by page, choose the URLs that match the defined scope. If it is grouped by device, state that the view answers a different question. The chart and table are not interchangeable: one gives the selected period total and the other breaks it down by the chosen dimension.6 Save enough context to reproduce the comparison. A number without its property, range and grouping is not a useful baseline.
This step does not claim that every AI answer system exposes the same impression report. It establishes one documented view where the cited Google tool provides it, while other experiences retain their own access observations. A separate manual mention review can supplement the measurement, but it should keep the query wording and date so future checks have a stable comparison.
Step 7: Prioritise fixes and recheck
Turn findings into a work list. Each row needs the URL, observed evidence, why the issue matters for the page's stated purpose, one proposed change, an owner and the exact follow-up check. Prioritise a documented access failure ahead of markup polish because content cannot be assessed by a blocked crawler. Next, address missing or contradictory visible facts. Then tidy markup and measure again. This ordering is a practical triage method, not a claim about a search engine's ranking formula.
For example, if a product URL fails live inspection, assign the access diagnosis to the web owner and retain the test result. If it loads but its visible material differs from structured data, assign the copy confirmation to the product owner and the markup correction to the developer. If both pass, the content team can fill a genuinely missing customer answer. One URL may therefore create several rows with different evidence and owners; combining them into “improve GEO” hides the actual work.
| Finding | Owner | Follow-up proof |
|---|---|---|
| Live page or resource fails | Web operations | Repeat URL Inspection live view1 |
| OAI-SearchBot access blocked | Web operations | Recheck robots permission and IP access3 |
| Markup disagrees with page | Content and development | Compare rendered wording with markup4 |
| Important fact absent | Business content owner | Confirm and publish the fact on that URL5 |
| Baseline recorded | Analytics owner | Repeat the same period and grouping view6 |
Worked finding, hypothetical: For a flooring retailer's /oak-plank page, the audit sheet records that OAI-SearchBot was disallowed in robots.txt on 7 October 2026, while the business owner confirms that ChatGPT search inclusion is intended. The web operations owner changes the rule and checks access from the published IP ranges; the evidence is the old and new robots.txt response, the change time and the access result.3 OpenAI says its systems can take approximately 24 hours to adjust after a robots.txt update.3 The first follow-up is therefore scheduled after that adjustment window, with a later repeat if the observation remains unchanged. Neither the example nor an access pass claims a search appearance.
Set a recheck point tied to the change, not a promised ranking date. Save the new observation next to the original one and mark whether the specific defect was resolved. If an impression count changes, report the change with its measurement window; do not attribute it automatically to one edit. A review of why a competitor is recommended instead is a separate comparative investigation, not evidence that this page's fix caused a particular answer.
In words, the tree branches like this: choose the business URLs; inspect indexed and live access; verify crawler and inclusion controls; compare visible facts with markup; save an impression baseline; assign each defect to an owner; then repeat the same check after the change. An access failure returns to the technical owner before the page's content can be judged.
Where this audit cannot decide for you
A GEO audit can show whether selected pages are accessible, coherent and supported by visible evidence. It cannot promise that a particular answer engine will cite them. URL Inspection does not guarantee a Google appearance, and an impression baseline measures past observations rather than future placement.1,6 The team must decide which customer questions and business pages matter; the tools cannot supply that commercial judgement.
An intentional exclusion setting is a business choice to record. The auditor needs the responsible person's authority before reversing that choice; an access failure alone does not grant it.
What to do next
Create the scope sheet and run the seven checks on a small set of important URLs. Each finding needs screenshots, settings and dates; every proposed fix then needs an owner and repeat test. Separately, use the 20-question, three-assistant AI Answer Audit measurement to measure the answers AI assistants give about your business; it is a paid measurement, not an SEO or GEO audit, and it does not read Search Console or measure Google's AI Mode, Bing or Copilot.
Frequently Asked Questions
What is the first step in a GEO audit?
Does a passing URL Inspection result prove AI search visibility?
Should I check robots.txt or Google inclusion settings first?
Can schema markup replace facts on the visible page?
What should an AI impression baseline contain?
How should a GEO audit become a fix list?
Sources
- 1.URL Inspection tool — Google Search Console Help · 2026
- 2.Search generative AI control — Google Search Console Help · 2026
- 3.Overview of OpenAI Crawlers — OpenAI Developers · 2026
- 4.General Structured Data Guidelines — Google Search Central · 2026
- 5.Bing Webmaster Guidelines — Microsoft Bing · 2026
- 6.Generative AI performance report (Search) — Google Search Console Help · 2026
Want this run on your business?
AI Foundation Audit — a structured assessment of your AI footprint: integration risks, governance gaps, ROI opportunities. Delivered as a comprehensive report you can act on.
You receive your AI Opportunity Report and Implementation Brief — tailored to your business and delivered immediately.