GO

Quoted in this piece

GPTBot, ClaudeBot and Every Other AI Crawler

GPTBot, ClaudeBot, OAI-SearchBot and the rest — what each is for, which ones fire when a person is actually asking, and the two that never appear in your log.

An unsorted access log of AI user agents on the left, sorted on the right into three labelled lanes — training, index and live — each holding the vendor bots that belong to it

The short version

Every major vendor now runs three kinds of agent — one collecting training data, one building a search index, and one that fires because a person is asking right now. Sorting your log into those three buckets changes what it says. Two of the most-discussed names, Google-Extended and Applebot-Extended, are not crawlers and will never appear. Blocking one agent does not block its siblings, blocking all of them does not stop your content being cited through somebody else's copy of it, and every name in the file is a claim until you check the IP against the vendor's published ranges.

You grepped your access log, and now you have a list of names. GPTBot. ClaudeBot. Meta-ExternalAgent. Something called OAI-SearchBot that you have never heard of.

They are not interchangeable, and the differences decide what you can do about any of them. Some are collecting training data. Some are building a search index. Some fired because a person was asking a question at that exact moment. Two of the names most commonly discussed are not crawlers at all and will never appear in your log.

Every row below is taken from the operator's own published documentation, linked, and checked on 2 September 2026. This roster changes — vendors add agents, rename them, and split one into three. If you are reading this much later, follow the links rather than the table.

Which AI Bots are These? the Full List

Here is every documented agent from the major vendors, grouped by who runs it. The column that matters most is when it fires, because that is what separates a bot indexing you in the background from a bot fetching your page because somebody asked about you thirty seconds ago.

VendorUser agentWhen it firesrobots.txt
OpenAIGPTBottraining data collectionobeys
OAI-SearchBotbuilding ChatGPT's search indexobeys
ChatGPT-Usera person asked, right nowmay not apply
OAI-AdsBotvalidating a submitted ad pageobeys
AnthropicClaudeBottraining data collectionobeys
Claude-SearchBotimproving search result qualityobeys
Claude-Usera person asked, right nowobeys
PerplexityPerplexityBotbuilding the search indexobeys
Perplexity-Usera person asked, right nowgenerally ignores
GoogleGooglebotSearch, Images, News, Discoverobeys
GoogleOthergeneric, various product teamsobeys
Google-CloudVertexBotcrawls a site owner requested for Vertex AIobeys
Metameta-externalagenttraining foundation modelsobeys
meta-webindexerMeta AI search result qualityobeys
meta-externalfetchera person asked, right nowmay bypass
meta-externaladsadvertising productsobeys
facebookexternalhitsomeone shared your linkmay bypass
AppleApplebotpowers Apple search featuresobeys
AmazonAmazonbotproducts, services, and Amazon AI trainingobeys
Common CrawlCCBot/2.0open crawl archive, used by manyobeys

Sources, in order: OpenAI, Anthropic, Perplexity, Google, Meta, Apple, Amazon, Common Crawl.

Names you will see that are not on this list are not necessarily fake — plenty of smaller engines and SEO tools crawl too, and some are documented nowhere useful. Treat an undocumented name as unknown rather than as an AI engine.

Why Every Vendor Now Runs Three Different Bots

Because three different things are happening, and lumping them together is what makes a log unreadable. Read down the table and the same shape repeats at OpenAI, Anthropic, Perplexity and Meta: a training crawler, a search-index crawler, and a live fetcher that runs when a user asks a question.

txt
training        GPTBot · ClaudeBot · meta-externalagent
index           OAI-SearchBot · Claude-SearchBot · PerplexityBot · meta-webindexer
live            ChatGPT-User · Claude-User · Perplexity-User · meta-externalfetcher

That middle row is the one worth caring about. Training crawls feed a model that ships months later. The index row is what a chat engine actually searches when it needs a current answer, so it is the closest thing in your log to being in the running for a citation.

The bottom row is closer still, and it is the most misread. A live fetch means somebody typed a question and the engine went and got your page to help answer it. It is the strongest single signal in the file. It is also not proof you were named in the answer it produced — a bot visiting is not the same as being mentioned, and the gap between the two is the thing that makes logs feel more informative than they are.

One practical consequence: counting "AI bot hits" as a single number destroys the only distinction that matters. A thousand training crawls and one live fetch is a very different week from the reverse, and a total tells you which one you had.

The Two Names You Will Never Find in Your Log

Google-Extended and Applebot-Extended are not crawlers. They are robots.txt control tokens — labels you use to grant or refuse permission — and neither one ever makes a request. Grep for them forever and you will find nothing, because there is nothing to find.

Both vendors say so themselves.

TokenWhat it actually controlsThe vendor's own words
Google-Extendedwhether content Google already crawled may train future Gemini models"doesn't have a separate HTTP request user agent string"
Applebot-Extendedhow the data Applebot already collected gets used"does not crawl webpages" — and disallowed pages "can still be included in search results"

This trips people up in both directions. Blocking Google-Extended does not reduce your crawl traffic by a single request, because it was never making any. And an empty grep for these names is not evidence that Google or Apple are ignoring you — it is the expected result, always, for everybody.

The general rule: the permission layer and the request layer are different systems.

  • The request layer — a bot fetches your page, and your server writes a line about it. This is the only one that leaves a trace.
  • The permission layer — what may be done with your content after it has been collected. It never makes a request, so it never appears anywhere you can grep.

Does Blocking GPTBot Stop ChatGPT From Citing Me?

No — and OpenAI's own documentation is the fastest way to see why. GPTBot is described as the crawler for "content that may be used in training our generative AI foundation models." It is one of four OpenAI agents. OAI-SearchBot is the one "used to surface websites in search results in ChatGPT's search features," and it is governed by its own token.

So a robots.txt that disallows GPTBot and nothing else opts you out of training while leaving ChatGPT's search index entirely untouched. Many sites that believe they have blocked OpenAI have blocked exactly one of its four agents, and not the one that feeds answers.

Write Disallow: GPTBot and you have opted out of training data collection. Three OpenAI agents are still running:

Still runningWhat it does
OAI-SearchBotbuilds ChatGPT's search index — the one that feeds answers
ChatGPT-Userfetches your page when a person asks; robots.txt "may not apply"
OAI-AdsBotvalidates a submitted ad page

There is a second, larger hole, and it has nothing to do with which token you picked. One practitioner ran a study on this: 180 B2B SaaS and fintech domains, robots.txt checked against Wayback Machine timestamps, then 60 brand-name queries run through ChatGPT-4o between 15 June and 3 July. 31% of the domains blocking GPTBot were still cited — with attribution, domain name and link. Most had been blocking for four months or more.

They traced where the citations came from:

  • About half — syndication. Press-release networks, industry roundups, and content partners that had republished the original.
  • Roughly a third — forums and Q&A. Reddit threads and Q&A sites where somebody had quoted or paraphrased the blocked domain.

That is one person's spreadsheet on one slice of the market, not a benchmark, and the exact percentage should not be treated as a law. The mechanism behind it is what generalises, and it is not really disputable:

You can control whether a crawler hits your server. You can't control whether your content has already been copied, quoted, summarized, or cached somewhere the crawler CAN reach.
r/GEO_optimization · r/GEO_optimization

robots.txt is a request-time control. It governs your server and nothing else. The moment a paragraph of yours exists on a page you do not own, your robots.txt has no jurisdiction over it — and, as that study points out, the citation credit then goes to whoever republished you.

One more thing worth knowing before you edit that file: the live fetchers sit outside robots.txt by design, and each vendor says so in its own documentation.

AgentVendorWhat the vendor says about robots.txt
ChatGPT-UserOpenAI"robots.txt rules may not apply"
Perplexity-UserPerplexity"generally ignores robots.txt rules"
meta-externalfetcherMeta"may bypass robots.txt rules"

The reasoning is the same in all three cases — a person asked for that specific page, so it is treated as a user action rather than a crawl. And Amazon caches your robots.txt for up to 30 days, so a rule you add today may not take effect for weeks.

Free tool
See which AI engines are reading your site, and which ones are only claiming to.
Check AI visibility

How Do I Check a Bot is Really Who It Says It Is?

Match the requesting IP address against the ranges the vendor publishes. A user agent is a text field that anything can write, so the name in your log is a claim, not an identity — and the vendors know it. Common Crawl says outright that it is "aware of crawlers falsely identifying themselves as CCBot."

Every major operator publishes its address ranges as a JSON file for exactly this reason:

  • OpenAI — a file per agent: openai.com/gptbot.json, openai.com/searchbot.json, openai.com/chatgpt-user.json, openai.com/adsbot.json
  • Anthropic — one file for all its bots: claude.com/crawling/bots.json
  • Perplexity — perplexity.com/perplexitybot.json and perplexity.com/perplexity-user.json
  • Common Crawl — index.commoncrawl.org/ccbot.json

Google and Apple publish theirs alongside their crawler documentation, and Google additionally supports reverse DNS lookup as a check.

Two cautions before you build anything on those files:

  • A cached range list goes stale. Each file carries a timestamp and changes, so ranges you saved months ago will produce false negatives on legitimate traffic.
  • IP blocking is not a substitute for robots.txt. Anthropic notes that it "may not work correctly or persistently guarantee an opt-out" — true of every vendor whose infrastructure moves.

Verification is the step that turns a name into evidence, and it is where a hand-run log check starts getting genuinely laborious. Doing it once teaches you what the file can and cannot say. Doing it monthly, across four vendors and a moving list of ranges, is a different kind of job.

Conclusion

The single most useful thing you can do with a list of bot names is sort them into three buckets: training, index, and live. Everything else about your log reads differently once you have.

Two of the most-discussed names are not crawlers and will never appear. Blocking one agent from a vendor does not block its siblings, and blocking all of them does not stop your content being cited through somebody else's republished copy. The live fetchers, which are the most interesting rows you have, are largely outside robots.txt on purpose.

Take the names in your log as claims until you have checked them against the published ranges. Then remember what the whole file is and is not: good evidence that you are reachable, and no evidence at all about whether any answer named you.


AI Crawler User Agents: Frequently Asked Questions

What is the difference between GPTBot and ChatGPT-User?
They fire at completely different moments. GPTBot collects training data on OpenAI's schedule, months before any model ships. ChatGPT-User fires when a real person asks something and ChatGPT fetches your page to help answer it. Neither is the one that builds ChatGPT's search index — that is OAI-SearchBot, a third agent with its own robots.txt token.
Should I block AI crawlers in robots.txt?
That depends on whether you want the traffic or the training, and they are separable. Blocking the training crawlers while allowing the index crawlers keeps you eligible to be surfaced in AI search while opting out of model training. Blocking everything removes you from the index too, and — per the study above — still does not remove content of yours that lives on sites you do not control.
Why do I see GPTBot but not Google-Extended?
Because Google-Extended does not make requests. It is a robots.txt control token that governs whether already-crawled content may train Gemini, and Google states it "doesn't have a separate HTTP request user agent string." Applebot-Extended works the same way. An empty result for either is normal for every site on the internet.
Do AI crawlers respect robots.txt?
The training and index crawlers generally say they do. The live user-directed fetchers are the exception and say so plainly: OpenAI notes that for ChatGPT-User, "robots.txt rules may not apply"; Perplexity says Perplexity-User "generally ignores robots.txt rules"; Meta says meta-externalfetcher "may bypass robots.txt rules." The stated reasoning in each case is that a person requested that specific page.
How do I verify a bot is not spoofed?
Check the requesting IP against the vendor's published range file rather than trusting the user agent string, which any script can forge. OpenAI, Anthropic, Perplexity and Common Crawl all publish JSON range lists; Google supports reverse DNS. Common Crawl explicitly warns about crawlers impersonating CCBot, so this is a real problem rather than a theoretical one.
Is Amazonbot an AI crawler?
Partly. Amazon describes it as improving "our products and services," adding that the data "may be used to train Amazon AI models." It is not a chat engine crawler in the sense that GPTBot or ClaudeBot are, but it is frequently among the heaviest bots hitting a site, so it will distort any count that lumps all bots together.
How often does this list change?
Often enough that a cached copy goes stale within months. Vendors add agents, split one into several, and rename them — Meta's AI search crawler, meta-webindexer, is a recent addition alongside the older meta-externalagent. Check the linked vendor pages rather than trusting any roster, including this one, past its verification date. --- Meta Title: GPTBot, ClaudeBot and Every Other AI Crawler Meta Description: GPTBot, ClaudeBot, OAI-SearchBot and the rest — what each is for, which ones fire when a person is actually asking, and the two that never appear in your log.

Find the exact growth leak in your business — in 2 minutes.

Paste your URL. Our AI agent crawls your site, diagnoses what's broken, and ships a step-by-step fix plan. Free, no signup.

Run free audit