← Blog

What Is Claude Bot? Anthropic's Web Crawler Explained

2026-09-11 · 5 min read · SubToAPI Team

"Claude bot" usually means one of two different things, and mixing them up leads to confusion fast. Most people searching this term are asking about ClaudeBot, the automated web crawler operated by Anthropic that indexes public web pages to help train and improve Claude models. A smaller group means something else entirely: a chatbot or automated assistant they've built using Claude's API.

This article covers both, starting with the crawler, since that's what "Claude bot" refers to in almost every technical context — server logs, robots.txt files, and site analytics.

What ClaudeBot Actually Is

ClaudeBot is a web crawler built by Anthropic. It visits publicly accessible web pages, follows links, and fetches content the same way search engine crawlers like Googlebot do. The data it collects is used to train and refine Claude's language models.

It's not a hacking tool, not a scraper for a specific company's competitive research, and not something that logs into your site or bypasses authentication. It behaves like a standard, well-documented crawler:

If you run a website and see requests from ClaudeBot in your access logs, that's Anthropic's crawler doing exactly what it's supposed to do: reading your public pages.

How ClaudeBot Works

The crawler operates similarly to other AI training crawlers (OpenAI's GPTBot, Google's crawler used for Bard/Gemini training, etc.):

  1. It requests a page over HTTP/HTTPS
  2. It parses the HTML content
  3. It follows internal links to discover more pages
  4. It respects crawl-delay and disallow rules set in robots.txt

You can spot it in your server logs by its user agent string, which typically looks something like:

ClaudeBot/1.0 (+https://www.anthropic.com/bot)

The exact string can change over time, so if you're filtering logs or writing firewall rules, match on ClaudeBot as a substring rather than pinning to a full literal string.

How to Check If ClaudeBot Is Visiting Your Site

Grep your access logs for the user agent:

grep "ClaudeBot" /var/log/nginx/access.log

Or, if you're on a platform without direct log access, check your analytics or CDN dashboard (Cloudflare, Fastly, etc.) for bot traffic reports — most surface crawler names directly.

Blocking or Allowing ClaudeBot

If you want to allow or disallow ClaudeBot from crawling your site, you control it the same way you control any other well-behaved crawler: through robots.txt.

To block it entirely:

User-agent: ClaudeBot
Disallow: /

To allow it everywhere except specific paths:

User-agent: ClaudeBot
Disallow: /admin/
Disallow: /private/
Allow: /

Because ClaudeBot respects standard robots.txt syntax, there's no special configuration needed beyond what you'd already use for any compliant crawler. Some site owners choose to block all AI training crawlers as a matter of policy; others allow them, reasoning that visibility in AI-generated answers has similar upside to search engine visibility. There's no universally correct choice — it depends on your content licensing stance and business goals.

The Other Meaning: Building a Bot With Claude

If you searched "what is Claude bot" hoping to learn about building an automated assistant powered by Claude, the terminology you actually want is different. What you're describing is:

These are built by developers calling Claude programmatically — sending a prompt, getting a response, and wiring that into whatever chat interface or automation the bot lives in. This is unrelated to ClaudeBot the crawler; it's just an application built on top of Claude's capabilities.

Building Your Own Claude-Powered Bot

If that's the direction you're headed, the basic pattern is straightforward: your bot code sends messages to Claude and streams or returns the response to wherever your users are (Slack, a web widget, an internal dashboard).

The friction most teams hit isn't Claude itself — it's turning a personal or team Claude subscription into something they can actually call from code, with per-application keys, usage visibility, and normal HTTPS request/response semantics. That's the gap SubToAPI fills: it takes your existing Claude access and exposes it as a standard API with sub_live_... keys, so your bot's code just makes a request like this:

curl https://api.subtoapi.app/v1/messages \
  -H "Authorization: Bearer $SUBTOAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4",
    "max_tokens": 500,
    "messages": [
      {"role": "user", "content": "Summarize this support ticket in two sentences."}
    ]
  }'

From there you can add streaming for real-time responses (/docs/streaming), let the bot call external tools like a ticketing system or database (/docs/tools), or issue separate API keys per bot or environment so you can track usage independently. The /docs/quickstart page walks through getting a key and making your first call, and /docs/messages covers the request format in detail.

Whether you're building an internal support bot, a Slack assistant, or a customer-facing agent, the underlying request shape stays the same — the work is mostly in prompt design and what the bot does with the response, not in wrestling with authentication or rate limits.

FAQ

Is ClaudeBot dangerous or malicious? No. It's a standard, identifiable crawler that respects robots.txt and only accesses publicly available pages, similar to search engine bots.

Can I block ClaudeBot from my site? Yes. Add a User-agent: ClaudeBot rule with Disallow: / to your robots.txt file, the same way you'd block any other crawler.

Is "a Claude bot" the same as ClaudeBot? No. ClaudeBot is Anthropic's web crawler for training data. A "Claude bot" you build yourself is a separate application — usually a chat assistant or automation — that calls Claude's API to generate responses.

Turn your Claude access into an HTTPS API

SubToAPI gives you application API keys, streaming, tool use and usage insights on top of your existing Claude access — set up in minutes.

Start free  Read the quickstart →