BOZOSREFERENCE / AI CRAWLERS
VERIFIED 2026-10-20 · 32 TOKENS · 14 OPERATORS · CC0

Which AI crawler is which, and what it actually does.

Crawlers and user agents that AI and search companies document themselves. Every entry in crawlers is taken from the operator's own documentation, read on the verified date. Tokens people often ask about but whose operators publish no documentation are listed separately in undocumented_tokens, with what BOZOS searched for and found; they are not described as fact.

Record what the operator states, not what observers report. Where the documentation is silent, say so (robots_txt: not-stated, used_for_ai_training: null) rather than infer.

Quick answers

How do I opt out of AI training but stay in AI search and answers?
Disallow the training crawlers, the training control tokens, and Common Crawl's open dataset crawler (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, meta-externalagent, CCBot, Amazonbot, MistralAI-Training, AI2Bot), and allow the rest. Get that robots.txt →
Which tokens are not crawlers at all?
Google-Extended, Applebot-Extended. They only exist in robots.txt and decide how data their parent crawler already fetched may be used. Blocking them does not affect search.
Which fetchers say robots.txt may not apply?
ChatGPT-User, Perplexity-User, meta-externalfetcher, facebookexternalhit, Amzn-User. Their operators say robots.txt may not apply, usually because a person asked for the page (facebookexternalhit: during security checks). robots.txt is a request, not access control.
How do I tell a real crawler from a fake one?
Check the request's IP against the operator's published list (linked in the table) or use reverse DNS where the operator documents it. User-agent strings are easy to spoof.
I want to block every AI crawler.
Get a robots.txt that disallows all of them → User-initiated fetchers may still visit, as above.
DIRECTORY

All documented tokens, by operator.

OpenAI

TokenCategoryrobots.txtTrainingWhat it doesSources
GPTBottrainingObeysMay train modelsCrawls content that may be used to train OpenAI's generative AI foundation models. Disallowing GPTBot signals the site's content should not be used for training.
In OpenAI's words (2)
  • It is used to crawl content that may be used in training our generative AI foundation models. purpose
  • Disallowing GPTBot indicates a site's content should not be used in training generative AI foundation models. robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
OAI-SearchBotsearchObeysNot statedSurfaces sites in ChatGPT search features. Opted-out sites are not shown in ChatGPT search answers but can still appear as navigational links. Changes take about 24 hours.
In OpenAI's words (2)
  • OAI-SearchBot is used to surface websites in search results in ChatGPT's search features. purpose
  • Sites that are opted out of OAI-SearchBot will not be shown in ChatGPT search answers, though can still appear as navigational links. robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
ChatGPT-Useruser-fetchMay ignoreNot statedVisits a page when a ChatGPT or Custom GPT user asks a question, and for GPT Actions. Does not crawl automatically. OpenAI states robots.txt rules may not apply because the fetch is user-initiated.
In OpenAI's words (2)
  • When users ask ChatGPT or a CustomGPT a question, it may visit a web page with a ChatGPT-User agent. purpose
  • Because these actions are initiated by a user, robots.txt rules may not apply. robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
OAI-AdsBototherNot statedNot for trainingChecks landing pages submitted as ChatGPT ads for safety and relevance. Visits only submitted ad pages. OpenAI's page does not say whether robots.txt applies.
In OpenAI's words (2)
  • OAI-AdsBot is used to validate the safety of web pages submitted as ads on ChatGPT. purpose
  • the data collected by OAI-AdsBot is not used to train generative AI foundation models. used_for_ai_training
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗

Anthropic

TokenCategoryrobots.txtTrainingWhat it doesSources
ClaudeBottrainingObeysMay train modelsCollects web content that could contribute to training Anthropic's models. Also supports the non-standard Crawl-delay extension. Anthropic asks site owners to set rules on every subdomain.
In Anthropic's words (3)
  • ClaudeBot helps enhance the utility and safety of our generative AI models by collecting web content that could potentially contribute to their training. purpose
  • Anthropic's Bots respect "do not crawl" signals by honoring industry standard directives in robots.txt. robots_txt
  • When a site restricts ClaudeBot access, it signals that the site's future materials should be excluded from our AI model training datasets. used_for_ai_training
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
Claude-SearchBotsearchObeysNot statedNavigates the web to improve search result quality for Claude users. Covered by Anthropic's general statement that its bots honor robots.txt. Blocking may reduce visibility in Claude search results.
In Anthropic's words (2)
  • Claude-SearchBot navigates the web to improve search result quality for users. purpose
  • Anthropic's Bots respect "do not crawl" signals by honoring industry standard directives in robots.txt. robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
Claude-Useruser-fetchObeysNot statedRetrieves pages when Claude users ask questions. Covered by Anthropic's general statement that its bots honor robots.txt. Blocking prevents retrieval in response to user queries.
In Anthropic's words (2)
  • When individuals ask questions to Claude, it may access websites using a Claude-User agent. purpose
  • Disabling Claude-User on your site prevents our system from retrieving your content in response to a user query robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗

Google

TokenCategoryrobots.txtTrainingWhat it doesSources
GooglebotsearchObeysNot statedCrawls for Google Search, including Discover, Images, Video, and News surfaces. Standard robots.txt rules apply.
In Google's words (2)
  • Crawling preferences addressed to the Googlebot user agent affect Google Search (including Discover and all Google Search features) purpose
  • They always obey robots.txt rules when crawling automatically. robots_txt
Docs ↗ · Archived 2026-10-20 ↗ · IPs ↗
Google-Extendedcontrol-tokenControl tokenMay train modelsNot a crawler. Controls whether content Google crawls may be used to train future Gemini models and for grounding in Gemini Apps and the Vertex AI API. Set rules for Google-Extended in robots.txt. It does not affect inclusion in Google Search.
In Google's words (3)
  • the robots.txt user-agent token is used in a control capacity. category
  • Google-Extended is a standalone product token that web publishers can use to manage whether content Google crawls from their sites may be used for training future generations of Gemini models used_for_ai_training
  • Google-Extended does not impact a site's inclusion in Google Search nor is it used as a ranking signal in Google Search. purpose
Docs ↗ · Archived 2026-10-20 ↗
GoogleOtherotherObeysNot statedGeneric crawler used by Google product teams, for example for internal research. Standard robots.txt rules apply. Affects no specific product.
In Google's words (2)
  • GoogleOther is the generic crawler that may be used by various product teams for fetching publicly accessible content from sites. purpose
  • They always obey robots.txt rules when crawling automatically. robots_txt
Docs ↗ · Archived 2026-10-20 ↗ · IPs ↗
Google-CloudVertexBotowner-requestedObeysNot statedCrawls sites at the site owner's request to build Vertex AI Agents. No effect on Google Search.
In Google's words (2)
  • Crawling preferences addressed to the Google-CloudVertexBot user agent affect crawls requested by the site owners' for building Vertex AI Agents. purpose
  • They always obey robots.txt rules when crawling automatically. robots_txt
Docs ↗ · Archived 2026-10-20 ↗ · IPs ↗

Microsoft

TokenCategoryrobots.txtTrainingWhat it doesSources
bingbot medium confidencesearchObeysNot statedCrawler for the Bing search index. Standard robots.txt rules apply. Microsoft's help page renders client-side; the IP list was verified directly.Quotes not machine-verifiable: the documentation page renders in the browser, so its text cannot be fetched and checked automatically. Details rest on the token name and the verified IP list.Docs ↗ · Archived 2026-10-19 ↗ · IPs ↗

Apple

TokenCategoryrobots.txtTrainingWhat it doesSources
ApplebotsearchObeysMay train modelsPowers search in Spotlight, Siri, and Safari. Apple says crawled data may also be used to train its foundation models. Apple says Applebot respects standard robots.txt directives in general search crawls targeted at Applebot, and falls back to Googlebot rules when no Applebot rules exist. Does not follow Crawl-delay.
In Apple's words (4)
  • The data crawled by Applebot is used to power various features, such as the search technology integrated into many user experiences in Apple's ecosystem including Spotlight, Siri, and Safari. purpose
  • The data crawled by Applebot may also be used to help train Apple foundation models powering generative AI features across Apple products used_for_ai_training
  • Applebot respects standard robots.txt directives in general search crawls that are targeted at Applebot. robots_txt
  • If robots instructions don't mention Applebot but mention Googlebot, the Apple robot will follow Googlebot instructions. robots_txt
Docs ↗ · Archived 2026-10-16 ↗ · IPs ↗
Applebot-Extendedcontrol-tokenControl tokenMay train modelsNot a crawler. Controls whether data Applebot already crawled may be used to train Apple's general-purpose foundation models. Blocking it does not remove pages from Apple search results.
In Apple's words (1)
  • Web publishers can opt-out from having their content used to train generative foundation models by disallowing Applebot-Extended in the robots.txt file. used_for_ai_training
Docs ↗ · Archived 2026-10-16 ↗

Perplexity

TokenCategoryrobots.txtTrainingWhat it doesSources
PerplexityBot conflict reportedsearchObeysNot for trainingSurfaces and links websites in Perplexity search results. Perplexity says it is not used to crawl content for AI foundation models. Perplexity recommends allowing it in robots.txt; its page does not state compliance in so many words.
In Perplexity's words (2)
  • PerplexityBot is designed to surface and link websites in search results on Perplexity. purpose
  • It is not used to crawl content for AI foundation models. used_for_ai_training
Docs ↗ · Archived 2026-10-20 ↗ · IPs ↗
Perplexity-User conflict reporteduser-fetchMay ignoreNot for trainingVisits a page when a Perplexity user asks a question, and links it in the answer. Not used for crawling or training. Perplexity's page says both that Perplexity-User "controls which sites these user requests can access" and that, since a user requested the fetch, the fetcher "generally ignores robots.txt rules".
In Perplexity's words (4)
  • When users ask Perplexity a question, it might visit a web page to help provide an accurate answer and include a link to the page in its response. purpose
  • Since a user requested the fetch, this fetcher generally ignores robots.txt rules. robots_txt
  • Perplexity-User controls which sites these user requests can access. robots_txt
  • It is not used for web crawling or to collect content for training AI foundation models. used_for_ai_training
Docs ↗ · Archived 2026-10-20 ↗ · IPs ↗

Meta

TokenCategoryrobots.txtTrainingWhat it doesSources
meta-externalagenttrainingObeysMay train modelsCrawls for uses such as training foundation AI models or improving products by indexing content directly. Block with a disallow rule. Changes can take up to 24 hours.Quotes not machine-verifiable: the documentation page refuses automated requests (HTTP 400), so quotes cannot be checked automatically. Last read in a browser on the verified date.Docs ↗ · Archived 2026-10-20 ↗
meta-webindexersearchNot statedNot statedImproves Meta AI search results so Meta AI can cite and link content. Meta's page does not describe its robots.txt behavior.Quotes not machine-verifiable: the documentation page refuses automated requests (HTTP 400), so quotes cannot be checked automatically. Last read in a browser on the verified date.Docs ↗ · Archived 2026-10-20 ↗
meta-externalfetcheruser-fetchMay ignoreNot statedFetches individual links at a user's request for agentic AI features. Meta states this crawler may bypass robots.txt rules.Quotes not machine-verifiable: the documentation page refuses automated requests (HTTP 400), so quotes cannot be checked automatically. Last read in a browser on the verified date.Docs ↗ · Archived 2026-10-20 ↗
facebookexternalhitlink-previewMay ignoreNot statedFetches title, description, and thumbnail for links shared in Meta apps. Meta states it might bypass robots.txt for security or integrity checks.Quotes not machine-verifiable: the documentation page refuses automated requests (HTTP 400), so quotes cannot be checked automatically. Last read in a browser on the verified date.Docs ↗ · Archived 2026-10-20 ↗

Common Crawl

TokenCategoryrobots.txtTrainingWhat it doesSources
CCBotopen-datasetObeysNot statedBuilds Common Crawl's open web archive, which anyone may analyze and which is widely used in AI training datasets. Common Crawl documents blocking with User-agent: CCBot / Disallow: /. Spoofed CCBot user agents exist; verify by reverse DNS.
In Common Crawl's words (2)
  • producing and maintaining an open repository of web crawl data that is universally accessible and analyzable by anyone. purpose
  • To prevent Common Crawl from crawling your website, include the following in your robots.txt robots_txt
Docs ↗ · Archived 2026-10-05 ↗ · IPs ↗

Amazon

TokenCategoryrobots.txtTrainingWhat it doesSources
AmazonbottrainingObeysMay train modelsImproves Amazon products and services. Amazon says content may be used to train Amazon AI models. Does not support Crawl-delay. May use a cached robots.txt up to 30 days old.
In Amazon's words (3)
  • Amazonbot is used to improve our products and services. purpose
  • may be used to train Amazon AI models. used_for_ai_training
  • Automated crawling from these listed user agents respects the Robots Exclusion Protocol robots_txt
Docs ↗ · Archived 2026-10-07 ↗ · IPs ↗
Amzn-SearchBotsearchObeysNot for trainingImproves search in Amazon products such as Alexa. Not used for generative AI training. If not named, follows the rules given to other search bots.
In Amazon's words (3)
  • Amzn-SearchBot is used to improve search experiences in Amazon products and services. purpose
  • Amzn-SearchBot does not crawl content for generative AI model training. used_for_ai_training
  • Automated crawling from these listed user agents respects the Robots Exclusion Protocol robots_txt
Docs ↗ · Archived 2026-10-07 ↗ · IPs ↗
Amzn-Useruser-fetchMay ignoreNot for trainingHandles user-initiated requests, for example fetching live data for Alexa. Not used for generative AI training. Amazon states it may not always follow robots.txt because it acts on a user's behalf.
In Amazon's words (3)
  • Amzn-User supports user actions, such as responding to Alexa queries that require up-to-date information. purpose
  • Because actions taken by Amzn-User can be initiated by a user, it may not follow all robots.txt directives. robots_txt
  • Amzn-User does not crawl content for generative AI model training. used_for_ai_training
Docs ↗ · Archived 2026-10-07 ↗ · IPs ↗

Mistral AI

TokenCategoryrobots.txtTrainingWhat it doesSources
MistralAI-TrainingtrainingObeysMay train modelsCollects web content to build training datasets for Mistral's generative models. Mistral says webmasters can disallow it in robots.txt.
In Mistral AI's words (2)
  • MistralAI-Training crawls web content to help build datasets for training Mistral generative AI models. purpose
  • Webmasters can disallow this user agent in their robots.txt file. robots_txt
Docs ↗ · Archived 2026-10-10 ↗
MistralAI-IndexsearchNot statedNot for trainingCrawls for indexing only, feeding Mistral search. Not used for generative AI training. Mistral's page does not give bot-specific robots.txt guidance.
In Mistral AI's words (2)
  • MistralAI-Index is for automated crawling of the web for indexing purposes only. purpose
  • Content crawled by MistralAI-Index is not used for generative AI training of any kind. used_for_ai_training
Docs ↗ · Archived 2026-10-10 ↗ · IPs ↗
MistralAI-Useruser-fetchObeysNot for trainingVisits pages when a user asks Mistral's assistant a question. Not used for automatic crawling. Mistral says the MistralAI-User robots.txt tag governs which sites these user requests can be made to.
In Mistral AI's words (3)
  • When users ask Vibe a question, it may visit a web page to help answer and include a link to the source in its response. purpose
  • MistralAI-User governs which sites these user requests can be made to. robots_txt
  • It is not used for crawling the web in any automatic fashion, nor to crawl content for generative AI training. used_for_ai_training
Docs ↗ · Archived 2026-10-10 ↗ · IPs ↗

DuckDuckGo

TokenCategoryrobots.txtTrainingWhat it doesSources
DuckAssistBotuser-fetchObeysNot for trainingFetches pages in real time for DuckDuckGo's AI-assisted answers, which cite sources. Not used to train AI models. Opt-outs take effect after 72 hours and do not affect organic search rankings.
In DuckDuckGo's words (3)
  • DuckAssistBot is a web crawler for DuckDuckGo Search that crawls pages in real-time for our AI-assisted answers, which prominently cite their sources. purpose
  • This data is not used in any way to train AI models. used_for_ai_training
  • Once you've updated the file to disallow the DuckAssistBot user agent, the change will take effect after 72 hours and DuckAssistBot will stop crawling your site. robots_txt
Docs ↗ · Archived 2026-10-13 ↗ · IPs ↗

Diffbot

TokenCategoryrobots.txtTrainingWhat it doesSources
DiffbotsearchObeysNot for trainingGeneral, proactive web crawling for Diffbot's Knowledge Graph and web search, so sites can be discovered and cited there. Diffbot says this user agent is not used for AI training. Honors disallow and crawl-delay by default. Diffbot says robots.txt can be overridden in specific cases, usually under a partnership or agreement with the site.
In Diffbot's words (4)
  • General, proactive web crawling for building a general search engine. purpose
  • It is not used for AI training. used_for_ai_training
  • By default Diffbot's web crawls adhere to a site's robots.txt instructions, including the disallow and crawl-delay directives. robots_txt
  • the robots.txt instruction can be ignored/overridden. robots_txt
Docs ↗ · Archived 2026-10-20 ↗
Diffbot-Useruser-fetchNot statedNot statedRequests made on behalf of a person browsing a URL with Diffbot software. Diffbot's robots.txt statement covers its crawls; the page does not say how robots.txt applies to user-initiated Diffbot-User requests.
In Diffbot's words (1)
  • This is used by requests originating on behalf of a human user browsing a URL using Diffbot software, in response to their input. purpose
Docs ↗ · Archived 2026-10-20 ↗

You.com

TokenCategoryrobots.txtTrainingWhat it doesSources
YouBotsearchObeysNot statedThe web crawler that powers the You.com search engine. You.com says YouBot respects robots.txt, including user-agent-specific rules and crawl-delay, and caches robots.txt for 30 minutes.
In You.com's words (4)
  • YouBot is the web crawler that powers the You.com search engine. purpose
  • YouBot fully respects robots.txt directives, including user-agent specific rules and crawl-delay settings. robots_txt
  • YouBot caches robots.txt for 30 minutes. robots_txt
  • You.com supports three ways to verify that requests are genuinely from YouBot: cryptographic signatures (recommended), reverse DNS checks, and IP range validation. ip_ranges
Docs ↗ · Archived 2026-10-20 ↗

Allen Institute for AI (Ai2)

TokenCategoryrobots.txtTrainingWhat it doesSources
AI2BottrainingNot statedMay train modelsExplores certain domains to find web content that Ai2 says is used to train open language models. The crawler page does not mention robots.txt. It says the user-agent string can be used to filter or reject the crawler's traffic.
In Allen Institute for AI (Ai2)'s words (3)
  • The AI2 Bot explores certain domains to find web content. purpose
  • This web content is used to train open language models. used_for_ai_training
  • This user agent string can be used to filter or reject traffic from our crawler if desired. robots_txt
Docs ↗ · Archived 2026-10-02 ↗
DOCS VS. REPORTS

Where observers say a crawler does not do what its documentation says.

Recorded only when a named, primary source publishes its own observations. The operator's response is recorded next to it. Every other entry is marked none-recorded, which means no report is on file, not that behavior was verified.

Cloudflare, 2025-08-04: Perplexity is using stealth, undeclared crawlers to evade website no-crawl directives ↗. Cloudflare reported that when Perplexity's declared crawler was blocked, it used "a generic browser intended to impersonate Google Chrome on macOS" from IPs outside its published list, "ignoring — or sometimes failing to even fetch — robots.txt files". Cloudflare "de-listed them as a verified bot". Applies to: PerplexityBot, Perplexity-User.

Operator response, 2025-08-04: Agents or Bots? Making Sense of AI on the Open Web ↗: “Cloudflare fundamentally misattributed 3-6M daily requests from BrowserBase's automated browser service to Perplexity.”

NOT IN THE DIRECTORY

Often asked about, never documented by their operators.

These tokens appear in many blocklists, but BOZOS could not find documentation from the companies they are attributed to. Third-party claims about them disagree, so they are not described here as fact.

Bytespider searched 2026-10-20
BOZOS found no ByteDance-published page documenting Bytespider's purpose, robots.txt behavior, or IP ranges. Third-party claims about it disagree, so they are not recorded here as fact. You can still name it in robots.txt (User-agent: Bytespider). Compliance cannot be confirmed from operator documentation, so enforce a block at your CDN or firewall if it matters.
cohere-ai searched 2026-10-20
BOZOS found no Cohere-published crawler documentation for cohere-ai (Cohere's own pages use the name for its SDK packages). Third-party descriptions of its purpose conflict. You can name it in robots.txt (User-agent: cohere-ai). Third parties also list a separate cohere-training-data-crawler token; neither is documented by Cohere.
METHOD

Operator documentation only.

Each entry was read from the operator's own crawler documentation on 2026-10-20, and every published IP list URL was fetched to confirm it resolves. Where documentation is silent, the field says not-stated or null instead of guessing.

Evidence: each record lists the operator's exact words behind its fields. A script fetches every source page and fails if any quote no longer appears, and each source has a Wayback Machine snapshot, so you can check a record without trusting BOZOS.

Categories: training: Collects content that may be used to train AI models. search: Builds a search index that AI answers or search results draw on. user-fetch: Fetches a page only when a person asks an assistant something. Often treated as outside robots.txt. control-token: Not a crawler. A robots.txt token that controls how another crawler's data is used. open-dataset: Builds a public archive that third parties, including AI developers, reuse. owner-requested: Crawls only sites whose owners asked for it. link-preview: Fetches metadata to render link previews. other: Documented purpose that fits none of the above.

Crawler documentation changes often. If something here is out of date, agents and people can report it; fixes go in the corrections log.