Skip to content

Configure robots.txt for AI crawlers

Short answer

Treat search crawlers and training crawlers as separate decisions. Blocking a search crawler such as OAI-SearchBot removes you from that product's answers; blocking a training token such as GPTBot or Google-Extended does not affect search inclusion.

  • You can edit and deploy /robots.txt for every host you care about.
  • You know whether your CDN or WAF also blocks bots. Google notes that crawling must be allowed “by any CDN or hosting infrastructure”, not just robots.txt.
PurposeTokenIf disallowed
Google Search, including AI Overviews & AI ModeGooglebotPage is not crawled for Search at all.
Gemini training and grounding; training of the models behind Search’s AI featuresGoogle-ExtendedNo effect on Search inclusion or AI Overviews display.
ChatGPT search resultsOAI-SearchBotNot shown in ChatGPT search answers (may still appear as navigational links).
OpenAI model trainingGPTBotContent indicated as not for training.
User-initiated fetches in ChatGPTChatGPT-Userrobots.txt “may not apply”; not used for search inclusion.
Claude search resultsClaude-SearchBotContent not indexed for Claude’s search; “may reduce your site’s visibility”.
Claude user requestsClaude-UserClaude cannot fetch your pages when users ask about them.
Anthropic model trainingClaudeBotFuture content excluded from training datasets.
Perplexity search resultsPerplexityBotNot surfaced in Perplexity search results.
User-initiated fetches in PerplexityPerplexity-User“Generally ignores robots.txt rules”, since a user asked.

Example: appear in Google, ChatGPT, Claude and Perplexity search; opt out of model training.

user-agent: Googlebot
allow: /
user-agent: OAI-SearchBot
allow: /
user-agent: GPTBot
disallow: /
user-agent: Google-Extended
disallow: /
user-agent: Claude-SearchBot
allow: /
user-agent: ClaudeBot
disallow: /
user-agent: PerplexityBot
allow: /
user-agent: *
allow: /

A crawler follows only the most specific group matching its name, so rules under * do not add to a named group.

  1. Fetch the live file: curl -sA "OAI-SearchBot" https://example.com/robots.txt.
  2. In Google Search Console, open the robots.txt report to confirm Google fetched the new version.
  3. Check server or CDN logs for requests from each bot, and confirm the source IPs against the vendor’s published ranges (OpenAI publishes them as JSON for each bot).

Restore the previous file. Google usually refreshes its cached copy within 24 hours.

  • Blocking OAI-SearchBot while meaning to block training.
  • Assuming Google-Extended removes content from AI Overviews. It does not; use the Search generative AI control or snippet controls.
  • Allowing bots in robots.txt while a WAF rule still returns 403.

Sources

  1. Overview of OpenAI crawlersOpenAI · official · ✓ 2026-10-25
  2. Does Anthropic crawl data from the web, and how can site owners block the crawler?Anthropic · official · ✓ 2026-10-25
  3. Perplexity crawlersPerplexity · official · ✓ 2026-10-25
  4. Google's common crawlersGoogle · official · ✓ 2026-10-24
  5. AI features and your websiteGoogle Search Central · official · ✓ 2026-10-24
  6. How Google interprets the robots.txt specificationGoogle · official · ✓ 2026-10-25
  7. 你的公司还在 AI 的答案里吗:企业 GEO 行动指南 · 2026DATA17 AI Research Lab · 解数智能 · unpublished · 33 pp. · unpublished report, not publicly available; readers can't check it · ✓ 2026-10-26