AI bot rules in robots.txt

Explicit rules for AI crawlers (GPTBot, ClaudeBot, Google-Extended and others) show that someone has decided who gets in.

Standard
Established

Who supports it

  • ChatGPTSupported (announced)

    Undated · last checked 9 Oct 2026: OpenAI: Overview of OpenAI CrawlersTokens: GPTBot (training), OAI-SearchBot (ChatGPT search). The user-triggered ChatGPT-User fetcher is the exception: 'robots.txt rules may not apply'.

  • ClaudeSupported (announced)

    Published 7 Apr 2026 · last checked 9 Oct 2026: Anthropic: Does Anthropic crawl data from the web, and how can site owners block the crawler?Tokens: ClaudeBot (training), Claude-SearchBot (search), Claude-User (user-initiated). Anthropic says all its bots honour robots.txt, including Claude-User.

  • GeminiSupported (announced)

    Published 14 Jul 2026 · last checked 9 Oct 2026: Google: Google's common crawlersToken: Google-Extended, a product token controlling whether crawled content is used for Gemini training and grounding (it is not a separate crawler). Google's user-triggered fetchers (Google-Agent, Google-GeminiNotebook) 'generally ignore robots.txt rules'.

  • PerplexitySupported (announced)

    Published 29 Jan 2026 · last checked 9 Oct 2026: Perplexity CrawlersToken: PerplexityBot (search index; honours robots.txt). Perplexity-User 'generally ignores robots.txt rules' because a user requested the fetch. The date comes from the page's dateModified metadata.

  • CopilotPartial support

    Published 22 Sept 2023 · last checked 9 Oct 2026: Bing Webmaster Blog: Announcing new options for webmasters to control usage of their content in Bing ChatThere is no Copilot- or AI-specific robots.txt token. Control works through bingbot and the NOCACHE/NOARCHIVE robots meta tag or X-Robots-Tag, so the AI-crawler groups this check looks for do not apply.

  • Meta AISupported (announced)

    Undated · last checked 9 Oct 2026: Meta: Meta Web CrawlersToken: meta-externalagent (AI training/products), with a robots.txt example; meta-webindexer is listed for Meta AI search. meta-externalfetcher (user-requested) 'may bypass robots.txt rules'.

  • CCBotSupported (announced)

    Published 25 Sept 2026 · last checked 9 Oct 2026: Common Crawl: CCBotToken: CCBot. The date is the HTTP Last-Modified header.

  • ApplebotSupported (announced)

    Published 4 Sept 2026 · last checked 9 Oct 2026: Apple: About ApplebotTokens: Applebot (search) and Applebot-Extended (controls use for generative AI training; it does not crawl).

  • AmazonbotSupported (announced)

    Undated · last checked 9 Oct 2026: Amazon: AmazonbotTokens: Amazonbot, Amzn-SearchBot, Amzn-User. Amazon says they 'respect the Robots Exclusion Protocol'.

  • CoherePartial support

    Undated · last checked 9 Oct 2026: Cohere: Cohere Web CrawlersCohere says it does not currently crawl for training and that its policy is for crawlers to respect robots.txt. Its blocking example uses the token 'Coherebot', not 'cohere-ai' (the token the extension checks).

  • MistralSupported (announced)

    Undated · last checked 9 Oct 2026: Mistral AI: RobotsToken: MistralAI-Training ('Webmasters can disallow this user agent in their robots.txt file'). MistralAI-Index and MistralAI-User (Vibe user requests) are also documented, but the page does not say whether they honour robots.txt.

  • DuckAssistSupported (announced)

    Published 2 Oct 2026 · last checked 9 Oct 2026: DuckDuckGo Help: DuckAssistBotToken: DuckAssistBot. A disallow takes effect within 72 hours. The date is the HTTP Last-Modified header.

15 others: no evidence yet. See every agent and browser

What it checks

The extension reads /robots.txt and looks for User-agent groups that name known AI crawlers. It then works out whether each named crawler can reach the site or is blocked from all of it.

The crawlers it recognises are GPTBot, OAI-SearchBot and ChatGPT-User (OpenAI); ClaudeBot, Claude-Web, Claude-User and anthropic-ai (Anthropic); Google-Extended; GoogleOther; PerplexityBot and Perplexity-User; CCBot (Common Crawl); Bytespider (ByteDance); Amazonbot; Applebot-Extended; Meta-ExternalAgent; and cohere-ai.

This is the heaviest check in the extension. It is the only one that measures what a site has actually decided about AI agents. Naming crawlers only to block all of them does not earn a pass: the posture is what counts, not the naming.

A group “blocks everything” only when it disallows / without an Allow: / to override it. An empty Disallow: line allows everything.

Results

Status When
Pass At least one AI crawler is named, and at least one of the named crawlers can reach the site
Warn AI crawlers are named, but every one of them is fully blocked
Warn No AI crawler is named and nothing blocks them (only a * group, or no groups at all)
Fail No AI crawler is named and the * group disallows the whole site
Fail There is no robots.txt, so no rules can be expressed

How to fix

Add a User-agent group for each AI crawler you have an opinion about, stating what it may and may not read. For example, to allow search and answer engines while opting out of model training:

User-agent: OAI-SearchBot
User-agent: PerplexityBot
Allow: /

User-agent: GPTBot
User-agent: Google-Extended
User-agent: CCBot
Disallow: /

User-agent: *
Allow: /

If the whole site is blocked by User-agent: * / Disallow: /, check whether that is intended. It is often a staging robots.txt that shipped by mistake.

If you block every named AI crawler on purpose, the warning is expected. It is there to confirm the choice was deliberate.

Related: robots.txt agent-user policy covers the agents that fetch a page because a person asked, and Content Signals lets you say how content may be used rather than only whether it may be fetched.

Support by agent and browser

Announced means the vendor’s own docs or announcement say so. Published is the date on the vendor’s own page, where it has one. Checked is the last time our weekly research found that page still saying so.

AgentStatusSource
AI assistants
ChatGPT OpenAISupported (announced)

OpenAI: Overview of OpenAI Crawlers Undated · Checked Tokens: GPTBot (training), OAI-SearchBot (ChatGPT search). The user-triggered ChatGPT-User fetcher is the exception: 'robots.txt rules may not apply'.

Claude AnthropicSupported (announced)

Anthropic: Does Anthropic crawl data from the web, and how can site owners block the crawler? Published · Checked Tokens: ClaudeBot (training), Claude-SearchBot (search), Claude-User (user-initiated). Anthropic says all its bots honour robots.txt, including Claude-User.

Gemini GoogleSupported (announced)

Google: Google's common crawlers Published · Checked Token: Google-Extended, a product token controlling whether crawled content is used for Gemini training and grounding (it is not a separate crawler). Google's user-triggered fetchers (Google-Agent, Google-GeminiNotebook) 'generally ignore robots.txt rules'.

Perplexity PerplexitySupported (announced)

Perplexity Crawlers Published · Checked Token: PerplexityBot (search index; honours robots.txt). Perplexity-User 'generally ignores robots.txt rules' because a user requested the fetch. The date comes from the page's dateModified metadata.

Copilot MicrosoftPartial support

partial Bing Webmaster Blog: Announcing new options for webmasters to control usage of their content in Bing Chat Published · Checked There is no Copilot- or AI-specific robots.txt token. Control works through bingbot and the NOCACHE/NOARCHIVE robots meta tag or X-Robots-Tag, so the AI-crawler groups this check looks for do not apply.

Meta AI MetaSupported (announced)

Meta: Meta Web Crawlers Undated · Checked Token: meta-externalagent (AI training/products), with a robots.txt example; meta-webindexer is listed for Meta AI search. meta-externalfetcher (user-requested) 'may bypass robots.txt rules'.

AI crawlers
CCBot Common CrawlSupported (announced)

Common Crawl: CCBot Published · Checked Token: CCBot. The date is the HTTP Last-Modified header.

Applebot AppleSupported (announced)

Apple: About Applebot Published · Checked Tokens: Applebot (search) and Applebot-Extended (controls use for generative AI training; it does not crawl).

Amazonbot AmazonSupported (announced)

Amazon: Amazonbot Undated · Checked Tokens: Amazonbot, Amzn-SearchBot, Amzn-User. Amazon says they 'respect the Robots Exclusion Protocol'.

Cohere CoherePartial support

partial Cohere: Cohere Web Crawlers Undated · Checked Cohere says it does not currently crawl for training and that its policy is for crawlers to respect robots.txt. Its blocking example uses the token 'Coherebot', not 'cohere-ai' (the token the extension checks).

Mistral Mistral AISupported (announced)

Mistral AI: Robots Undated · Checked Token: MistralAI-Training ('Webmasters can disallow this user agent in their robots.txt file'). MistralAI-Index and MistralAI-User (Vibe user requests) are also documented, but the page does not say whether they honour robots.txt.

DuckAssist DuckDuckGoSupported (announced)

DuckDuckGo Help: DuckAssistBot Published · Checked Token: DuckAssistBot. A disallow takes effect within 72 hours. The date is the HTTP Last-Modified header.

No evidence yet15
  • ChatGPT Atlas
  • Comet
  • Dia
  • Gemini in Chrome
  • Edge Copilot Mode
  • Claude Code
  • Cursor
  • Codex
  • GitHub Copilot
  • Windsurf
  • Bytespider
  • Chrome
  • Edge
  • Firefox
  • Safari

Adoption on the top 100 sites

77 of 100 measured sites implement it

Scanned 23 Oct 2026 with the Sitebulb Labs extension, against the Tranco list (tranco-56Z8N).

9 Oct 2026: 77%12 Oct 2026: 76%23 Oct 2026: 77%
9 Oct 2026 77% → 23 Oct 2026 77%
Sites implementing it77
  1. #1 google.com (with warnings)
  2. #2 cloudflare.com
  3. #3 aws.amazon.com (via amazonaws.com) (with warnings)
  4. #4 facebook.com (with warnings)
  5. #9 microsoft.com (with warnings)
  6. #11 youtube.com (with warnings)
  7. #12 apple.com (with warnings)
  8. #13 instagram.com (with warnings)
  9. #16 x.com (via twitter.com)
  10. #18 linkedin.com
  11. #20 dzen.ru (with warnings)
  12. #24 azure.microsoft.com (via azure.com) (with warnings)
  13. #27 outlook.live.com (via live.com) (with warnings)
  14. #29 amazon.com (with warnings)
  15. #32 github.com
  16. #37 fastly.com (via fastly.net) (with warnings)
  17. #39 whatsapp.com (via whatsapp.net) (with warnings)
  18. #42 bing.com (with warnings)
  19. #43 netflix.com
  20. #44 triplinkintl.com (with warnings)
  21. #48 gandi.net (with warnings)
  22. #53 icloud.com (with warnings)
  23. #55 wordpress.org
  24. #56 teams.live.com (via skype.com) (with warnings)
  25. #57 cloudflare.net (with warnings)
  26. #60 digicert.com
  27. #61 adobe.com (with warnings)
  28. #63 tiktok.com (with warnings)
  29. #67 domains.google (via googledomains.com) (with warnings)
  30. #68 zoom.com (via zoom.us) (with warnings)
  31. #69 uk.yahoo.com (via yahoo.com) (with warnings)
  32. #71 endpoints.news
  33. #75 roblox.com (with warnings)
  34. #76 opera.com (with warnings)
  35. #77 open.spotify.com (via spotify.com)
  36. #83 ya.ru (via yandex.net) (with warnings)
  37. #84 nginx.org (with warnings)
  38. #85 ntp.org (with warnings)
  39. #86 msn.com (with warnings)
  40. #87 qq.com (with warnings)
  41. #90 vimeo.com (with warnings)
  42. #91 primevideo.com (via amazonvideo.com) (with warnings)
  43. #93 bunny.net (via b-cdn.net) (with warnings)
  44. #94 blogger.com (via blogspot.com) (with warnings)
  45. #95 mozilla.org (with warnings)
  46. #96 f5.com (with warnings)
  47. #99 store.epicgames.com (via epicgames.com) (with warnings)
  48. #101 wordpress.com (with warnings)
  49. #106 sentry.io (with warnings)
  50. #107 letsencrypt.org (via lencr.org) (with warnings)
  51. #109 ui.com
  52. #110 european-union.europa.eu (via europa.eu) (with warnings)
  53. #112 chatgpt.com (with warnings)
  54. #116 bitly.com (via bit.ly)
  55. #117 ipify.org (with warnings)
  56. #119 nic.ru (with warnings)
  57. #120 samsung.com
  58. #122 intuit.com (with warnings)
  59. #127 openai.com (with warnings)
  60. #128 one.one.one.one (via cloudflare-dns.com) (with warnings)
  61. #131 pages.github.com (via github.io) (with warnings)
  62. #132 dropbox.com (with warnings)
  63. #135 discord.com (via discord.gg) (with warnings)
  64. #136 developer.adobe.com (via adobe.io) (with warnings)
  65. #139 apache.org (with warnings)
  66. #140 android.com
  67. #141 nih.gov (with warnings)
  68. #144 vk.ru (with warnings)
  69. #147 reg.ru (with warnings)
  70. #150 t-online.de
  71. #151 archive.org (with warnings)
  72. #153 webex.com (with warnings)
  73. #154 snapchat.com
  74. #158 kaspersky.co.uk (via kaspersky.com)
  75. #159 firebase.google.com (via crashlytics.com) (with warnings)
  76. #160 tumblr.com (with warnings)
  77. #161 nytimes.com

Overview

9/9

Established

Widely supported and widely deployed.

How this rating is worked out9 of 9 points
FactorPointsWhy
Vendor support3 / 310 vendors supporting, 2 partly or planned
Top-100 adoption3 / 377% of measured sites
Spec maturity3 / 3Published standard

8 or more points is Established, 5 to 7 is Gaining traction, 2 to 4 is Speculative and under 2 is Stalled. A feature is also Stalled when more vendors have said no than yes. Read the spec.

Community insights

  • Sceptical

    We see continued evidence that Perplexity is repeatedly modifying their user agent and changing their source ASNs to hide their crawling activity, as well as ignoring — or sometimes failing to even fetch — robots.txt files.

    Gabriel CorralCloudflareOn their blog, 4 Aug 2025Website
  • Mixed

    I just got an email from Amazon saying they’re finally going to respect robots.txt.

    Xe IasoCreator of Anubis, TecharoOn their blog, 14 May 2026Website
  • In favour

    After updating robots.txt, the number of requests from ClaudeBot decreased to around 20-50 per hour.

    Ryo SuzukiClassmethodOn their blog, 24 Feb 2025Website
  • Sceptical

    If you think these crawlers respect robots.txt then you are several assumptions of good faith removed from reality.

    Drew DeVaultFounder, SourceHutOn their blog, 17 Mar 2025Website

Quotes are from public posts, checked against the original before they appear here. Suggest an insight, or ask for yours to be removed.