GuidesOpenAI

GPTBot vs ChatGPT-User vs OAI-SearchBot.

One trains models, one indexes for ChatGPT search, one fetches live when a person asks. Which robots.txt rule affects which product.

OpenAI runs three public agents with three robots.txt names, three IP address lists and three different consequences for blocking. They are routinely confused in robots.txt files, which is how sites end up blocking ChatGPT citations while trying to opt out of training.

GPTBotOAI-SearchBotChatGPT-User
KindtrainingAI searchlive fetch
Fires whenon OpenAI's scheduleon OpenAI's schedulea person asks ChatGPT about a page
A hit meanspage collected for trainingpage indexed for ChatGPT searchone reader, via the assistant
Blocking affectsfuture training dataChatGPT search results and citationsChatGPT's ability to read the page in a chat
IP addresses publishedyes, own listyes, own listyes, own list
Commonly spoofedrarelyrarelyoften

The usual configuration

Allow OAI-SearchBot and ChatGPT-User, decide about GPTBot on its own. That keeps your pages citable and readable inside ChatGPT while opting out of training if you want to. Rules are per name, so a Disallow under GPTBot does nothing to the other two.

User-agent: GPTBot
Disallow: /

User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

In the report

agenttraffic shows ChatGPT-User and OAI-SearchBot in the AI crawlers section by default and hides GPTBot behind --show-training, because only the first two map to something a person sees. Each row carries its own verified and spoofed counts against the matching OpenAI address list.

See it in your logs

One command, nothing to install

Point it at CloudFront, nginx or Apache logs. All three OpenAI agents get their own row, each checked against its own published address list.

$ npx agenttraffic ./logs --days 7Quick start

Roadmap

Get a weekly report in your inbox

The command-line tool is free and stays free. A hosted version that emails you each week is on the roadmap. Leave your email and you'll hear once, when it exists.