Skip to content
New storyWe built Skald to count visitors. It caught an AI-key thief.
SkaldEvery visit, truly told.

AI traffic · Claude

Claude traffic: what Claude read, and who it sent

Claude traffic comes from five names in your log, plus the people claude.ai sends. ClaudeBot trains, Claude-SearchBot indexes, Claude-User reads while someone waits. Skald keeps each one apart.

Claude traffic is everything Anthropic's Claude does on your website: ClaudeBot crawling for training, Claude-SearchBot indexing for search, Claude-User fetching a page because one person asked Claude something, and people who click a link from claude.ai. Only the clicks run a script tag; the log has every one.

30-day free trial · no card · we set it up within one working day · free to self-host

three roads into one log · sample

Anthropic's networkon its published list

A developer's laptopClaude Code, at home

A hosting networksomeone else's server

your server · access.log

  1. 203.0.113.9 "GET /about/" "ClaudeBot/1.0"training · verified
  2. 198.51.100.33 "GET /pricing/" "Claude-User/1.0"live fetch · verified
  3. 192.0.2.41 "GET /docs/api/" "Claude-User (claude-code/1.0)"live fetch · not verifiable
  4. 192.0.2.140 "GET /.git/config" "ClaudeBot/1.0"bots · claims to be ClaudeBot

Sample lines. Two roads carry Claude's names honestly. Only the third is a fake, and only the owner's list can say so.

[01] five names in your log

Claude shows up under five names. Skald sorts them by why they came.

ClaudeBot and anthropic-ai train. Claude-SearchBot indexes. Claude-User and the older Claude-Web read while someone waits. People who click through from claude.ai are a fourth track of their own. Count all of it as one "Claude" and a training crawl looks like demand. One part of AI traffic tracking.

pick a name
training crawls search index live fetches people clicking
203.0.113.9 "GET /about/" "ClaudeBot/1.0"
What it is
Collects pages that may train Anthropic's models. Nobody is waiting on it.
Is it real
Against Anthropic's published address list.
Your rules
Refused under Block training.

[02] claude on a laptop

A developer asks Claude Code to read your docs. That is a real Claude fetch.

The fetch says Claude-User, but it comes from the developer's own address, which no list from Anthropic could ever hold. A cruder check would call it a fake and throw it out. Skald runs its checks in a fixed order, and the Claude Code mark comes before the list.

pick a request
192.0.2.41 "GET /docs/api/" "Claude-User (claude-code/1.0)"
  1. 1Whose name is it?Anthropic's
  2. 2Does the agent carry claude-code/?yes: stop here
  3. 3Is the address on Anthropic's list?
  4. 4Is that list 7 days old or less?

verdict

Not verifiable

A tool on someone's own machine. Counted as a live fetch by Claude, marked not verifiable, and never "claims to be Claude-User", even from an address that is not Anthropic's.

The order is the code's (bot_verify.py). A fake is only ever a name used from an address its owner's fresh list says is not theirs.

[03] before the click

Claude sent you a visitor. Here is what it read first.

A visit from a Claude answer (its referrer, the address the click came from, is claude.ai) carries the pages Claude-User fetched in the same minute or the 15 minutes before: nearest first, at most 10, the landing page pulled from the shelf. ClaudeBot and Claude-SearchBot never appear: nobody was waiting on them.

pick a visit
/pricing/1 min /compare/matomo/2 min

Cited by Claude · 2 pages read first

The referrer is claude.ai. Claude-User fetched /compare/matomo/ two minutes before and /pricing/ one minute before, and the visitor landed on /pricing/.

visits from Claude's answers
33
came after it fetched pages
21
landed on a page it had just fetched
18
likely from Claude, kept apart
1

Sample month. Context, not a count of people: a fetch can be for someone who never clicked.

[04] ask claude about it

Stop exporting CSVs. Ask Claude about your traffic.

Skald has a read-only MCP server. MCP, the Model Context Protocol, is how Claude and other assistants call outside tools. Connect it to Claude Code or Claude Desktop and Claude answers from the same checked figures the dashboard shows, in the same honest words: visits are an upper bound on people, AI clicks are a floor, unknown is never 0.

ask one
Claude · sample conversationskald MCP · read-only

Did Claude read my site last week?

tool call

ai_activity {"site": "example.com", "from": "2026-10-16", "to": "2026-10-22"}
example.com (whole site), 2026-10-16 to 2026-10-22: AI assistants.
Fetches because someone asked an assistant: 146 (ChatGPT-User 72, Claude-User 49, Perplexity-User 25).
Fetches to train or index: 518 (GPTBot 201, ClaudeBot 166, PerplexityBot 81, OAI-SearchBot 70).
Visits (an upper bound on people) that followed a link from an assistant: 31 (ChatGPT 19, Claude 8, Perplexity 4). This is a floor: referrers are often stripped. Clicks from Google's AI Overviews are not measurable (they look like any Google search click).
Pages fetched most: /pricing/ 88, /docs/setup/ 61, /compare/plausible/ 40.
Counted 7 whole, verified days of 7 (2026-10-16 to 2026-10-22).

Yes. Claude-User fetched your pages 49 times because someone asked Claude, and ClaudeBot crawled 166 times to train. 8 visits came from links in Claude's answers, and that is a floor.

Sample answers, in the tools' own words. Your token reads one site and sees no visitor address unless you give it that right.

[05] what it cannot see

Where Claude traffic tracking stops

Every Claude figure is one Skald can prove from the log. These are its edges.

What it does not do

  • It does not know what Claude tells each person. AI answers samples answers with your own API keys, as a direction over weeks.
  • Clicks from Claude are a floor. Likely visits are an estimate, kept apart, never added.
  • Crawler rules work by the name a crawler sends, through nginx (the web server in front of many sites) on the server Skald runs beside. A fetcher that hides its name gets through.
  • Without a server or CDN log (a CDN, such as Cloudflare, is a service that serves your pages from near each reader), Claude's fetches are not seen at all.
  • Skald has no address check for Claude-Web, so it can be neither proved nor called fake.

questions

Claude traffic FAQ

Straight answers, including what Skald does not do.

How do I see traffic from Claude?

People who click a link in a Claude answer arrive with claude.ai as the referrer. Claude's own fetches, by ClaudeBot, Claude-SearchBot and Claude-User, never run a script, so only your server log has them. Skald reads all of it from the log and keeps the fetches apart from the people.

What is the difference between ClaudeBot and Claude-User?

ClaudeBot crawls your pages for training, and nobody is waiting on it. Claude-User fetches a page because one person asked Claude a question just then. Skald files ClaudeBot as a training crawl and Claude-User as a live fetch, and never adds them together.

What are Claude-SearchBot, anthropic-ai and Claude-Web?

Claude-SearchBot builds Claude's search index ahead of any question, so it counts with the training crawls. anthropic-ai is an older training token. Claude-Web is Anthropic's older agent for fetches made from claude.ai; it is still seen, and counts as a live fetch.

Why is a Claude-User fetch marked not verifiable?

Claude Code and other tools that run on a person's own computer also say Claude-User, from that person's address. No owner list can hold those, so Skald marks them not verifiable and never calls them fakes. Skald has no address check for Claude-Web either, so it is never called a fake.

Can I block ClaudeBot and stay in Claude's answers?

Yes. Block training only for Anthropic refuses ClaudeBot and anthropic-ai, while Claude-SearchBot and Claude-User still reach the site. How blocking AI crawlers works.

Does Skald count the Claude phone app?

Yes, when the app sends its name. The Claude Android app sends com.anthropic.claude as the referrer, and Skald counts that visit as Claude. A click with no referrer is direct, or likely from Claude if Claude-User had just fetched that page.

$ tail -f access.log | skald

See what AI does with your site. Free for 30 days.

No card. We set up hosted Skald for you within one working day, or you self-host it free. Every line of your log, sorted and added up.

Start free trial Live demo