Documentation

AI Search Readiness

AI Search Readiness checks whether AI systems can access and understand your website. It does not guarantee citations or recommendations.

The module answers one question: can AI systems reach this site, receive real content, and understand what the business is. It is not a citation tracker. It does not ask ChatGPT questions or report how often you are mentioned.

Three layers

  1. 01

    Access

    Can the named AI bots fetch this origin? robots.txt per token, noindex directives, sitemap, canonicals on the production host, no challenge wall.

  2. 02

    Receipt

    Do they receive real content if they fetch? The raw HTML, not the page after JavaScript. An empty application shell fails here even when the site looks finished in a browser.

  3. 03

    Meaning

    Can they tell what the business and the page are? Valid JSON-LD with an Organization or WebSite, a coherent name across title, heading and markup, one main heading, an optional llms.txt.

Each layer is reported as blocked, partial or ready. A site can pass Access and fail Receipt; that is the usual story for a site built with an AI builder. The layers are never collapsed into one score in the report; a composite number exists only for trends.

Bot classes

Search index
Builds an AI search index used for live answers. Recommended: allow, unless you have opted out on purpose.
Live fetch
Fetches a page because a user asked about it. Recommended: allow for a public marketing site.
Google search
Googlebot feeds Google Search and, with it, AI Overviews and AI Mode. Blocking it is usually accidental.
Training
Used to train future models. A policy choice; BulkAudits never changes it for you.

Google-Extended is not Googlebot. Blocking Google-Extended withholds content from Gemini training and grounding; it does not remove a site from Google Search, AI Overviews or AI Mode. Blocking Googlebot does.

Bot catalog v2026-09-16

TokenOperatorClassHonours robots.txtNote
OAI-SearchBotOpenAISearch indexyesBuilds the index behind ChatGPT search. Sites that block it do not appear in ChatGPT search answers.
ChatGPT-UserOpenAILive fetchpartialFetches a page when a ChatGPT user asks about it. OpenAI says it honours robots.txt; treat Allow as desired.
GPTBotOpenAITrainingyesCollects pages for model training. Blocking it does not remove the site from ChatGPT answers.
Claude-SearchBotAnthropicSearch indexyesIndexes pages to improve Claude search results.
Claude-UserAnthropicLive fetchyesFetches a page when a Claude user asks about it.
ClaudeBotAnthropicTrainingyesCollects pages that may contribute to model training.
anthropic-aiAnthropicTrainingyesOlder Anthropic training token still present in many blocklists.
PerplexityBotPerplexitySearch indexyesSurfaces and links sites in Perplexity answers. Not used for training.
Perplexity-UserPerplexityLive fetchnoFetches a page on a user request. Perplexity documents that it generally ignores robots.txt, so an Allow here is not what decides access.
Google-ExtendedGoogleTrainingyesControls Gemini training and grounding only. Blocking it does not remove the site from Google Search, AI Overviews or AI Mode.
GooglebotGoogleGoogle searchyesGoogle Search, and with it AI Overviews and AI Mode. Blocking it is almost always accidental.
Applebot-ExtendedAppleTrainingyesApple Intelligence training. Applebot itself serves Siri and Spotlight.
CCBotCommon CrawlTrainingyesCommon Crawl, the open dataset many models are trained on.
AmazonbotAmazonSearch indexyesIndexes pages for Alexa and Amazon answers.
Meta-ExternalAgentMetaTrainingyesMeta AI training. Meta-ExternalFetcher handles user-triggered fetches.
BytespiderByteDanceTrainingyesByteDance model training.

What we fetch

  • robots.txt (up to 5 redirects, 256 KB), evaluated per token with longest-match rules; the exact line that decided each verdict is kept as evidence.
  • llms.txt (status and body) and sitemap.xml.
  • The home page and a sample of internal pages: raw HTML, headers including X-Robots-Tag, JSON-LD blocks, headings, visible text.
  • One request identifying as Googlebot to detect hosting rules that reject crawlers. We never identify as the AI bot of a vendor. See our crawler.

What we never change automatically

  • Training-crawler policy. A repair may allow search and live-fetch tokens that a simple rule blocked; it never flips GPTBot, ClaudeBot, Google-Extended, CCBot or Bytespider to Allow, and never deletes a Disallow you wrote for them.
  • A Disallow: / on a preview or staging host.
  • Business facts we did not observe: no invented sameAs, phone numbers, logos, prices or FAQs.
  • Rendering. A single-page app is not switched to server rendering; the report says which framework setting does that.
  • Body copy and headings.

About llms.txt

An optional map for coding agents and documentation tools, checked as one low-severity signal inside the Meaning layer. It is not confirmed as a citation or ranking signal for ChatGPT or Google, and it can never turn a blocked layer into a ready one. The repair writes a stub from the title and pages of the site itself when the file is missing; it never dumps the whole site.