AI Crawler Directory · OpenAI

ChatGPT-User:
what it is and how to verify it.

OperatorOpenAI
PurposeUser-triggered fetches
Respects robots.txtNo (user-triggered)
Executes JavaScriptNo
Hits verifiableYes — published IPs
TypeHTTP crawler / fetcher

OpenAI states robots.txt rules may not apply because each fetch is a direct user action.

ChatGPT-User is the fetcher that acts on behalf of a live ChatGPT session. When a user asks ChatGPT (or a Custom GPT) to open a link or pull current information from a specific page, this bot makes the request in real time. Every ChatGPT-User hit therefore maps to an actual human who is, at that moment, looking at your content through ChatGPT.

That makes ChatGPT-User the highest-signal AI crawler in your logs: it is one step before a potential referral visit. If ChatGPT summarizes your page well, the user may click through — arriving in your analytics with a chatgpt.com referrer. Sites tracking AI revenue treat ChatGPT-User hits as top-of-funnel demand.

Because each fetch is user-initiated, OpenAI says robots.txt rules may not apply to it — the same posture browsers take. Blocking it in robots.txt is unreliable; a firewall rule on the published IP ranges is the only enforceable block, and it also blocks the human intent behind the request.

ChatGPT-User User-Agent string

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot

How to verify ChatGPT-User hits are real

The User-Agent header is plain text — any client can claim to be ChatGPT-User, and scrapers routinely do. OpenAI publishes ChatGPT-User’s IP ranges as JSON; authentic hits fall inside them.

https://openai.com/chatgpt-user.json

Fetch the list and check the hit’s source IP against it — for a quick manual look:

curl -s https://openai.com/chatgpt-user.json

Allow or block ChatGPT-User in robots.txt

This is a user-triggered fetcher: each request is a live human asking about your page. Blocking it hides your content from users at the exact moment they want it.

Allow

User-agent: ChatGPT-User Allow: /

Block

User-agent: ChatGPT-User Disallow: / # Note: user-triggered fetches may bypass robots.txt — enforce at the firewall if you must block.

ChatGPT-User — frequently asked questions

What is ChatGPT-User?

ChatGPT-User is OpenAI’s on-demand fetcher. It retrieves a page when a ChatGPT user asks about it in a live conversation. It is not a training crawler and does not systematically spider sites — each request corresponds to one user action.

Does ChatGPT-User respect robots.txt?

Not reliably. OpenAI documents that robots.txt rules may not apply to ChatGPT-User because fetches are direct user requests, similar to a browser. To block it enforceably you must filter its published IP ranges at the network layer.

Why should I want ChatGPT-User hits?

Each hit is a live human reading your content through ChatGPT. It is the AI-search equivalent of an impression one click away from a visit. Sites that measure AI attribution see ChatGPT-User activity precede chatgpt.com referral sessions — and those sessions convert well; Attrifast’s 200-site benchmark measured AI referrals converting at 2.7% versus 1.4% for Google organic on B2B SaaS.

How do I verify ChatGPT-User hits?

Match the source IP against openai.com/chatgpt-user.json. Spoofing this UA is trivial, and scrapers do it to borrow OpenAI’s reputation, so IP verification is the only trustworthy check.

How is ChatGPT-User different from GPTBot and OAI-SearchBot?

GPTBot collects training data on its own schedule. OAI-SearchBot builds the index behind ChatGPT search. ChatGPT-User fetches a specific page because a specific user asked about it right now. Only ChatGPT-User represents live human attention.

See which AI crawlers hit your site — and what the traffic earns

Attrifast tracks AI referrals as revenue lines: ChatGPT, Perplexity, Claude, and Gemini visits tied to real Stripe money. $15/mo flat.

Start 7-day free trial — $0 due today

7-day free trial · $15/mo · cancel anytime