Answer

Which AI crawlers should you allow?

Every major AI crawler, what it is actually for, and a recommended policy — sourced from the operators’ own documentation.

The short answer

Not all AI bots do the same job, and treating them as one category is the most common error in AI crawler policy. There are three distinct kinds: search and retrieval crawlers that let you appear in AI answers, user-triggered fetchers that load a page because someone asked about it, and training crawlers that collect content for model development.

For most companies whose content is marketing rather than product, the answer is: allow search and retrieval without hesitation, allow user-triggered fetchers, and treat training access as a deliberate decision rather than a default. Publishers whose content is the product should reason differently.

The three categories, and why the distinction matters

Search and retrieval crawlers (OAI-SearchBot, Claude-SearchBot, PerplexityBot, Googlebot, bingbot, Applebot) build the indexes that assistants consult when answering. Blocking these removes you from AI answers. There is almost never a good reason to do it.

User-triggered fetchers (ChatGPT-User, Claude-User, Perplexity-User) load your page because a specific person asked a question that required it. Blocking these blocks a prospective customer from reading your site through an assistant. Note that Perplexity’s documentation states its user fetcher generally ignores robots.txt, so blocking it is partly aspirational.

Training crawlers (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, CCBot, meta-externalagent, Amazonbot, Bytespider) collect content used to develop models. This is the only category where a genuine trade-off exists, and it turns on what your content is for.

Compiled from the operators’ own published documentation, August 2026. Crawler names and behaviour change; verify against the primary sources listed below before making a policy decision.
User-agentOperatorCategoryRespects robots.txtBlocking it means
OAI-SearchBotOpenAISearch / retrievalYesYou will not surface in ChatGPT search results.
ChatGPT-UserOpenAIUser-triggeredYesA user who asks ChatGPT about you cannot have your page read to them.
GPTBotOpenAITrainingYesYour content is excluded from future OpenAI model development.
OAI-AdsBotOpenAIAd validationYesLanding pages submitted for ads cannot be safety-checked. Not used for training.
Claude-SearchBotAnthropicSearch / retrievalYesYou are excluded from the index behind Claude’s search results.
Claude-UserAnthropicUser-triggeredYesA Claude user asking about you cannot have your page retrieved.
ClaudeBotAnthropicTrainingYesYour content is excluded from future Anthropic training data.
PerplexityBotPerplexitySearch / retrievalYesYou will not be indexed or linked in Perplexity results.
Perplexity-UserPerplexityUser-triggeredGenerally notPerplexity states this fetcher generally ignores robots.txt, so the block may not take effect.
GooglebotGoogleSearch / retrievalYesYou leave Google Search — and with it AI Overviews and AI Mode.
Google-ExtendedGoogleTraining controlYesContent is not used to train Gemini. Google states this does not affect Search inclusion or ranking.
GoogleOtherGoogleOther product fetchingYesMiscellaneous Google product teams cannot fetch your public content.
bingbotMicrosoftSearch / retrievalYesYou leave the Bing index, which also underpins Microsoft Copilot.
ApplebotAppleSearch / retrievalYesYou leave Siri, Spotlight and Apple search surfaces. Applebot does render JavaScript.
Applebot-ExtendedAppleTraining controlYesContent already crawled by Applebot is not used for Apple model training.
CCBotCommon CrawlTraining (open corpus)YesYou are excluded from an open dataset that many models are built on — including ones that do not crawl you directly.
meta-externalagentMetaTrainingYesYour content is excluded from Meta AI model development.
AmazonbotAmazonTraining / assistantYesYour content is excluded from Amazon AI and Alexa surfaces.
BytespiderByteDanceTrainingContestedWidely reported to have ignored robots.txt historically. Low discovery value in US B2B markets.

The training decision, argued both ways

The case for blocking training crawlers is straightforward if your content is your product. News organisations, research publishers and subscription businesses are being substituted for by models trained on their work, and receive nothing in return. Blocking is a rational defence of an asset.

The case for allowing them applies to almost everyone else. If your content is marketing — pages that exist to make people aware of your company — then training inclusion is the mechanism by which a model can name you without retrieving anything. Model priors are what produce a recommendation when no live search happens. Blocking training means you can only ever be found by live retrieval, which is a smaller and less durable surface.

There is no middle setting for this. A company that wants to be recommended by AI and blocks training crawlers has chosen a policy that works against its stated objective, usually without having decided to.

The trap: the robots.txt you serve is not the one you wrote

This is the most common misconfiguration we find, and it is nearly invisible. Cloudflare offers a "managed robots.txt" feature that prepends its own block to your file — Disallow rules for ClaudeBot, GPTBot, Google-Extended, CCBot, Applebot-Extended, meta-externalagent, Bytespider and Amazonbot, along with a Content-Signal line declaring ai-train=no. Other hosts and CDNs offer similar defaults, sometimes enabled without an explicit choice.

The result is a site whose owner believes AI crawlers are welcome, serving a file that tells them the opposite. Adding a permissive block further down the file is not a reliable fix: RFC 9309 requires groups with the same user-agent to be merged, and on an exact tie an Allow should win — but implementations vary, and a policy that depends on a parser resolving a contradiction correctly is not a policy. Turn the managed feature off at the edge instead.

Two more checks belong here. Bot-management and WAF rules can return 403 to AI crawlers regardless of what robots.txt says — a network-level block that no robots file will override. And robots.txt only governs crawling: a page can be crawled and still be useless if its content only appears after JavaScript runs.

A reasonable default policy

For a company whose content is marketing and whose objective is to be discovered, described accurately and recommended: allow everything, and make it explicit rather than relying on a wildcard.

Name the search and retrieval crawlers, the user-triggered fetchers and the training crawlers individually with Allow: /. Declare a sitemap. Then verify by fetching the live file from outside your network, because that is the only version that matters.

The one bot worth a separate thought is Bytespider, which offers little discovery value in US B2B markets and has a contested record on compliance. Allowing or blocking it is a low-stakes call — the point is to make it deliberately.

Follow-ups

Related questions.

The questions that usually come next, answered to the same standard.

No, and this is the most common confusion. GPTBot is the training crawler. Appearing in ChatGPT’s search results is governed by OAI-SearchBot, and having your page read to a user who asks is governed by ChatGPT-User. Blocking GPTBot alone excludes you from future training data while leaving live retrieval intact.
No. Google states explicitly that Google-Extended does not affect a site’s inclusion in Google Search and is not a ranking signal. It controls whether content is used to train Gemini models. Googlebot is what governs Search, and AI Overviews are generated from the Search index.
Not as an access control. Perplexity documents that its user-triggered fetcher generally ignores robots.txt, so a Disallow is a statement of preference rather than an enforcement mechanism. Actual enforcement requires network-level blocking, which is a different decision with different costs.
It costs almost nothing and does almost nothing. Ahrefs studied 137,210 domains and found 97% of llms.txt files received no requests at all, and that AI bots never went looking for the file on sites lacking one. Publish it if your platform generates it automatically; do not build a programme around it, and do not let it substitute for making your pages readable without JavaScript.
Twice a year, and after any change of host or CDN. Crawler names are added and retired, defaults change silently at the platform layer, and the file you serve can change without anyone touching the repository.

This page answers the general question.

The specific one — what these systems say about your company, and where those words came from — takes a working session and about a week. The finding is yours whether or not we go further.

The first call is complimentary — and the finding is yours to keep.