Guide

robots.txt AI crawlers, which tokens to allow and which to block

A robots.txt file does not talk to artificial intelligence in general, it talks to specific user-agent tokens, and the consequences differ depending on whether a token feeds search, model training, a fetch triggered by a person, or an agent. We checked every token against its owner official documentation on 14 August 2026.

Timothé Merle18 min readUpdated August 14, 2026
In short

AI crawlers are not one block. OAI-SearchBot, PerplexityBot, Claude-SearchBot, Googlebot and bingbot feed answers that cite your site, so blocking them removes you from those answers. GPTBot, Google-Extended, Applebot-Extended, ClaudeBot and Meta-ExternalAgent mostly serve training, so blocking them is an editorial decision with no direct visibility cost. ChatGPT-User, Perplexity-User and Meta-ExternalFetcher act on behalf of a person and do not always follow robots.txt. Finally, robots.txt is a public preference honoured voluntarily, and a user-agent string can be spoofed, so any binding block has to rely on IP verification at the server or firewall level.

Direct answer

Which AI crawlers should you allow in robots.txt?

Allow the crawlers that feed answers citing your site, and make a deliberate call on the ones that feed training. In practice, let OAI-SearchBot, PerplexityBot, Claude-SearchBot, Googlebot and bingbot through if you want visibility. Then decide, content by content, about GPTBot, ClaudeBot, Google-Extended, Applebot-Extended and Meta-ExternalAgent.

That split is written into the official documentation, and it holds from one vendor to the next. OpenAI states on its bots page that each setting is independent of the others, so a webmaster can allow OAI-SearchBot in order to appear in search results while disallowing GPTBot to indicate that crawled content should not be used for training its foundation models. Google describes the same decoupling from the other side, since Google-Extended governs whether your content trains Gemini without affecting your presence in Search. The useful question is therefore never whether to allow or block AI, but which use you accept, from which operator, and at what cost to your visibility.

One point matters before you write a single line. Blocking does not erase the past, and content already crawled and already absorbed into a model stays in that model. A robots.txt file expresses a preference about future visits, nothing more.

  • If you want visibility, allow the whole search family and let person-initiated fetches through.
  • If you want editorial protection, block the training family token by token while keeping the search family open.
  • For confidential content, never rely on robots.txt, a public file that advertises the very paths you want hidden. Use authentication.
  • In every case, check the live result on your own domain instead of trusting the file you believe you published.

OpenAI, overview of crawlers | Google, common crawlers

Test your file. AI crawler access checker | AI crawler simulator

Framing

Search, training, user-triggered fetches and agents

Four families of robots share what people now call AI traffic, and mixing them up causes most of the bad decisions we see during audits. A single company usually runs one token per family, each with its own robots.txt behaviour.

The agent family is the newest one. Google now publishes a dedicated IP range file for user-triggered agents, next to the file covering classic crawlers, and Meta describes a fetcher that helps its AI navigate websites to complete tasks for users. Those clients behave more like a visitor than like a search engine, which makes a robots.txt block ineffective and a firewall block risky.

AI robot families and robots.txt handling, from OpenAI, Anthropic, Perplexity, Google and Meta documentation checked on 14 August 2026.
FamilyTypical tokensrobots.txtWhat is at stake
Search and citationOAI-SearchBot, PerplexityBot, Claude-SearchBot, Googlebot, bingbotHonouredYour presence in generated answers and in the links attached to them
TrainingGPTBot, ClaudeBot, Google-Extended, Applebot-Extended, Meta-ExternalAgentHonouredWhether your content becomes training data, with no direct visibility effect
Person-initiated fetchChatGPT-User, Claude-User, Perplexity-User, Meta-ExternalFetcherPartly, often ignoredReading a page a user explicitly asked the assistant to open
AgentGoogle-Agent, Meta-ExternalFetcher, Google-CloudVertexBotGenerally ignoredCompleting a task for a user, forms and journeys included

Google, user-triggered fetchers | Meta, web crawlers

Go further. Prepare your website for AI agents

Reference

OpenAI, Anthropic and Perplexity tokens, checked one by one

The table below lists tokens exactly as they appear in their owner documentation, together with the real consequence of a block. Recommendations assume a site that wants commercial visibility.

OpenAI, Anthropic and Perplexity tokens taken from official documentation on 14 August 2026.
TokenOwnerPurposerobots.txtIf you block itRecommendation
OAI-SearchBotOpenAISearch inside ChatGPTHonouredThe site is no longer shown in ChatGPT search answers, it can still appear as a navigational linkAllow
GPTBotOpenAITraining of foundation modelsHonouredContent is no longer used for training, with no immediate visibility lossEditorial call
ChatGPT-UserOpenAIVisit triggered by a user questionMay not applyA page a user explicitly asked for cannot be readLet through
OAI-AdsBotOpenAISafety check of pages submitted as ads on ChatGPTHonouredYour ad landing pages cannot be validatedAllow if you buy ads
ClaudeBotAnthropicCollection for training datasetsHonoured, Crawl-delay supportedContent no longer feeds trainingEditorial call
Claude-SearchBotAnthropicImproving search result qualityHonouredLower odds of being picked as a sourceAllow
Claude-UserAnthropicOpening a page during a conversationHonouredThe page requested by the user is not readLet through
PerplexityBotPerplexityIndexing to surface and link websites in resultsHonouredThe site leaves the index that feeds the answersAllow
Perplexity-UserPerplexityVisit triggered by a user questionGenerally ignoredA block can only happen at server or firewall levelLet through
Official OpenAI documentation listing OAI-SearchBot, GPTBot, ChatGPT-User and OAI-AdsBot
The official Overview of OpenAI Crawlers page, read on 14 August 2026. OpenAI writes that each setting is independent of the others, and that a webmaster can allow OAI-SearchBot while disallowing GPTBot. The same page notes it can take about 24 hours from a robots.txt update for search systems to adjust.

OpenAI, bots and user agents | Anthropic, web crawling | Perplexity, crawlers

Reference

Google, Apple, Meta and Microsoft tokens

At Google the nuance is structural. AI Overviews and AI Mode are served from Search, and the documentation states that AI is built into Search and integral to how Search functions, which is why robots.txt directives for Googlebot are the control site owners have. In other words, no token pulls you out of Google AI surfaces while keeping you in the blue links. Google-Extended, for its part, affects neither your inclusion in Search nor your ranking, it only decides whether your content can train Gemini and ground Gemini Apps. Apple and Microsoft reason differently, with a two-layer control. At Apple, Applebot crawls for Spotlight, Siri and Safari, while Applebot-Extended exists only to opt out of training. At Microsoft, the NOCACHE and NOARCHIVE tags limit conversational use of the content without removing it from the Bing index.

Google, Apple, Meta and Microsoft tokens taken from official documentation on 14 August 2026.
TokenOwnerPurposerobots.txtIf you block itRecommendation
GooglebotGoogleSearch, Discover, AI Overviews and AI Mode, all served from SearchHonouredYou leave Google Search and therefore its AI surfacesAllow
Google-ExtendedGoogleUse of content to train Gemini and to ground Gemini AppsHonouredNo effect on Search or ranking, only the Gemini use is withdrawnEditorial call
Google-CloudVertexBotGoogleBuilding Vertex AI AgentsHonouredYour pages stop feeding agents built by customers or partnersDepends on your customers
Google-AgentGoogleAgents running a task requested by a userGenerally ignoredAny block has to happen at server levelLet through
ApplebotAppleSearch built into Spotlight, Siri and SafariHonouredYou leave search results across the Apple ecosystemAllow
Applebot-ExtendedAppleOpt-out token for training Apple foundation modelsHonouredApplebot still crawls the content but it leaves trainingEditorial call
Meta-ExternalAgentMetaTraining foundation models and indexing contentHonouredExclusion from Meta datasetsEditorial call
Meta-ExternalFetcherMetaFetching a link at a user request, agentic use cases includedMay be bypassedReliable blocking only at server levelLet through
bingbotMicrosoftBing index, which also feeds CopilotHonouredYou leave Bing and the Copilot answers built on itAllow
  • Microsoft does not rely on robots.txt alone. The NOCACHE and NOARCHIVE tags described on the Bing Webmaster Blog limit how content is used in conversational answers while keeping the site in search results.
  • Apple applies the same two-layer logic. Applebot-Extended removes your content from training, and the nosnippet tag removes it from broad world knowledge answers, without pulling you out of Spotlight, Siri and Safari.
  • A token missing from a vendor documentation sometimes circulates in ready-made lists. We leave it out here until an official source confirms it.

Google, AI features and your website | Apple, about Applebot | Bing Webmaster Blog, content controls

Consequences

What actually happens when you block a crawler?

Blocking produces three very different effects depending on the family you target, and that grid is the only thing that prevents decisions people regret six months later. Blocking a search robot removes you from answers where you could have been cited, immediately and visibly, and OpenAI even notes that its systems need roughly twenty-four hours to reflect a robots.txt change. Blocking a training robot changes nothing about your visibility overnight, it is a decision about the future use of your content, and it does not undo what models already learned. Blocking a person-initiated fetcher breaks an explicit request, since someone pasted your link into a conversation and expects an answer while your server returns an error. That third case is the most expensive one and the least anticipated.

A fourth effect is often forgotten, the signal you send to everyone else. A robots.txt file is public, and it gets read, archived and compared. Closing a whole family while your competitors stay open hands them the cited-source slot, with no compensation for you until a licensing contract exists.

  • Blocking GPTBot does not remove you from ChatGPT search, that surface is governed by OAI-SearchBot.
  • Blocking Google-Extended removes you from neither AI Overviews nor AI Mode, which depend on Googlebot and on Search.
  • Blocking Googlebot removes you from Search and therefore, mechanically, from Google AI surfaces.
  • Blocking a training robot does not erase what has already been learned from your content.
  • A badly written block can cancel other rules, because a robot only applies the most specific group that names it.

Related guides. Appear in AI Overviews | Get cited by Perplexity

Technical

The robots.txt syntax that actually matters

The Robots Exclusion Protocol has been standardised since September 2022 by RFC 9309, a Standards Track document that ended twenty-five years of informal convention. The standard covers user-agent lines, allow and disallow rules, and the special characters used for path matching. It also requires a parsing limit of at least 500 kibibytes and a cache that does not exceed twenty-four hours.

Three rules explain almost every broken file we come across. A robot applies exactly one group, the most specific one naming it, so declaring a group for GPTBot cancels the star group rules for that robot. A file only covers one scheme, host and port combination, so every subdomain needs its own file, and Anthropic states explicitly that you must repeat the exclusion for every subdomain you want to opt out. Finally robots.txt governs crawling, not indexing or display, which are controlled through robots meta tags.

The robots.txt file of tryhikoo.com open in a browser, showing its AI crawler groups
The robots.txt file of tryhikoo.com, verified on 14 August 2026 with a GET request returning HTTP 200 and content-type text/plain for 445 bytes. The dark bar at the top is our own annotation, everything below it is the file as served. It shows an explicit group structure, with a star group followed by one group per AI token.
  • Serve the file at the domain root, in plain text, with a text/plain content type.
  • Write a star group holding your general rules and your Sitemap line.
  • Add a per-token group only when you want different treatment, and copy into it the general rules that token still needs.
  • Repeat the exercise on every subdomain, including technical subdomains that serve public content.
  • Read the file again after deployment, on the public URL rather than in your repository.

RFC 9309, Robots Exclusion Protocol | Google, how robots.txt is interpreted

Technical

HTTP codes, what your server answers changes everything

A robots.txt file returning an error does not behave like an empty file, and the gap between those two situations can stop crawling on your whole site. RFC 9309 separates an unavailable file from an unreachable one, with opposite consequences.

Behaviour documented by RFC 9309 and by Google documentation, checked on 14 August 2026.
Server responseRFC 9309Google handling
200The file is parsed as providedRules applied, cached for about twenty-four hours
3xxRedirects followed within a reasonable limitAt least five hops followed, beyond that it is treated as a 404
4xx except 429File unavailable, the crawler may access any resourceTreated as if no robots.txt file existed
429Rate limiting, not an absence of rulesHandled separately from other client errors
5xxFile unreachable, the crawler must assume complete disallowCrawling stops for twelve hours, then the last cached copy is used for thirty days
  • A 500 error on robots.txt during a maintenance window is enough to suspend crawling across the site.
  • A custom HTML page returned with a 200 status instead of the expected file gets parsed as a rules file, with unpredictable results.
  • Redirecting robots.txt to a homepage is the surest way to make your rules invisible.

RFC 9309 | Google, how robots.txt is interpreted

Nuance

Crawl-delay, a non-standard signal with uneven support

The Crawl-delay directive is not part of RFC 9309, it remains a vendor specific extension. Google states plainly that its parser supports user-agent, allow, disallow and sitemap, and that other fields such as crawl-delay are not supported. Anthropic goes the other way and documents support for that non-standard extension to limit crawling activity, with an example setting one second between requests for ClaudeBot.

The practical consequence is simple. If your server struggles with request volume, Crawl-delay will not save it, you need server side rate limiting, a properly formed 429 response, and if necessary a firewall rule targeting the IP ranges published by the operator involved.

Google, supported fields | Anthropic, Crawl-delay

Security

User agents can be spoofed, how to verify a real crawler

A user-agent string is declarative, and any script can announce itself as GPTBot or Googlebot. Any serious blocking or allowing decision therefore has to rest on the network origin of the request rather than on its label. Major operators publish IP range lists in JSON exactly for that purpose, maintained on their side, and your firewall or CDN can consume them directly. Google adds a two-step verification, a reverse DNS lookup on the accessing address that must resolve to googlebot.com, google.com or googleusercontent.com, followed by a forward lookup on that name that must return the original address. Apple documents the same method with the applebot.apple.com domain. This double check is the only reliable way to tell an official robot from a scraper borrowing its name, and it also protects your AI traffic statistics from a large amount of noise.

Verification resources published by the operators, checked on 14 August 2026.
OperatorPublished rangesExtra verification
OpenAIopenai.com/searchbot.json, openai.com/gptbot.json, openai.com/chatgpt-user.json, openai.com/adsbot.jsonA robots.txt marker added to the user-agent string when fetching the file
Anthropicclaude.com/crawling/bots.jsonAn address on the list indicates a crawler coming from Anthropic
Perplexityperplexity.com/perplexitybot.json, perplexity.com/perplexity-user.jsonSeparate lists per robot
Googlecommon-crawlers.json, special-crawlers.json, user-triggered-fetchers.json, user-triggered-agents.jsonReverse then forward DNS on googlebot.com or google.com
AppleApplebot CIDR prefixes JSON fileReverse DNS on applebot.apple.com

Google, verify crawler requests | Apple, identifying Applebot

Infrastructure

Beyond robots.txt, WAF, CDN and usage signals

robots.txt expresses a preference, it blocks nothing technically. For a binding block, the decision belongs to the web application firewall or the CDN, based on verified IP ranges rather than on the announced name. That is also the layer where rate limiting and 429 responses belong.

This side of the ecosystem moves fast. On 1 July 2025 Cloudflare announced that it was changing the default to block AI crawlers unless they pay creators for their content, then on 24 September 2025 it published a Content Signals Policy that adds a usage preference line to robots.txt. Three signals exist, search for building an index and returning results, ai-input for feeding a model at answer time, and ai-train for training. Cloudflare applies Content-Signal search=yes, ai-train=no by default on the robots.txt files it manages, and deliberately leaves ai-input unset.

In parallel, the IETF chartered an AI Preferences working group in January 2026 to standardise a preference vocabulary and the way it attaches to content, with a Content-Usage mechanism in robots.txt and in HTTP headers, updating RFC 9309. Those documents are still drafts as this guide is published, so no operator is bound by them today.

  • A usage signal expresses a legal intent, it does not replace a technical block.
  • Check what your CDN writes on your behalf, a managed robots.txt can contain lines you never wrote.
  • If you license content, keep a record of when each rule changed, because a retroactive block cannot be proven.

Cloudflare, Content Signals Policy | Cloudflare, blocking by default | IETF, AI Preferences working group

Method

How to test your configuration on your real domain

The file you think you published and the file your server returns are two different things, especially behind a CDN, a reverse proxy or a framework that generates robots.txt on the fly. The test below was run on 14 August 2026 against tryhikoo.com with our public checker.

The result deserves a careful read. Some tokens show up as not listed while still being allowed, which means they are not named in the file and simply inherit the star group. That is normal behaviour, and it turns into a trap as soon as the star group carries disallow rules, since an unlisted token then inherits every one of them.

Hikoo AI crawler checker result for tryhikoo.com, showing the status of each robot
Test run on 14 August 2026 in the Hikoo AI crawler checker against tryhikoo.com. The robots.txt file is found and all sixteen tested tokens are allowed. The not listed label flags a token missing from the file, which inherits the star group. Some tokens probed by the tool, such as Gemini-Deep-Research, do not appear in their vendor public documentation, so we keep them out of the reference tables in this guide.
  • Open your robots.txt in a browser and check both the response code and the content type returned.
  • Run the domain and its subdomains through the AI crawler checker to get a token by token status.
  • Repeat the test after each deployment, since a CDN cache can serve an older version for hours.
  • Then check how a page actually renders with the AI crawler simulator, because allowed access does not guarantee readable content.
  • Finish with your server logs, verifying IP addresses rather than announced names.

Free tools. AI crawler checker | AI crawler simulator | llms.txt generator

Trade-off

Three site profiles, three different calls

No single configuration fits everyone, and recommending that you allow every robot would be as lazy as blocking them all. Here is how we reason depending on the business model behind the site.

The trade-off grid our teams use, to adapt to your own business model.
ProfileSearch familyTraining familyReason
B2B or SaaS site chasing customersAllow everythingAllowBeing cited in an answer is worth more than protecting marketing content meant to be repeated
Publisher paid on audienceAllowBlock token by tokenTraining pays nothing without a contract, while search still brings visits
Online retailerAllow, product pages includedDepends on how valuable your descriptions areAssistant generated comparisons feed on accessible product pages
Technical documentation or knowledge baseAllowAllowBeing the reference cited in technical answers is a durable acquisition channel
  • No robots.txt configuration guarantees a citation, it only governs access.
  • Accessible but generic content will not be picked up, access is necessary and never sufficient.
  • If you block a family, document the decision and its date, you will need both in a negotiation.

Measure what comes next. Analyzer | Spotlight | Free AI audit

Pitfalls

Seven common mistakes in an AI oriented robots.txt

  • Copying a token list from a blog post without checking vendor documentation, since half the lists in circulation still carry retired tokens.
  • Declaring a group for an AI token and forgetting to copy the star group disallow rules into it, which accidentally opens sensitive areas.
  • Believing a Disallow protects content, when it publicly advertises it to anyone reading the file.
  • Forgetting subdomains, since every host needs its own file.
  • Blocking the training family thinking it protects traffic, when traffic depends on the search family.
  • Letting a CDN rewrite the file without reading what production actually serves.
  • Never revisiting the file, while operators add new tokens several times a year.

Useful definitions. llms.txt | AI visibility | AI citations

Frequently asked questions

Does blocking GPTBot remove me from ChatGPT?

No. GPTBot governs training of foundation models. Search inside ChatGPT depends on OAI-SearchBot, and that is the token to allow if you want to stay in search answers. The two settings are independent.

Do I need an llms.txt file on top of robots.txt?

They are two different objects. robots.txt states access rules honoured by major operators. llms.txt proposes a machine readable content map with no equivalent official adoption, and Google states it does not use llms.txt for Search.

How do I block a robot that ignores robots.txt?

At server or web application firewall level, filtering on the IP ranges published by the operator rather than on the user-agent string. A rule based on the announced name is bypassed with one line of code.

Does Crawl-delay work on AI crawlers?

It depends on the operator. Google does not support crawl-delay, while Anthropic documents support for that non-standard extension for ClaudeBot. To control load reliably, use rate limiting and 429 responses.

Can a robots.txt returning a 500 error make my site disappear?

It can suspend crawling. RFC 9309 requires crawlers to assume complete disallow when the file is unreachable, and Google stops crawling for twelve hours before falling back to its last cached copy for thirty days.

Do I have to repeat my rules on every subdomain?

Yes. A robots.txt file only covers one scheme, host and port combination. Anthropic states it explicitly, the opt-out has to be repeated for every subdomain you want covered, including technical subdomains serving public content.

Can I leave Google AI Overviews and stay in Search?

Not with a dedicated token. Google states that AI is built into Search and that directives addressed to Googlebot are the control available. The nosnippet, data-nosnippet and max-snippet tags limit display, but they also affect classic snippets.

How often should I review my robots.txt?

At least twice a year, and after every technical migration. Operators keep adding tokens, OAI-AdsBot and Claude-SearchBot arrived after the first wave of AI robots, and a list written in 2024 is already incomplete today.

Conclusion

The real question is not whether to allow or block artificial intelligence, it is which use you accept, operator by operator, knowing the price of each refusal. The search family governs your presence in answers, the training family is an editorial strategy call, and person-initiated fetches escape robots.txt anyway.

Start by checking what your domain actually returns, token by token, then measure what that access produces in citations. Our AI crawler checker gives the first answer in seconds, and the free audit tells you whether assistants already cite your site.

Sources

  1. OpenAI Overview of OpenAI Crawlers. OpenAI Developers, consulté le 14 août 2026
  2. Anthropic Does Anthropic crawl data from the web, and how can site owners block the crawler. Anthropic Support, consulté le 14 août 2026
  3. Perplexity Perplexity Crawlers. Perplexity Documentation, consulté le 14 août 2026
  4. Google Google Crawler (User Agent) Overview. Google Crawling Infrastructure, 2026
  5. Google Google common crawlers. Google Crawling Infrastructure, 2026
  6. Google Google user-triggered fetchers. Google Crawling Infrastructure, 2026
  7. Google Verify requests from Google crawlers and fetchers. Google Crawling Infrastructure, 2026
  8. Google How Google interprets the robots.txt specification. Google Search Central, 2026
  9. Google AI features and your website. Google Search Central, 2026
  10. Apple About Applebot. Apple Support, consulté le 14 août 2026
  11. Meta Web crawlers. Meta for Developers, consulté le 14 août 2026
  12. Microsoft Announcing new options for webmasters to control usage of their content in Bing Chat. Bing Webmaster Blog, septembre 2023
  13. Koster M., Illyes G., Zeller H., Sassman L. RFC 9309, Robots Exclusion Protocol. IETF, septembre 2022
  14. Cloudflare Giving users choice with Cloudflare Content Signals Policy. Cloudflare Blog, 24 septembre 2025
  15. Cloudflare Content Independence Day, no AI crawl without compensation. Cloudflare Blog, 1er juillet 2025
  16. IETF AI Preferences (aipref) working group. IETF Datatracker, 2026
About the author
Timothé Merle
Co-founder Hikoo - Expert AEO/GEO
View LinkedIn profile

Go further

Related Articles

Book a personalized demo

See how Hikoo can boost your visibility on AI search engines.