GPTBot vs ChatGPT-User vs OAI-SearchBot: what each OpenAI bot does
Blocking GPTBot does not take your site out of ChatGPT, and allowing GPTBot does not put it in. They are different bots with different jobs, and each one follows its own line in robots.txt.
Checked on 11 November 2026
OpenAI's four bots
| Bot | What it does | Follows robots.txt |
|---|---|---|
| GPTBot | Collects content that may be used to train OpenAI's models. | Yes. Blocking GPTBot says the content should not be used for training. |
| OAI-SearchBot | Surfaces sites in ChatGPT search results. | Yes. Changes show in search in about 24 hours. |
| ChatGPT-User | Fetches a page when someone asks ChatGPT or a GPT a question, or uses a GPT Action. | May not: OpenAI says that because a person asked, the rules may not apply. |
| OAI-AdsBot | Checks the landing pages of ads in ChatGPT. | OpenAI does not say. It only visits pages submitted as ads. |
OpenAI says each setting is independent of the others. If a site allows both GPTBot and OAI-SearchBot, OpenAI may use one crawl for both purposes.
The robots.txt to stay in search and out of training
It is the setup most companies want: show up when someone searches in ChatGPT, without giving their content to model training.
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /Even a site that blocks OAI-SearchBot can still appear in ChatGPT as a plain link with no summary. To check what your robots.txt allows for each agent, use the free robots.txt tester for AI.
What about ChatGPT agent?
ChatGPT agent browses, clicks and fills in forms for a person. It does not identify itself with a name in the user agent: it uses an ordinary browser and signs its requests with Web Bot Auth (RFC 9421). So it never shows up in a user agent filter, and can only be recognized by checking the signature.
How to tell a visit really came from OpenAI
Any program can write GPTBot in its user agent. OpenAI publishes each bot's IP addresses in its own file (gptbot.json, searchbot.json, chatgpt-user.json and adsbot.json). A visit that claims to be GPTBot from outside those addresses is not OpenAI.
It matters because, on the sites we measure, a good share of the visits using an AI agent's name were not who they claimed. Counting log lines that say GPTBot overstates OpenAI's interest in your site and hides who is copying your content.
The same pattern at other AI companies
| Company | Training | AI search | A person's request |
|---|---|---|---|
| OpenAI | GPTBot | OAI-SearchBot | ChatGPT-User |
| Anthropic | ClaudeBot | Claude-SearchBot | Claude-User |
| Perplexity | – | PerplexityBot | Perplexity-User |
| Mistral | MistralAI-Training | MistralAI-Index | MistralAI-User |
| Google-Extended (robots.txt only) | Googlebot | Google-Agent and others |
See which OpenAI bots visit your site, and which are fake
The check is free and needs no sign-up.
Sources
Read next
- Knocklog vs Cloudflare AI Crawl Control vs Known Agents
- How to block AI training without disappearing from ChatGPT
- What is llms.txt and how to create yours
- An RB2B alternative that also sees the AI agents
- How to see AI bot traffic on WordPress
- How to see ChatGPT traffic in Google Analytics 4
- How to see which AI agents visit my website
- Directory of AI agents