AI agents · Training crawler

ClaudeBot

ClaudeBot is Anthropic's training crawler: it collects content to train AI models.

Operator
Anthropic
User agent
ClaudeBot
Verified by
Published IP ranges

What ClaudeBot does

A training crawler collects pages to train its operator's AI models. Its visits answer no one's question in the moment: what it reads goes into the data the models learn from.

How to recognize it

ClaudeBot names itself in its user agent with the token ClaudeBot. That's what Ethogram matches, as a whole word in any case.

A user agent is only a claim, though: anyone can send ClaudeBot. Scrapers borrow well-known names to get past rules meant for the real agent, so before you trust a visit, or block one, check where it came from.

How to tell it's really ClaudeBot

Anthropic publishes the IP ranges ClaudeBot uses, as JSON: claude.com/crawling/bots.json. A request from inside those ranges is the real ClaudeBot. One from outside them is an impostor.

Ethogram runs these checks on every request and gives each visit a verdict: verified, unverified or spoofed. Spoofed visits are counted apart and never added to ClaudeBot's numbers. How verdicts work.

Allow or block ClaudeBot in robots.txt

robots.txt groups its rules by user-agent token. To ask ClaudeBot to stay off your whole site, add this group:

robots.txt
# Keep ClaudeBot out of the whole siteUser-agent: ClaudeBotDisallow: /

To let it read everything, name it with an allow rule. A group that names ClaudeBot replaces the User-agent: * group for it, so it follows only these rules:

robots.txt
# Let ClaudeBot read the whole siteUser-agent: ClaudeBotAllow: /

robots.txt is a request, not a lock: it's up to ClaudeBot to read it and follow it. Ethogram reads your robots.txt every day and shows whether ClaudeBot respects it, with the disallowed paths it asked for. To actually keep it out, use your firewall or bot protection, and check the visit's verdict first so you block impostors, not the real ClaudeBot.

See what ClaudeBot does on your site

Most analytics filter ClaudeBot out as a bot. Ethogram records it on your server, where every request lands, with no script to load, and shows:

  • Every visit from ClaudeBot, with a verdict on whether it's really ClaudeBot.
  • Each visit step by step: the pages it read, what it searched for, and where it was blocked, looped or hit an error.
  • Whether it respects your robots.txt, with the disallowed paths it asked for.
  • How much of your bandwidth it takes, next to its share of requests.
  • Impostors that use its name, caught and counted apart from the real ClaudeBot.
  • New versions of its user agent as they appear, and what changed in its behavior with each.
  • A heads-up when its visits spike or stop, or when it starts getting blocked.
A ClaudeBot visit in EthogramSample data
  1. +0sRead robots.txt /robots.txt200
  2. +1sRead sitemap.xml /sitemap.xml200
  3. +2sViewed page /collections/hiking200
  4. +4sViewed page /products/daypack-28l200
  5. +6sViewed page /collections/sale200
  6. +7sViewed page /products/trail-jacket200

4 more steps. Browsed and left. Nothing went wrong.

Open in the demo