Technical

AI crawlers and robots.txt: which bots to allow and what you give up

Short answer

Most AI companies run separate crawlers for training and for live retrieval, and blocking the wrong one removes you from AI answers without protecting anything. For a business whose site is marketing rather than product, the usual correct answer is to allow all of them. For publishers whose content is the product, the decision is genuinely harder.

GPTBot, ClaudeBot, PerplexityBot, Google-Extended and the rest: what each is for, and how to allow answering bots while deciding separately on training access.

The confusion here is structural. AI companies bundle two very different activities behind similar-looking user agents, and the advice circulating usually fails to separate them.

The two activities:

Training. Bulk crawling to build a corpus for model training. Your content becomes part of what a future model knows. No attribution, no traffic, no link.

Retrieval. Fetching pages live, in response to a user's question, to ground an answer. Usually cited, sometimes clicked, and this is the path that gets you recommended.

Blocking training while keeping retrieval is often what a business wants. Whether you can do that depends on the provider.

The agents worth knowing

GPTBot (OpenAI) crawls for training. OAI-SearchBot handles search indexing for ChatGPT's search feature. ChatGPT-User fetches a page when a user's question requires it. These are separate tokens, which means you can allow retrieval and disallow training. The exact user-agent strings and a robots.txt for each choice are in GPTBot, OAI-SearchBot and ChatGPT-User.

ClaudeBot (Anthropic) is the general crawler. Claude-User covers user-initiated fetches. Claude-SearchBot handles search indexing. Details in ClaudeBot, Claude-User and Claude-SearchBot.

PerplexityBot crawls for Perplexity's index. Perplexity-User covers user-initiated visits. Perplexity's whole product is retrieval with citation, which makes it the clearest case for allowing access. Details, and Cloudflare's stealth crawling report, in PerplexityBot and Perplexity-User. Whether any of these bots obeys the file is a separate question, answered in do AI crawlers respect robots.txt.

Google-Extended is not a crawler at all. It is a control token: it governs whether content Googlebot has already fetched can be used for Gemini and AI answer grounding. Disallowing it leaves Search ranking untouched.

A shared training token is on the way. On 30 October 2026 Google, Microsoft and Anthropic all published on User-Agent: __usage_ai-training, a token from an IETF draft that states a no-training preference across providers in one group. Anthropic says it has begun recognising the signal and is rolling it out over time. Microsoft starts on 1 February 2027. Google's crawler documentation says early 2027. At Google, using it without naming Google-Extended is planned to count as disallowing Google-Extended, so it costs more there than a training opt-out. Keep your named rules for now, because it is still a draft. What each provider has said, and what to write.

Applebot-Extended does the equivalent job for Apple's models. Applebot itself serves Siri and Spotlight.

Bytespider (ByteDance), Amazonbot, meta-externalagent and CCBot (Common Crawl) round out the set most sites see. CCBot is worth a thought: Common Crawl is a public dataset that many model builders draw on, so blocking it has broad downstream effect.

Deciding what to allow

The question is what your website is for.

If your site is marketing. A restaurant, hotel, café, tour operator, agency, most local businesses. Allow everything. The content is a description of a service people buy in the physical world. Training on it costs you nothing and being retrievable is the entire objective. Blocking here is self-harm.

If your content is the product. A publisher, a paid research site, a course business. The trade-off is real. Training use gives you nothing back. Retrieval gives you a citation, some traffic, and exposure. A defensible position is to allow retrieval agents, disallow training agents, and watch what happens to referrals.

If you hold sensitive material, none of this is the right tool. robots.txt is a request, not a control. Anything genuinely confidential belongs behind authentication.

A working file for a hospitality business

# Allow everything, including AI crawlers.
# One group, deliberately. Read the note below before adding named groups.
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/

Sitemap: https://example.com/sitemap.xml

There is a trap here worth more than the rest of this section. A crawler obeys exactly one group, and Google states it plainly: "User agent specific groups and global groups (*) are not combined." So the moment you add User-agent: GPTBot with Allow: / under it, that agent stops reading the wildcard group, and the Disallow: /admin/ and Disallow: /api/ lines above no longer apply to it. An earlier version of this post recommended a file that did exactly that: it named eight agents and quietly exempted every one of them from both Disallow lines.

If you want to allow everyone, the wildcard group on its own is correct, and it is the safer file. Name an agent only when you want to give it different rules from everybody else, and when you do, repeat every Disallow line inside its group.

The shortest allow-all file is two lines:

User-agent: *
Allow: /

Allow: / only says it out loud. Google's robots.txt guide, last updated 21 November 2025, says a crawler can fetch any page not blocked by a disallow rule.

A file that separates training from retrieval

For a publisher who wants citations without contributing to training:

User-agent: *
Allow: /

# Training crawlers, disallowed.
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Bytespider
Disallow: /

# Not a crawler, and not training only. This also covers grounding
# in Gemini Apps and on Vertex AI. Read the note below before keeping it.
User-agent: Google-Extended
Disallow: /

# Retrieval and user-initiated fetches, allowed.
User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: Claude-User
Allow: /

User-agent: PerplexityBot
Allow: /

Sitemap: https://example.com/sitemap.xml

The Google-Extended group costs more than the others. Google's crawler page, last updated 30 October 2026, says the token covers training future Gemini models and also grounding in Gemini Apps and on Vertex AI. So keeping those two lines refuses training and gives up grounding there, and nothing I read from Google separates the two. If being cited in Gemini matters more to you than refusing training there, delete them.

An earlier version of this sample filed Google-Extended under training crawlers with no warning, and left out ClaudeBot, the crawler Anthropic says to restrict for training. We corrected both on 6 November.

This is a reasonable position, and it is not airtight. The boundary between training and retrieval is defined by the providers and they can redraw it.

Things people get wrong

Blocking by accident. A staging Disallow: / that shipped to production. Check the live file, not the repo.

Assuming robots.txt hides anything. It is a public file listing the paths you care about. Compliant crawlers obey it; nothing else does.

Blocking AI crawlers and then buying GEO services. This happens more than it should. Check the file before anything else, and before paying for GEO at all.

Expecting llms.txt to do this job. An llms.txt file is a proposed list of your pages for AI systems. It allows and blocks nothing.

Never revisiting it. New agents appear every few months. Put a calendar reminder on it twice a year.

The short version

For almost every local and hospitality business the answer is: allow everything with one wildcard group, name an agent only when it needs different rules, keep the sitemap line accurate, and spend the saved deliberation on making the pages worth retrieving.

Frequently asked questions

Does blocking GPTBot remove me from ChatGPT?

It stops your content being used to train OpenAI's foundation models, and on its own it does not remove you from ChatGPT's search results. OpenAI documents these as independent settings, so the effect depends on which agents you block. Blocking OAI-SearchBot is what keeps you out of ChatGPT search answers, though you can still appear as a navigational link. ChatGPT-User covers user-initiated fetches, and OpenAI says robots.txt rules may not apply to those.

What does Google-Extended control?

Google-Extended is not a crawler. It is a token in robots.txt that controls whether content already crawled by Googlebot may be used for Gemini and for grounding AI answers. Disallowing it does not affect ordinary Google Search ranking, which is the point of separating it.

Is robots.txt enforceable?

No. It is a voluntary convention. Well-behaved crawlers from major providers honour it. Scrapers ignore it. If you need enforcement you need server-side blocking by user agent and IP, or a WAF rule, not a text file.

Should a restaurant or hotel block AI crawlers?

Almost never. Your site exists to be found. Blocking the crawlers that feed the systems your customers now ask for recommendations is the opposite of what you want, and there is no content on a typical hospitality site worth protecting from training use.

Which AI crawlers should I allow in robots.txt?

For a business that wants to be recommended, allow the crawlers that fetch pages to answer questions: OAI-SearchBot, Claude-SearchBot, PerplexityBot and Bingbot. The training crawlers, GPTBot and ClaudeBot, are a separate decision, and blocking them does not on its own remove you from those answers. Google-Extended is different: it is a token that also covers grounding in Gemini Apps, so disallowing it can cost you citations there.

Are AI crawlers like GPTBot blocked by default?

Not by robots.txt. A file with no rule for GPTBot allows it. Blocks come from your host or CDN instead. Cloudflare's 15 September 2026 post bases its recommended settings for new domains on whether the site earns money from ads, a site without ads gets Allow for all three categories, and existing domains carry their settings over. The older risk is the prompt every new Cloudflare domain has shown at sign-up since July 2025, where clicking past it can block AI crawlers.

What is YouBot and how do I control it in robots.txt?

YouBot is You.com's crawler. Per You.com's YouBot documentation, read on 30 September 2026, it identifies itself with YouBot/1.0 in its user agent, obeys rules written for User-agent: YouBot including crawl-delay, caches robots.txt for 30 minutes, and sends genuine requests from 68.67.112.0/24.

What is the Barkrowler crawler and should I block it in robots.txt?

Barkrowler is run by Babbar.tech to build a graph of the web for SEO marketing tools, per its crawler page (read 9 October 2026). It says it respects robots.txt disallow rules under User-agent: barkrowler and honours Crawl-Delay. It is an SEO crawler, not one of the answering crawlers above, so blocking it is a decision about SEO tool data, not about AI answers.

Want to know how AI models currently describe your business?

We run a free visibility check across ChatGPT, Perplexity, Claude and Google AI Overviews, then show you exactly which signals are missing.

Book a visibility check

Keep reading