Core / Pillar 28 min read Published Updated

GEO Checklist: 25 Things to Do (2026 Guide)

I keep this geo checklist on my desk because citation in ChatGPT, Perplexity, Google AI Overviews, Gemini, Copilot, Grok, and Claude is a set of jobs, not a slogan. Here are the 25 things I actually do.


On this page
Line drawing of a checklist clipboard next to a small robot reading a webpage

Key takeaways Read this if nothing else

  1. 01

    I treat a geo checklist as 25 repeatable jobs spanning extractability, unique pages, entities, multi-format URLs, measurement, and permissions.

  2. 02

    Google’s 2026 guidance still puts unique, non-commodity content and ordinary SEO hygiene underneath generative AI features in Search.

  3. 03

    Attribution with a clear link, the choice to appear in Google’s generative features, and agent-driven discovery are operational checks I log, not side notes.

  4. 04

    I rerun the same generative engine optimization checklist on a schedule so citation changes show up as prompt-level evidence, not anecdotes.

How I Run a Geo Checklist Without Theater

<p>I run this geo checklist on live URLs, not on a slide. Citation in ChatGPT, Perplexity, Google AI Overviews, Gemini, Copilot, Grok, and Claude is a set of jobs I can verify: fetch, extract, quote, attribute. I treat GEO next to SEO and AEO because crawl-and-rank work still has to happen, but it does not by itself put a brand inside an answer. The 25 checks below are the sequence I actually walk on client and internal sites.</p>

What This Geo Checklist Covers in Practice

<p>I name the engines first. I check ChatGPT, Perplexity, Google AI Overviews, Gemini, Copilot, Grok, and Claude against the same URL set. The 25 checks span fetchability, unique copy, lift-ready formatting, entity identity, local and shopping surfaces, citation logs, and generative-feature permissions. I do not treat this geo checklist as a one-time slogan. I rerun the list after a publish, after a template change, and after a model update I can actually see in answers.</p>

<p>In practice that means a spreadsheet of key URLs, a prompt list I reuse, and a pass that starts with robots and HTML before I argue about wording. If a page cannot be fetched, later checks are theater. If the lead cannot be quoted without the rest of the page, I rewrite the lead. Recurring work is the point: I want the same checks on the same pages so I can see what moved. I keep the 25 items in one working list so nothing sits as a separate campaign.</p>

How a Generative Engine Optimization Checklist Relates to SEO

<p>SEO still decides whether a crawler can find the page, whether it ranks, and whether the HTML is indexable. A generative engine optimization checklist starts after that floor and asks a different question: can an answer engine lift a self-contained claim and attribute it. I do not replace title tags or internal links; I add extractability, unique facts, and identity on top of them. I still ship the crawl-and-rank work first. Then I run citation checks on the same URLs so I can see where ranking and quoting diverge.</p>

<p>When I put GEO next to SEO, ranking in classic results and appearing as a cited source in ChatGPT or AI Overviews are related jobs with different failure modes. A page can rank and still never be quoted if the answer lives only in a script or the entity name keeps changing. For the distinction I use on real sites, I wrote a closer look at geo vs seo and I keep both lists on the same URL.</p>

A Beginner's Guide to Generative Engine Optimization (GEO) | What do GEO consultants actually do? video thumbnail

Video: A Beginner's Guide to Generative Engine Optimization (GEO) | What do GEO consultants actually do? · @gnw-consulting

Make Pages Extractable Before You Chase Citations

<p>Before I chase a citation, I make the page extractable. Checks 1 through 4 cover fetch, visible HTML, a self-contained lead, and URL signals that do not collide. If a model cannot retrieve live HTML, later work is wasted. I run these four on every URL I expect to be quoted. I do this before I rewrite copy, because a finished lead that never arrives at the crawler does not get cited. Extractability is the AEO overlap; I keep more on aeo checklist beside this pass.</p>

1. Confirm Robots, Sitemaps, and Fetchable HTML

<p>I fetch robots.txt and the XML sitemap for the host, then I request the live HTML of every URL I care about with a plain GET. I want to see the body text in that response, not a shell that waits on a client render. I compare the sitemap URL list to the URLs I expect to be cited. If a key article is missing from the sitemap we fetched, I add it. If robots.txt disallows a path that should be quoted, I change the rule.</p>

<p>I also check that the URL returns 200, that it is not trapped behind a login, and that a second fetch from a datacenter IP still returns the same main content. Answer engines vary, but none of them can cite HTML they cannot retrieve. I keep a short log: URL, status, whether the answer paragraph was in the first response. That log is check 1. I rerun it after deploys. I record the date of each fetch.</p>

2. Put the Answer in Visible HTML, Not Only Scripts

<p>I require the quotable answer in server-rendered or otherwise visible text. If the claim only appears after a React hydrate, I treat it as missing for citation purposes. I view source, or I curl the URL, and I search for the sentence I want an engine to lift. If it is not in that payload, I move it into the initial HTML. JSON-LD can repeat it; it cannot replace it.</p>

<p>I have watched pages that look complete in a browser fail this check because the product name, the price, or the definition lived in a data attribute. Models that quote from retrieved text need the words in the document. I keep the answer in a paragraph or a heading, in the language a person would read, without relying on an accordion that never ships its content. Visible HTML is the floor for checks 2 through 12. Script-only answers are a later problem I do not wait to discover.</p>

3. Write Self-Contained Titles, H1s, and Lead Answers

<p>I write the title, H1, and first paragraph so each can stand alone. If an engine lifts only the H1, I still want a complete claim: who, what, and the constraint. 'How we handle returns' is a label. 'We accept unused returns within 30 days of delivery in the UK' is a lead I can quote. I put that sentence in the first screen, in visible HTML, without requiring the H2s below it.</p>

<p>When I lift the lead into a notes file, I ask whether a reader who never saw the nav would know the entity and the fact. If the sentence starts with This or It, I name the thing. If the title repeats a category phrase every competitor uses, I add the distinguishing detail. Self-contained does not mean long. It means the extracted fragment is still true and still attributed to us. I test by pasting the title and first 40 words into a blank document and reading them as a stranger.</p>

4. Keep Canonicals, Hreflang, and Pagination Unambiguous

<p>I fix URL-level conflicts so a model does not fuse two pages or attribute a quote to the wrong host. I want one canonical per document, matching the URL I fetch. Parameter copies, HTTP to HTTPS, and www versus bare domain should all point at that one URL. If hreflang is present, every language URL must return the right locale and list the others. Pagination gets rel=next/prev or a clear self-canonical on each page, never a cluster that all claim to be page one.</p>

<p>I have seen answer engines cite a print URL, a filtered faceted URL, or an old HTTP redirect chain. I collapse those. I check that the canonical in the HTML matches the sitemap entry and the live address bar. If two articles share near-identical titles on different paths, I differentiate the H1s and the canonicals together. Unambiguous URLs are how I keep attribution from sliding onto a duplicate. I recrawl the cluster after the redirects settle.</p>

Write Unique Pages Generative Engines Can Quote

<p>On this generative engine optimization checklist, checks 5 through 8 are how I stop interchangeable pages from reaching the citation set. Google's 2026 guidance on generative AI features in Search still starts with unique content and ordinary SEO. I add first-party numbers, methods, tables, and dates so a model has something only this URL can supply. I run these four after extractability, not instead of it. For the measurement pass that follows, I keep more on ai visibility audit checklist beside this sequence.</p>

5. Publish Valuable, Unique, Non-Commodity Pages

<p>I treat Google's 2026 guidance as the bar for any URL I hope an answer engine will cite. That resource recommends valuable, unique, non-commodity content for visibility in generative AI features in Search. I read it as a filter: if the page could be regenerated from ten other articles, I do not put it on the citation list. I write the page only when I have a method, a dataset, a worked example, or a constraint other URLs do not carry.</p>

<p>For a comparison or a how-to I expect ChatGPT or AI Overviews to quote, the original table or the first-party steps sit in the visible HTML. Uniqueness here is a page that would be wrong if I pasted a rival's name on it. Before I add the URL to the watch list, I check it against Google's 2026 note on unique content for generative AI features. Commodity roundups stay off that list until they carry a fact only we measured.</p>

6. Keep SEO Basics in Place as the Foundation

<p>I do not drop title tags, internal links, crawl budget hygiene, or indexable HTML because I am doing GEO. Google's guidance says SEO best practices remain foundational for succeeding with its generative AI features. I still write a unique title, a matching H1, descriptive links, and a page that returns 200 without a soft 404. Citation work sits on that floor. AEO and GEO inherit the same crawlable document; they do not create a bypass.</p>

<p>On a site I maintain, I fix broken internal links and thin pagination before I argue about prompt-shaped H2s. If Search Console shows the URL as excluded or crawled but not indexed, I treat that as a check 6 failure, not a citation mystery. The same resource that talks about unique content also keeps ordinary SEO in the stack. I reread Google's statement that SEO best practices remain foundational when someone wants to skip the basics. I keep that note next to the live URL list.</p>

7. Add First-Party Data, Methods, and Original Tables

<p>I add numbers I actually measured, the method I used, and at least one table that does not exist on another domain. A cited page needs a fact a model cannot remix from a dozen explainers. I publish sample sizes, date ranges, and the query or instrument I used, in visible HTML, not in a PDF appendix. If I cannot name the method, I do not present the number as first-party.</p>

<p>Tables I write for citation have a header row, units, and a caption that still makes sense if the surrounding paragraphs are dropped. I avoid screenshot-only charts. I have shipped pages where the only unique object was a three-row comparison of our own crawl logs; that was enough to stop the URL from being interchangeable. Methods sit next to the table so an engine can lift both. I would rather one original table than three restated definitions. I date the table in the caption so the next refresh is obvious.</p>

8. Date Facts and Log What Changed

<p>I date every claim that can go stale: prices, policy windows, sample sizes, last crawl, last prompt run. The date sits next to the fact in visible HTML, not only in a CMS timestamp. I keep a short change log on the page or in a linked revisions note: what changed, on which date, and what the old value was. I want a model that retrieves two versions to see which one is current. I use an ISO date on the page, not recently.</p>

<p>When I update a table, I change the caption date and a line in the log in the same publish. I do not silently rewrite a definition and leave last year's wording in a cached snippet. Dated facts also help me when I re-check citations: if ChatGPT still quotes the old number, I know the page moved and the answer did not. The log is for engines and for me. Undated copy is how interchangeable pages stay interchangeable.</p>

Format Answers the Models Can Lift Cleanly

<p>I do not wait until a page is finished to shape it for extraction. Checks 9 through 12 are how I format the copy so ChatGPT, Perplexity, Google AI Overviews, Gemini, Copilot, Grok, and Claude can lift a heading, a definition, a step, or a FAQ without inventing glue. The page is already fetchable and unique. This stretch of my geo checklist is about making the answer portable, not prettier. I treat headings, blocks, FAQs, and outbound citations as one job.</p>

9. Match H2s to How People Actually Prompt

<p>I keep a scratch file of prompts I have actually typed into ChatGPT, Perplexity, and Google AI Overviews for the same topic. When I rewrite an H2, I match it to that wording, including the entity and the job. If people ask how to write a self-contained lead for GEO, I do not leave a heading that says Opening notes. I still write for a human reading the page; I just refuse headings that only make sense inside a table of contents. When I copy the H2 out of the HTML, it should still name the problem. I also avoid two H2s that answer the same prompt with different phrasing, because models fuse them into one mushy claim. One heading, one job, one extractable block underneath. I check sibling pages so I am not repeating the same prompt-shaped H2 across URLs. If the prompt set changes, I update the heading rather than adding a second one on the same page.</p>

10. Lift-Ready Lists, Tables, and Definition Blocks

<p>I write the extractable unit as its own block, not as a sentence buried in a paragraph. A definition starts with the term, then one sentence that still makes sense if a model quotes only that sentence. A numbered procedure is a real ordered list in the HTML, each step starting with a verb and naming the object. A comparison lives in a table with header cells a crawler can read, not in a screenshot. I keep units, dates, and entity names inside the cell, so the row does not depend on a caption two screens up. I do not wrap the only quotable stat in a decorative component that never renders as text. When I preview the page with scripts off, the list, the table, and the definition are still there. If a block needs an as I mentioned above clause to be true, I rewrite it until it stands alone. I keep one idea per row.</p>

11. On-Page FAQs Before Any FAQ Schema

<p>I write the question and the answer as visible copy first. Schema comes after, and it only mirrors what is already on the page. I have seen FAQPage markup point at questions that never appear in the HTML, or at answers that live in a closed accordion a crawler never expands. I do not do that. Each question is an H3 or a clearly labeled heading, and the answer is a short paragraph or a lift-ready list directly under it. The answer repeats the entity so it still makes sense if a model quotes it without the question. I keep the FAQ set tight: the prompts I actually log, not every related query I can invent. If I later add FAQ schema, I validate that every Question and acceptedAnswer string matches the visible text. When they drift, I fix the copy, not the JSON-LD, because the engine reads both and I want them to agree. Visible Q&A is the requirement; markup is the mirror.</p>

12. Cite Primary Sources With Working Outbound Links

<p>I treat my page as a node, not a dead end. When I state a method, a date, a regulation, or a product fact I did not measure myself, I link out to the primary document: the spec, the official blog, the regulator note, the dataset. I use the real URL, I check it loads, and I keep the anchor specific so a model can tell what I am citing. I do not dump a bibliography at the footer and call it done; the citation sits next to the claim. I also avoid linking only to my own recaps of those sources, because that is how attribution gets fuzzy. If the primary page moves, I update the href rather than leaving a redirect chain. This is not link theater. It is how I give ChatGPT, Perplexity, Gemini, and the rest a path back to the original, and how I make my own page safer to quote. I click every outbound link before I publish.</p>

Prove Entities, Sources, and Who Said What

<p>Checks 13 through 16 are where I stop treating the brand as obvious. Models mix similar names, recycle old NAP, and quote a page without a link. I lock the entity, earn mentions on sources I already see cited, mark up who published the work, and then I check whether the answer actually attributes me. This part of the generative engine optimization checklist is about being identifiable, not just extractable. I run these on the same URLs I already made fetchable and unique.</p>

13. Stabilize Entity Names, NAP, and Organization Identity

<p>I pick one legal name, one trading name if I must, one NAP set, and one short organization description, then I reuse them. Homepage, about page, contact page, footer, Google Business Profile, LinkedIn, and any sameAs profile all get the same string, not a close variant. I have watched models fuse two spellings of a brand into one entity, or attach my phone number to a similarly named firm in another city. I do not leave Inc. on one URL and drop it on the next. If the site operates in several cities, each local page still uses the same organization name and then adds the location, rather than inventing a new dba. I keep the description factual and stable: what the organization does, where, for whom. When a contractor rewrites the footer, I diff it against the canonical NAP block. Unstable identity is a citation leak I can fix without publishing a new article. I re-check after every template deploy.</p>

14. Earn Mentions on Pages Models Already Cite

<p>I do not spray guest posts at random domains. I start from the citations I already see in ChatGPT, Perplexity, and AI Overviews for my prompts, then I ask whether a mention on those pages would be earned and relevant. If a model keeps quoting a trade association brief, a university methods page, or a standards document, that is where I try to get a factual mention, a dataset, or a quoted method, not a boilerplate author bio. I pitch something the host page is missing: a number I measured, a table, a correction with a source. I keep a short list of those already-cited URLs and I revisit it when the prompt log changes. A mention on a page the engines already trust moves attribution more than a new post on a site I have never seen in an answer. I still decline placements that would force me to reprint commodity copy. I log the host URL next to the prompt it already supports.</p>

15. Make Author and Publisher Identity Machine-Readable

<p>I put the author name, the publisher name, and a sameAs set on the page in visible copy, then I repeat those facts in markup. Person schema for the byline, Organization for the publisher, with url, name, and sameAs pointing at the official profiles I already stabilized. I include a job title and a short bio that matches the about page, not a different persona. The byline is in the HTML, not only in JSON-LD. I link the author name to a stable author URL that lists other pieces, so a model can connect claims to one person. I do not rotate display names for brand voice. If two people wrote the page, I name both rather than hiding behind the organization. Dates sit next to the byline. When I view-source, I should be able to answer who said this, who published it, and which profile URLs belong to them, without guessing. That is the identity packet I ship with every citable URL.</p>

<p>I treat attribution as a pass/fail item, not a vibe. For each prompt in my log I record whether the engine named us, whether it linked us, and whether that link is a real URL a person can click. A mention without a link is a different outcome than a citation with a clear href. UK competition requirements reported by Reuters called for publisher content in AI-generated search results to be properly attributed with clear links, which is why I score the link, not just the name. I screenshot the answer, store the date, and note ChatGPT, Perplexity, AI Overviews, Gemini, Copilot, Grok, or Claude. If the answer paraphrases my table and points elsewhere, I mark that too. I do not argue with the model in the thread; I fix the page, the entity, or the mention path, then I rerun the same prompt. I keep those rows next to the URL so check 16 is evidence, not a memory.</p>

Cover Local, Shopping, Image, and Video Surfaces

<p>A geo checklist that only touches articles leaves citations on the table. Google’s 2026 resource for optimizing generative AI features in Search includes guidance for local, shopping, image, and video content, so I run checks 17 through 20 on those surfaces too. I keep facts consistent across landing pages and profiles, I expose product fields a shopping answer can quote, and I make images and videos stand on their own. Text pages still matter; they are not the whole job.</p>

17. Local Pages, Profiles, and Service-Area Facts

<p>I keep one NAP block and one service-area statement, then I reuse them on the location landing page, the contact page, and the business profile. City, region, postal code, phone, hours, and the list of areas I actually serve sit in visible HTML, not only in a map widget. If the business has a service area and no storefront, I say that on the page instead of implying a public counter. I match the Google Business Profile categories and description to the same organization name I locked in check 13. Opening hours include the timezone and holiday exceptions I can stand behind. I do not let a landing page for one city inherit another city's phone number from a template. When a model answers who does X in Y, I want it to lift a sentence that already contains the entity, the service, and the place. I re-fetch the live page after every profile edit so the site and the listing still agree.</p>

18. Product, Availability, and Merchant Detail

<p>I put the product name, variant, price, currency, availability, and merchant name in visible HTML on the URL I want cited. I do not leave those fields only in a JSON feed or a modal. SKU or GTIN sits next to the name when I have it. Stock status is a sentence a model can quote: in stock, out of stock, or made to order, with a date I last checked. Shipping region and return window go on the same page as the price, because a shopping answer that lifts the price without the constraint is an incomplete citation. I keep the merchant legal name aligned with the organization identity from check 13. If a product is discontinued, the page says so rather than 404ing into a category. I re-crawl the live HTML after catalog updates. The shopping surface is only citable if the field a person would ask about is already in the text. I also avoid price-only headings that omit the product name.</p>

19. Images That Still Make Sense Without the Page

<p>I write every image as if it might be the whole answer. The filename uses the entity and the subject, not IMG_3842. Alt text is a full sentence that names what is shown, including the product, place, or person, without stuffing. The caption under the figure repeats the claim I would want quoted: the metric, the date, the object. I do not put the only explanation in nearby body copy the image answer will never see. Charts get a visible title and labeled axes in the image itself, plus a text table of the same numbers on the page. I keep width and a real src that does not depend on a lazy-loader that never fires for a bot. If two images could be swapped without the alt still being true, I rewrite the alt. When I search the filename and the caption together, I should know what page they belong to. That is how an image citation stays attached to the right entity.</p>

20. Video Transcripts, Chapters, and Watch-Page Answers

<p>I never leave a watch page as a player and a title. I paste a full transcript in visible HTML, with timestamps that match the file. Chapter headings on the page match the chapters in the video and are written as prompt-shaped questions or tasks, not Part 2. Directly under the player I put a short, self-contained summary that answers the main query, including the entity and the date of recording. That summary is the lift-ready block; the transcript is the evidence. I add the same author and publisher identity I use on articles. If I quote a stat on camera, the number also appears in the on-page summary so a model does not have to listen. I check that the video file, the watch URL, and the transcript describe one thing. A video that is only watchable is not yet citable, and I do not mark check 20 done until the watch page can be quoted with the sound off.</p>

Measure What Your Geo Checklist Should Catch

<p>Checks 1 through 20 get a page into a shape I can defend. Checks 21 through 23 tell me whether that work shows up in answers. I log citations by engine and prompt, I rerun the same prompt set on a schedule, and I treat agent-driven discovery as a separate lane. Without those three, I am guessing. With them, I know which URLs get named, which prompts stay silent, and which new surfaces this generative engine optimization checklist has not measured.</p>

21. Log Which Engines Cite You, and for Which Prompts

<p>I keep one prompt log that covers ChatGPT, Perplexity, Google AI Overviews, Gemini, Copilot, Grok, and Claude. For every row I record the date, the exact prompt, the engine, whether my brand or a specific URL appeared, whether a competitor appeared, and whether the answer included a working outbound link. A name-drop without a URL is a different event from a cited link, and I mark them separately.</p>

<p>I mix commercial prompts, informational prompts, and a short branded set so I can see if the model recognizes the entity at all. I save copied answer text or a screenshot because these surfaces rewrite themselves. I note locale when the engine exposes it. On client work I review the log weekly; on quieter sites I review it monthly. I am not chasing a vanity score. I am building a paper trail I can compare after I ship a page change, so I know which check actually moved a citation.</p>

22. Repeat a Structured Visibility Pass on a Schedule

<p>I rerun the same prompt set on a fixed cadence instead of sampling whatever I remember that week. Weekly for sites I am actively changing; monthly once the pages are stable. The pass is structured: same engines, same wording, same locales, same notes on mention versus link. When I built AI Rank Checker I needed that repetition to see whether a citation was a one-off or a pattern, and I still run the pass by hand on a subset so I do not outsource my judgment to a single snapshot.</p>

<p>I compare the new log against the previous one and write down what changed: a new URL, a lost URL, a competitor that appeared, an answer that stopped linking. That delta is the only score I trust. A one-time audit tells me a story. A repeating pass tells me whether the story still holds after the next model refresh. I keep both logs so the before and after are visible.</p>

23. Monitor Agent-Driven Discovery as Its Own Lane

<p>I do not fold agent traffic into the same bucket as a classic blue-link click or even an AI Overview citation. An agent can fetch, compare, and complete a task without ever showing my page as a result the user clicked. I watch server logs for unusual user agents, I watch which URLs get requested in bursts that do not match human sessions, and I keep a separate note when a prompt log looks like a tool-using agent rather than a chat answer.</p>

<p>Google's 2026 developers post on generative AI features treats AI agents as an emerging area, which is why I keep this as check 23 on the geo checklist instead of a footnote on check 21. That split matches how I already separate citation work from crawl-and-rank work. I am not claiming I can attribute every agent fetch. I am claiming I will miss the surface if I only measure conventional search visibility. I file those fetches next to the prompt log.</p>

Finish the Generative Engine Optimization Checklist

<p>I treat the last two items on this generative engine optimization checklist as decisions, not page edits. Check 24 is whether my content is allowed into Google's generative features and what that choice does to AI Overviews and AI Mode traffic. Check 25 is a small pilot of conversational, task-oriented discovery, using a documented pattern rather than a slogan. I run both after the measurement loop, because I want the citation log in front of me before I change permissions or stand up a new experience. I do both last on purpose.</p>

24. Decide How Your Content Appears in Google’s Generative Features

<p>I treat Google's generative-feature permission as an explicit choice, not a default I ignore. Under UK competition requirements covered by Reuters, Google was required to let publishers manage whether their links and content appear in generative AI search features. I record the current setting for the domain, who approved it, and the date I last checked it.</p>

<p>Reuters also reported that sites opting out of those generative AI features would not receive traffic from AI Overviews and AI Mode, while traditional search results would not be affected. That split matters for forecasting. I write that assumption into the forecast so nobody mixes the two traffic lines. If I opt out, I do not expect Overview or AI Mode referrals, and I do not pretend the classic results vanished. If I stay in, I keep check 16 open so I can see whether answers still attribute the page with a clear link. I revisit the choice when the citation log or the traffic mix changes, not because a thread told me to flip it.</p>

25. Pilot Conversational, Task-Oriented Discovery Experiences

<p>Check 25 is a pilot, not a redesign of the whole site. I pick one task a user already tries to complete, such as find a place, compare options, or book a slot, and I test whether the content can support that flow. OpenAI's July 2026 write-up of newsroom AI search documents that Eater launched an AI-powered restaurant search experience using OpenAI technology. That is a pattern I can study: structured, task-oriented discovery on top of existing journalism, not a blank-canvas chatbot.</p>

<p>I copy the discipline, not the product. I time-box the pilot to one task. I define the task, the fields the experience needs, the pages that already hold those fields, and a success test I can run in a week. If checks 1 through 20 cannot answer the task in visible HTML, I do not stand up a new front end. I fix the pages first. The July 2026 publication shows the lane exists; it is not a reason to bolt a chat widget onto every URL.</p>

Frequently asked

I run a full GEO checklist after any material content or schema change, then again on a monthly cadence for live sites. I also re-check when Google or another engine updates generative features, because citation patterns shift. Between those passes I spot-check new URLs rather than re-auditing the whole inventory every week.

Yes. A standard SEO audit scores crawlability, rankings, and classic SERP elements. I still run those checks, then I add GEO-specific items: whether pages get cited, whether AI-generated results attribute a clear link, and whether I am watching agent-driven discovery separately from conventional search visibility, as Google’s 2026 guidance flags agents as emerging.

Yes. I still treat traditional SEO as the base layer. Google’s 2026 guidance states that SEO best practices remain foundational for succeeding with generative AI features in Search. If pages are not crawlable, indexable, and useful in classic results, I do not expect them to be cited in AI Overviews or other answer engines either.

If a site opts out, I treat that as a traffic trade-off. Under UK competition requirements reported by Reuters, Google must let publishers manage generative AI appearance. Reuters reported opted-out sites would not receive traffic from AI Overviews and AI Mode, while traditional results would not be affected.

I query the engines with the prompts my pages should answer, then I record whether my URL appears as a cited source. Perplexity usually surfaces links in the answer; ChatGPT citations vary by mode. I log date, prompt, and cited URL. I do not treat a single prompt as proof of ongoing citation.

Yes. Google’s 2026 resource includes guidance for local, shopping, image, and video content, so I put those URLs on the same GEO checklist as articles rather than treating them as a side audit. I still score each format on its own evidence: unique value, crawl access, and whether an answer engine can attribute a clear link.