AI crawlers and robots.txt
Only if you want to be left out of the training data — it will not remove you from ChatGPT’s answers, because the bot that fetches pages for those has a different name. Training crawlers and answer crawlers are separate, and confusing them is the most expensive mistake in this file.
Dated, and not independently verified. The table below was
compiled on 19 September 2026 from what each vendor publishes about its own
crawlers. We have not audited any of them from the outside, and these names and
behaviours change without much notice. Check the vendor’s own current documentation
before you edit a production robots.txt on the strength of this page.
The three jobs a crawler can be doing
Nearly all the confusion in this area comes from treating “AI crawler” as one thing. There are three distinct jobs, and most vendors use a different user agent for each:
- Training. Collecting text to train a future model. Blocking this affects models that do not exist yet, and nothing you see today.
- Search indexing. Building the index the assistant searches when somebody asks a question. Blocking this is how you actually disappear from AI answers.
- User-triggered fetch. A person pasted your URL, or the assistant decided to open it mid-conversation. Several vendors treat this as a user action rather than crawling, and say it does not follow the usual robots.txt rules.
The crawlers, and which job each does
| Crawler | Job | Block it and… |
|---|---|---|
GPTBotOpenAI | Training | You stay in ChatGPT’s answers. Only future training is affected. |
OAI-SearchBotOpenAI | Search indexing | This is the one that removes you from ChatGPT search results. |
ChatGPT-UserOpenAI | User-triggered fetch | A user asking ChatGPT to open your link may get nothing. |
PerplexityBotPerplexity | Search indexing | You stop being a candidate source for Perplexity answers. |
Perplexity-UserPerplexity | User-triggered fetch | Perplexity documents this as acting for a user, so robots.txt may not stop it. |
ClaudeBotAnthropic | Training | Future training only. |
Claude-SearchBotAnthropic | Search indexing | You become harder for Claude to find when it searches. |
Claude-UserAnthropic | User-triggered fetch | A user’s direct request to read your page may fail. |
Googlebot | Search indexing, and AI Overviews | You leave Google Search entirely. There is no way to keep one and drop the other. |
Google-Extended | A permission token, not a crawler | Controls use of your content for Gemini training and grounding. It does not remove you from AI Overviews. |
BingbotMicrosoft | Search indexing, and Copilot | You leave Bing and Copilot together. |
Applebot-ExtendedApple | A permission token | Opts your content out of Apple’s generative training without affecting Applebot’s search crawl. |
CCBotCommon Crawl | Open corpus | Removes you from a dataset many model builders start from. |
The two traps
Trap one: blocking the training bot and expecting to disappear from
answers. A site that disallows GPTBot and ClaudeBot
and leaves the search bots alone has changed nothing about what an assistant says
today. A site that does the reverse — blocks the search bots and allows training — has
made itself uncitable while still contributing its text to the next model. Both happen
constantly, and both are usually accidental.
Trap two: a blanket User-agent: * rule. Plenty of sites
carry a broad disallow written for a crawler nobody remembers, or inherited from a
plugin, a staging config or a template. It now applies to every AI crawler by default.
If you have never read your own robots.txt line by line, read it before
you conclude that you are invisible for any other reason.
Deciding what to allow
There is a real trade-off here and we are not going to pretend otherwise. Allowing training crawlers contributes your work to a model you get nothing from. Allowing search crawlers is the price of being in the answers. They are separable, so decide separately:
| If you are… | Training crawlers | Search and answer crawlers |
|---|---|---|
| A business that wants recommending | Your call — little effect either way on visibility | Allow. Blocking these is how you become invisible. |
| A publisher selling content | Block, or licence it deliberately | Allow if you want referral traffic; block if the answer replaces the visit |
| A docs or support site | Allow — being in the training data helps users | Allow. Assistants answering support questions correctly is a win. |
| Anything private or paywalled | Block, and do not rely on this file for it | Block, and enforce it with a real login |
robots.txt is a request, not a control. It is honoured voluntarily. Anything that must not be read by a machine needs authentication, not a directive in a text file. Treat robots.txt as a preference expressed to well-behaved crawlers, and nothing more.
What ours says, and why
Bungad’s robots.txt allows everything and points at the sitemap. We are a business that wants to be found by assistants, we have nothing paywalled, and we would rather our pages be readable by every crawler that asks. That is the simplest honest position for most companies in our position, and it is the one we would suggest first.
The failures robots.txt will not explain
If your file is clean and you are still never retrieved, the block is somewhere else. In rough order of how often we see it:
- Bot protection at the CDN. A managed challenge or a “block AI bots” toggle at the edge will stop crawlers that robots.txt happily allows, and it leaves no trace in your site config. Several CDNs turned such a toggle on by default. Check it.
- JavaScript-only content. If the text only appears after a client render, a crawler that does not execute scripts sees an empty shell. Fetch your own page with scripting off and read what is actually there.
- Login, email or consent walls. Anything a crawler cannot click through is a page it cannot read.
- Facts locked in PDFs, images and video. A price in a picture cannot be quoted by anything, ever.
- Slow or unstable responses. Crawlers give up. A page that takes ten seconds under load is a page that sometimes does not exist.
You can confirm most of this from your own server logs, for free, without any tool — the method is on checking whether AI mentions your brand.
Common questions
Should I block GPTBot in robots.txt?
Only if you specifically want your content left out of future OpenAI training. Blocking GPTBot does not remove you from ChatGPT's answers, because the bot that builds ChatGPT's search index is OAI-SearchBot and the one that opens a link for a user is ChatGPT-User. If your goal is to be recommended by assistants, blocking the search crawlers is what would hurt you, and blocking the training crawler achieves almost nothing either way.
Does Google-Extended stop my site appearing in AI Overviews?
No. Google-Extended is a permission token covering use of your content for Gemini training and grounding. AI Overviews are served from Google's ordinary search index, crawled by Googlebot, so the only way to leave AI Overviews is to leave Google Search. That is a trade almost nobody should make, and Google has been explicit that the two cannot be separated.
Will blocking AI crawlers protect my content?
Not reliably. robots.txt is honoured voluntarily by well-behaved crawlers and ignored by everything else, and several vendors document their user-triggered fetchers as acting on a person's behalf rather than as crawlers. Anything that genuinely must not be read by a machine needs authentication. Treat robots.txt as a preference, not a control.
My robots.txt is fine and I am still never cited. What now?
Check the edge before the origin: CDN bot-protection rules block crawlers that robots.txt allows, and some were enabled by default. After that, check whether your content exists without JavaScript, whether anything sits behind a login or consent wall, and whether your key facts are trapped in PDFs or images. If all of that is clean, the problem is almost certainly that no page of yours answers the exact question being asked.
Check that you are actually reachable
We ask Perplexity three of your buyers’ questions and show you every source it retrieves. If nothing of yours is ever fetched, this file is the first place to look.
3 questions on Perplexity, free. A domain checked in the last week is served from that stored run rather than asked again, and the daily free allowance resets at midnight UTC.