ChatGPT-User: when a person asks ChatGPT to open your page

Not a crawler at all. ChatGPT-User shows up when a real user, a custom GPT, or an action needs a specific page right now.

By Abd Shanti Updated September 16, 2026 4 min read

Quick answer: ChatGPT-User is the agent that fetches a specific web page when a ChatGPT user, a custom GPT, or a GPT action asks for it. It does not crawl automatically and it is not used for training. Because the request is made on behalf of a person, OpenAI notes that robots.txt rules may not apply to it.

Operator
OpenAI
Type
User-triggered fetcher
robots.txt token
ChatGPT-User
Follows robots.txt
Not guaranteed, fetches are user-initiated
Used for
Opening a page when a ChatGPT user, a custom GPT, or an action asks for it
User agent
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot
How to verify
Compare the source IP with the ranges OpenAI publishes at openai.com/chatgpt-user.json

What is ChatGPT-User?

Think of ChatGPT-User as a browser that ChatGPT drives for someone. A user pastes your URL and asks for a summary, or ChatGPT decides during a conversation that it needs to open one of the search results it found. That single request is ChatGPT-User.

In server logs it is often the most frequent OpenAI agent on content sites, because every conversation that opens a page produces a hit. Those hits are a useful signal: they mean real people were asking ChatGPT about something your page covers.

What happens if you block ChatGPT-User?

Adding a Disallow for ChatGPT-User signals that you do not want these fetches, but OpenAI describes them as user actions to which robots.txt may not apply, so it is not a dependable block. If you truly need to stop them, a firewall rule matched on the user agent and OpenAI's published IP ranges is the reliable method. Blocking it means ChatGPT fails when users ask it to read your pages.

Should you allow ChatGPT-User?

Allow it. These requests come from people who are actively interested in your page, and a failed fetch usually means ChatGPT answers from somewhere else. The only good reason to block is content that must never be summarised, and that content should sit behind authentication anyway.

Check whether ChatGPT-User can reach your site

Enter your domain or a specific page. The checker reads your live robots.txt, picks the group ChatGPT-User would use, and applies the longest matching rule, the same way major crawlers resolve conflicts.

Live ChatGPT-User access check

robots.txt rules for ChatGPT-User

Put each group in the robots.txt file at the root of your domain. User agent names are matched without regard to case, and the most specific matching group wins.

Allow ChatGPT-User everywhere
User-agent: ChatGPT-User
Allow: /
Block ChatGPT-User everywhere
User-agent: ChatGPT-User
Disallow: /
Allow ChatGPT-User, but keep private folders out
User-agent: ChatGPT-User
Disallow: /account/
Disallow: /checkout/
Allow: /

The rule most people get wrong: once ChatGPT-User has its own group, it ignores everything under User-agent: *. If your wildcard group disallows paths such as /admin/, repeat those lines inside the ChatGPT-User group too.

Because ChatGPT-User acts on behalf of a user, a robots.txt rule states your preference but does not enforce it. To enforce a block, add a firewall rule. On Cloudflare, a custom WAF rule with this expression and the Block action does it:

Cloudflare WAF expression
(http.user_agent contains "ChatGPT-User")

Common OpenAI setup: appear in ChatGPT search, opt out of training

Appear in ChatGPT search, opt out of training
User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: GPTBot
Disallow: /

How to verify real ChatGPT-User traffic

OpenAI publishes the IP ranges used for ChatGPT-User at openai.com/chatgpt-user.json. Because this agent follows real user activity, traffic arrives in bursts tied to conversations rather than on a crawl schedule, so an irregular pattern is normal.

To see how often it visits, count requests by user agent in your access log. On a typical Nginx server:

Count ChatGPT-User requests per day
grep -i "ChatGPT-User" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c

ChatGPT-User compared with other OpenAI agents

AgentOperatorTypeFollows robots.txt
GPTBotOpenAITraining crawlerYes
OAI-SearchBotOpenAISearch crawlerYes
ChatGPT-UserOpenAIUser-triggered fetcherNot guaranteed, fetches are user-initiated
OAI-AdsBotOpenAIAd landing page checkerNo, per OpenAI's documentation

See all 20 agents side by side in the AI crawler directory.

ChatGPT-User FAQ

No. It does not follow links or crawl on a schedule. It fetches one page at a time when a user or a GPT asks ChatGPT to open it.
Not reliably. OpenAI says that because these requests are initiated by users, robots.txt rules may not apply. Use firewall rules if you need a hard block.
Every time a conversation opens one of your pages, ChatGPT-User makes a request. On sites that answer common questions, that adds up faster than periodic crawling.
It does not change the OAI-SearchBot index, but ChatGPT cannot read your page live when a user asks, so it will lean on other sources in that conversation.
Abd Shanti

Abd Shanti

Co-founder and strategy lead at Outline Technologies, the team behind FreeGPTSEO and AI Citation Monitor. Abd works on how brands get found and cited by search engines and AI assistants.

See every AI crawler signal at once

The free AI SEO audit checks robots.txt access for 12 AI crawlers, plus llms.txt, schema, content and metadata, in a few seconds.

Run the free AI SEO audit
Last updated: September 16, 2026. Facts checked against OpenAI's crawler documentation.