OpenAI — bots and user agents ↗
Authoritative list of GPTBot, OAI-SearchBot and ChatGPT-User, with published IP ranges.
Reference
Most robots.txt mistakes in the AI era come from treating every bot as one thing. Training crawlers, retrieval crawlers, user-triggered fetchers and pure control tokens behave differently and cost differently when blocked. Here is the distinction, agent by agent.
Search-index crawlers build the corpus a product retrieves from when it answers. Blocking one of these removes you from that product's answers and citations — 19 of the agents below fall into this category or the next one, and blocking them has a direct visibility cost.
User-triggered fetchers retrieve a single page because a person asked. Blocking them means a user who explicitly pastes your URL into an assistant gets nothing back. That is rarely what anyone wants.
Training crawlers collect corpora for model training. Blocking them is a licensing and policy decision, not an SEO one, and it does not remove you from that vendor's search product.
Control tokens such as Google-Extended and Applebot-Extended are not crawlers at all. They are robots.txt names that govern how already-crawled content may be used downstream. Disallowing them changes usage rights, not crawling, and does not affect search inclusion.
Allow retrieval and user-triggered agents, decide on training deliberately. Something like this expresses "index and cite me, don't train on me" — adjust to your own policy rather than pasting it blind:
# Allow retrieval so we stay citable
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
# Opt out of training corpora
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: CCBot
Disallow: /
# Usage control tokens (not crawlers)
User-agent: Google-Extended
Disallow: /
User-agent: Applebot-Extended
Disallow: /Note what is deliberately absent: Googlebot and bingbot are untouched. Blocking those to "stop AI" would remove you from Google and Bing themselves, including AI Overviews, which are grounded in the ordinary search index rather than crawled by a separate agent.
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| OAI-SearchBot | OpenAI | Builds the index behind ChatGPT search. Blocking it removes the site from ChatGPT search surfacing and citation. | Loses visibility |
| Claude-SearchBot | Anthropic | Supports search results that Claude can cite. | Loses visibility |
| Googlebot | The classic search crawler. Content it indexes can also ground AI Overviews and AI Mode; there is no separate crawler for those surfaces. | Loses visibility | |
| bingbot | Microsoft | Powers Bing and, downstream, Copilot answers and several third-party search products. Blocking it is unusually costly. | Loses visibility |
| PerplexityBot | Perplexity | Builds Perplexity’s index for retrieval and citation. | Loses visibility |
| Applebot | Apple | Powers Siri and Spotlight suggestions. | Loses visibility |
| Amazonbot | Amazon | Supports Alexa and Amazon product answers. | Loses visibility |
| DuckAssistBot | DuckDuckGo | Supports DuckDuckGo’s assistant answers. | Loses visibility |
| YouBot | You.com | Crawls for You.com’s answer engine. | Loses visibility |
| Timpibot | Timpi | Decentralised search index crawler. | Policy choice |
| YandexBot | Yandex | Dominant in Russian-language search. Uses its own webmaster console. | Loses visibility |
| Baiduspider | Baidu | Primary crawler for the Chinese market. | Loses visibility |
| Yeti | Naver | Korea’s leading search engine. | Loses visibility |
| SeznamBot | Seznam | Significant share in Czechia. | Loses visibility |
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| ChatGPT-User | OpenAI | Fetches a specific page because a user or a task asked ChatGPT to visit it. Not a bulk crawler. | Loses visibility |
| Claude-User | Anthropic | Retrieves a page in response to a specific user request inside Claude. | Loses visibility |
| Perplexity-User | Perplexity | Visits a page because a user followed or requested it in-product. | Loses visibility |
| Meta-ExternalFetcher | Meta | Fetches individual links for Meta AI assistant features. | Loses visibility |
| MistralAI-User | Mistral AI | Fetches pages for Le Chat when a user requests them. | Loses visibility |
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| GPTBot | OpenAI | Collects web content that may be used to train OpenAI models. Blocking it does not remove you from ChatGPT search results. | Policy choice |
| ClaudeBot | Anthropic | General web crawler. Anthropic documents its crawler behaviour and honours robots.txt. | Policy choice |
| Google-CloudVertexBot | Crawls sites on a Vertex AI customer’s instruction when they build their own grounded agents. | Policy choice | |
| Meta-ExternalAgent | Meta | Collects content for Meta’s AI products and model training. | Policy choice |
| CCBot | Common Crawl | Builds the public Common Crawl corpus, which many models and researchers use downstream. Blocking it has wide but indirect effects. | Policy choice |
| Bytespider | ByteDance | Widely reported as aggressive. Frequently rate-limited at the edge rather than only in robots.txt. | Policy choice |
| cohere-ai | Cohere | Historically used for corpus collection; Cohere has also used more specific tokens. | Policy choice |
| Diffbot | Diffbot | Builds a commercial knowledge graph resold to other companies. | Policy choice |
| ImagesiftBot | ImageSift / Hive | Collects images at scale. | Policy choice |
| Webzio-Extended | Webz.io | Data-as-a-service collection resold to AI companies. | Policy choice |
| PanguBot | Huawei | Collects data for Huawei’s PanGu models. | Policy choice |
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| Google-Extended | Not a crawler. A robots.txt token controlling whether crawled content may be used to improve Gemini models and grounded responses. It does not affect Google Search inclusion. | Policy choice | |
| Applebot-Extended | Apple | Not a crawler. Opts content out of training Apple’s foundation models while leaving Applebot search indexing intact. | Policy choice |
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| GoogleOther | Generic fetcher used by internal teams for one-off crawls and research, separate from search indexing. | Policy choice | |
| AI2Bot | Allen Institute for AI | Collects data for open research corpora such as Dolma. | Policy choice |
| User-agent token | Operator | What it does | Cost of blocking |
|---|---|---|---|
| facebookexternalhit | Meta | Generates link previews when a URL is shared. Blocking it breaks social unfurls. | Loses visibility |
Go to the source. These pages are maintained by the operators themselves and supersede anything here.
Authoritative list of GPTBot, OAI-SearchBot and ChatGPT-User, with published IP ranges.
Covers Googlebot, GoogleOther, Google-Extended and the special-case fetchers.
How to confirm a request claiming to be Googlebot really is.
How the public corpus is built and how to opt out.
The standard itself. Worth reading once: precedence rules surprise most practitioners.
A community convention, not a standard. No major engine has committed to honouring it.