CrawlCheck
Crawler comparisons

ClaudeBot vs Claude-User

What each one is, who runs it, and how a request claiming its name can be checked.

ClaudeBotClaude-User
OperatorAnthropicAnthropic
What it istraining crawleruser-triggered fetch
What it doesAnthropic trainingClaude live fetch
How a request can be verifiedIts operator publishes the IP ranges it crawls from (https://claude.com/crawling/bots.json), so a request carrying the name can be checked against that list.Its operator publishes the IP ranges it crawls from (https://claude.com/crawling/bots.json), so a request carrying the name can be checked against that list.
robots.txt closes the homepage (of sites with a robots.txt)591 (13.1%)not measured
Refused at the door (of sites that answered a browser)1,124 (20.2%)not requested as this identity

Top 10,000 sites, census of 2026-10-24. “Refused at the door” is a non-2xx answer to a client declaring that name, from CrawlCheck’s own addresses, where the browser got 2xx. Every crawler on the radar.

Let ClaudeBot in and keep Claude-User out

User-agent: ClaudeBot
Allow: /

User-agent: Claude-User
Disallow: /

A crawler obeys only the most specific group that names it and ignores * entirely. If your User-agent: * group has Disallow rules, repeat them under ClaudeBot, or naming it drops them. Swap the two names to do the reverse.

Check what your own site tells both: scan it free. Catalogue data CC BY 4.0 at /ai-crawlers.json.