Distinguish genuine AI crawler traffic (GPTBot, ClaudeBot, PerplexityBot, etc.) from spoofed user agents, and apply differentiated robots.txt directives

domain: platform.openai.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Enumerate the specific bots to control separately: e.g. GPTBot and OAI-SearchBot from OpenAI, ClaudeBot/Claude-User/Claude-SearchBot from Anthropic, PerplexityBot/Perplexity-User, Google-Extended, and CCBot, since each has a distinct purpose (training vs. retrieval/search vs. user-triggered fetch)
  2. Check each vendor's published documentation for verification guidance (e.g. published IP ranges or reverse-DNS verification patterns), analogous to how Googlebot is verified, rather than trusting the User-Agent string alone
  3. For claimed bot hits, perform a reverse DNS lookup on the source IP and forward-confirm it resolves back to the expected hostname/IP range before trusting the identity
  4. Write distinct robots.txt groups per bot (or bot family) so you can allow retrieval/search bots on public content while disallowing training-only bots, rather than one blanket AI rule
  5. For crawlers documented as sometimes ignoring robots.txt, add server-level (WAF/CDN) blocking as a backstop rather than relying on robots.txt alone
  6. Re-audit the bot list periodically, since AI vendors have split or renamed user agents before (e.g. separating a search/retrieval bot from a training bot under the same company)

Known gotchas

Related routes

Distinguish between robots.txt Disallow and HTML noindex directives, and configure robots.txt user-agent entries to control AI training crawlers separately from search crawlers
developers.google.com · 6 steps · unrated
Configure robots.txt directives that allow AI shopping and search-agent crawlers (e.g. OAI-SearchBot, PerplexityBot, Amazonbot) onto product pages while blocking pure AI-training crawlers from the same paths
platform.openai.com · 6 steps · unrated
Verify special-case crawlers (AdsBot) and user-triggered fetchers (Site Verifier) using Google's separate special-crawlers.json and user-triggered-fetchers.json IP-range files
developers.google.com · 5 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans