chatgpt.com: what it tells AI crawlers
On 27 October 2026, chatgpt.com's robots.txt fully blocked Google-Extended, PerplexityBot and CCBot.
Last verified 2026-10-28 03:59 UTC (daily run of 2026-10-27). Proof for that day.
- Panel
- top 1k (Tranco)
- robots.txt
- ok (HTTP 200) · https://chatgpt.com/robots.txt
unchanged since 2026-10-26 · sha2560676a43da83b5eb1…· view as recorded - The * group
- partial applies to every agent without its own group
Per AI bot, 2026-10-27
| User agent | Verdict | How |
|---|---|---|
| GPTBot | partial | through the * group |
| OAI-SearchBot | partial | through the * group |
| ChatGPT-User | partial | through the * group |
| ClaudeBot | partial | through the * group |
| Claude-SearchBot | partial | through the * group |
| Claude-User | partial | through the * group |
| PerplexityBot | blocks | named in its own group |
| Perplexity-User | partial | through the * group |
| Googlebot | partial | through the * group |
| Google-Extended | blocks | named in its own group |
| Applebot-Extended | partial | through the * group |
| CCBot | blocks | named in its own group |
| Bytespider | blocks | named in its own group |
| Meta-ExternalAgent | partial | through the * group |
| Amazonbot | partial | through the * group |
| anthropic-ai | blocks | named in its own group |
| Claude-Web | blocks | named in its own group |
| FacebookBot | blocks | named in its own group |
| omgili | blocks | named in its own group |
| omgilibot | blocks | named in its own group |
Other signals
| Publishes /llms.txt | not observed |
| Publishes /ai.txt | not observed |
| Publishes /.well-known/tdmrep.json | not observed |
| Reserves TDM rights (TDMRep file, header or meta) | not observed |
| Declares Content Signals (robots.txt or header) | not observed |
| Says ai-train=no in a Content Signal | not observed |
| Points to an RSL licence (robots.txt License line or Link header) | not observed |
| Answers with an x402 payment offer (lower bound: only the homepage is probed) | not observed |
| Answers HTTP 402 Payment Required (lower bound: only the homepage is probed) | not observed |
| Sends noai / noimageai directives | not observed |
| Refused our fetcher (403 / challenge) | no |
robots.txt as recorded sha256 d4958940ee72d991…
# https://www.robotstxt.org/robotstxt.html User-agent: CCBot Disallow: / User-agent: img2dataset Disallow: / User-agent: Google-Extended Disallow: / User-agent: anthropic-ai Disallow: / User-agent: Claude-Web Disallow: / User-agent: Omgilibot Disallow: / User-agent: Omgili Disallow: / User-agent: FacebookBot Disallow: / User-agent: Bytespider Disallow: / User-agent: magpie-crawler Disallow: / User-agent: PerplexityBot Disallow: / User-agent: Perplexity‑User Disallow: / # General rules for all other bots User-agent: * # Place allows first to avoid bots skipping after Disallow: / # Allow exactly the homepage Allow: /$ # Allow the homepage with any query parameters Allow: /?* Allow: /api/share/og/* Allow: /g/* Allow: /s/* Allow: /share/* Allow: /canvas/shared/* Allow: /images/* Allow: /auth/* Allow: /gpts$ Allow: /codex$ Allow: /search$ Allow: /backend-anon/* Allow: /public-api/* Allow: /sitemap.xml Allow: /100chats Allow: /api/public_content/* Allow: /backend-api/public_content/* Allow: /?ref=dotcom # Static Landing Pages Allow: /overview Allow: /*/overview Allow: /features* Allow: /*/features* Allow: /use-cases* Allow: /*/use-cases* Allow: /learn* Allow: /*/learn* Allow: /business* Allow: /*/business* Allow: /pricing Allow: /*/pricing Allow: /download Allow: /*/download Allow: /students Allow: /contact-sales # Now block everything else Disallow: / # Specific disallows (redundant for some bots, but still useful for those that respect precedence) Disallow: /auth/logout Disallow: /auth/login?* Disallow: /backend-anon/sentinel/* Disallow: /backend-anon/conversation$ Disallow: /account-link/* Sitemap: https://chatgpt.com/sitemap.xml
robots.txt versions
| From | Through | State | Version | |
|---|---|---|---|---|
| 2026-10-26 | 2026-10-28 | ok 200 | 0676a43da83b |
Timeline of changes
| Date | What changed |
|---|---|
| No changes since the first observation (2026-10-26). | |
Reconstructed history (Common Crawl)
From Common Crawl's robots.txt captures: what CCBot was served, one crawl per quarter. A separate series from the daily observations above; a 403 here means Common Crawl was refused, not this ledger.
| Crawl | Host | State | GPTBot | OAI-SearchBot | ChatGPT-User | ClaudeBot | Claude-SearchBot | Claude-User | PerplexityBot |
|---|---|---|---|---|---|---|---|---|---|
| 2026-09-21 CC-MAIN-2026-39 | chatgpt.com | ok view | partial | partial | unknown | partial | partial | unknown | blocks |
| 2025-09-15 CC-MAIN-2025-38 | chatgpt.com | ok view | partial | partial | unknown | partial | partial | unknown | blocks |
| 2024-09-16 CC-MAIN-2024-38 | chatgpt.com | ok view | partial | partial | unknown | partial | partial | unknown | partial |
Evidence
Every daily observation of chatgpt.com is a leaf in that day's Merkle tree. Proof of the robots.txt line for 2026-10-27: audit path (JSON), day root and OpenTimestamps proof (complete (bitcoin block 973493)).
API: https://infrarabbit.com/crawlers/api/v1/policy/chatgpt.com