Twenty-four checks, grouped by gate and ordered by what failing each one actually costs you.
Work the gates in order: retrieval first, because a page a model cannot fetch fails everything downstream; then extraction, then entity, then corroboration, then measurement. Fixing gate three while gate one is broken changes nothing.
Most published AEO checklists are essays with numbers in front of the paragraphs. This is the actual list, in working order. Nothing here is gated, and none of it requires hiring anyone.
Binary, cheap to fix, and the most expensive thing to get wrong. Everything below is irrelevant until this passes.
robots.txt. OAI-SearchBot, ChatGPT-User, PerplexityBot are fetched during a live query. Blocking these is the costly mistake.GPTBot, ClaudeBot, Google-Extended, CCBot affect long-term familiarity, not live citation. Blocking them is a defensible choice; blocking them by accident is not.robots.txt allows. The file says yes and the edge says no.lastmod generated from real change dates rather than maintained by hand.llms.txt — low cost, contested value, and it is read by some agents. Treat it as cheap insurance, not a strategy.@id, identical across every page.sameAs pointing at profiles that resolve.disambiguatingDescription exists for this.llms.txt, footer, third-party profiles. Models quote these strings verbatim.The ordering matters more than the list. A site that fixes schema and content while a retrieval agent is blocked at the CDN has spent weeks on gates two and three while gate one is still closed. Work top to bottom.
Hand this list to anyone selling you AEO and ask which of the twenty-four they check, and how. The answer to check 24 is the one that separates measurement from theatre.
Crawler access, per named agent. A page an assistant cannot fetch fails every later check automatically, and access is the cheapest thing on the list to fix. Schema and content work done while a retrieval agent is blocked changes nothing.
It is cheap and read by some agents, and its value is genuinely contested — Google has said publicly it is not used for AI features while other vendors recommend it. Ship it as low-cost insurance, not as a strategy, and do not let it displace crawler access or schema work.
More than once, always. Assistant output is non-deterministic, so a single run produces a number that cannot be distinguished from session variance. Record the spread across runs rather than the average, and keep the prompt set frozen between measurements.
It overlaps on crawlability and structure and diverges everywhere else. SEO checks whether a page can rank in a list of links. This checks whether an assistant can fetch it during a live query, lift a self-contained statement from it, and identify you as the source worth naming.
Most of them, yes — robots.txt, schema, heading structure and the prompt test need no tooling beyond a browser and patience. The parts that are hard to do by hand are per-agent status verification and repeated multi-engine runs, which is what the free check automates.