ChatGPT-User: What robots.txt Can and Cannot Control

ChatGPT-User is used for certain user-initiated actions in ChatGPT and Custom GPTs. It is not OpenAI’s automatic search crawler or training crawler, and OpenAI states that robots.txt rules may not apply to these user-triggered requests.

Independent technical reference Updated Editorial approach Report a correction
User-initiated AI web request reaching a website protected by server-side access control

Primary reference

Official crawler documentation

Use the provider's current documentation to confirm the crawler token and purpose before changing a production robots.txt file.

Open OpenAI crawlers documentation Reference checked July 6, 2026

First-party crawler telemetry

Observed on Robots.txt Lab

Aggregate requests that claimed this crawler identity while visiting this site during the last 90 days.

Last claimed request Oct 20, 2026
6,980 claimed requests
58 distinct paths
Most requested paths
  • /1,729
  • /guides/robots-txt-sitemap840
  • /checker801
  • /ai-crawlers/oai-searchbot535

Verification note: User-Agent strings can be spoofed. These are aggregate requests that claimed the crawler name, not proof that every request came from the provider's verified infrastructure.

Copy-paste robots.txt example

User-agent: ChatGPT-User
Disallow: /private/

ChatGPT-User is not the same thing as GPTBot or OAI-SearchBot. It can appear when a ChatGPT user asks the product to visit or retrieve a web page. Because the request originates from a user action, OpenAI says robots.txt rules may not apply.

What ChatGPT-User is for

ChatGPT-User supports certain user actions in ChatGPT and Custom GPTs. It is not used for automatic crawling of the web, and OpenAI says it is not the control used to decide whether a site can appear in ChatGPT Search.

That distinction matters because three different goals require three different controls:

  • For training crawling, review GPTBot.
  • For ChatGPT Search visibility, review OAI-SearchBot.
  • For user-triggered retrieval, the relevant user agent is ChatGPT-User, but robots.txt should not be treated as a hard security boundary.

Should you add a ChatGPT-User group?

You can publish a group that expresses your preference, but do not assume it guarantees that every user-triggered request will be blocked. If a resource must not be fetched by unauthenticated clients, protect it with authentication, authorization, server rules, or a WAF rather than robots.txt.

User-agent: ChatGPT-User
Disallow: /private/

This example documents a crawl preference for a path. It is not a replacement for protecting private content.

If you need to prevent access to private material

Do not use a ChatGPT-User robots.txt group as an access-control mechanism. OpenAI states that user-initiated requests may not follow robots.txt restrictions. For private endpoints, require authentication and enforce authorization at the server or application layer. If rate limiting or bot challenges are needed, configure them separately and verify that ordinary legitimate users are not blocked.

If your real goal is reducing automated training crawling, test GPTBot rules instead. If your concern is ChatGPT search discovery, test OAI-SearchBot instead. You can inspect the hypothetical policy with the draft Checker, but that simulator cannot prove how a user-triggered retrieval will behave in the product.

OpenAI’s crawler documentation is the source for the distinction between automated crawlers and ChatGPT-User.

Do not block the wrong OpenAI agent

A common configuration mistake is to block ChatGPT-User when the real goal is to opt out of training, or to block GPTBot when the real goal is to control ChatGPT Search. Keep the groups separate so each rule maps to the outcome you actually want.

Use the robots.txt Checker to validate syntax and path matching. If your goal is a clean OpenAI policy with training and search handled independently, see the OpenAI robots.txt controls template.

FAQ

Is ChatGPT-User used to crawl the web automatically?

No. OpenAI describes ChatGPT-User as a user-agent for certain actions initiated by ChatGPT users, Custom GPTs, or external actions rather than an automatic web crawler.

Will robots.txt always block ChatGPT-User?

No guarantee is stated. OpenAI notes that robots.txt rules may not apply because the requests are initiated by a user. Use server-side access control for anything private.

Does blocking ChatGPT-User remove a site from ChatGPT search?

No. OAI-SearchBot is the robots.txt control for ChatGPT search crawling and search opt-outs.

Does ChatGPT-User control AI training permission?

No. GPTBot is the separate OpenAI crawler used for content that may contribute to foundation-model training.

Can I trust the ChatGPT-User string as proof that a request is from OpenAI?

Not by itself. User-agent strings can be spoofed. Compare the source with OpenAI’s current published IP ranges when authenticity matters.

Continue with the tools

Build a policy from the guidance above, then test the complete file that is actually published.

Related pages