Crawler Directory
What each major bot claims to be, and how much of its traffic actually is
Every crawler below announces itself in a User-Agent header. That header is a claim, and claims cost nothing to make. Some operators publish the IP ranges their crawler runs from, which means the claim can actually be checked. So we checked it, request by request, across our production detection corpus.
45.8%
of verifiable crawler requests did not come from the operator that was named.
Measured across the 6 crawlers whose operators publish IP ranges. The worst is GPTBot at 54.9%; the best is bingbot at 10.8%.
| Crawler | Operator | Publishes IP ranges | Not from operator |
|---|---|---|---|
| ChatGPT-User User-triggered fetcher | OpenAI | Yes | 53.0% |
| Amazonbot Search / assistant crawler | Amazon | None found | unverifiable |
| Meta-ExternalAgent AI training crawler | Meta | None found | unverifiable |
| ClaudeBot AI training crawler | Anthropic | None found | unverifiable |
| Googlebot Search crawler | Yes | 46.5% | |
| Bytespider AI training crawler | ByteDance | None found | unverifiable |
| bingbot Search crawler | Microsoft | Yes | 10.8% |
| PerplexityBot AI search crawler | Perplexity AI | Yes | 36.4% |
| GPTBot AI training crawler | OpenAI | Yes | 54.9% |
| OAI-SearchBot AI search crawler | OpenAI | Yes | 54.1% |
Observed 2025-11-14 to 2026-08-19. Ordered by traffic volume.
Why four of them have no number
Google, Microsoft, OpenAI and Perplexity publish machine-readable lists of the addresses their crawlers operate from. Anyone can fetch the list and settle the question in a single lookup.
For Amazon, Meta, Anthropic and ByteDance we could not find an equivalent list. Those operators point site owners at reverse DNS instead, which works one address at a time but gives you nothing to audit traffic against in bulk. So we leave the verification column empty rather than invent a figure. That gap is not a hole in our data. It is a limit on what those operators make it possible for anyone to know.
What to do with this
Allowlisting a crawler by its User-Agent gives the same access to anyone willing to type that string. On the evidence here, that is not a hypothetical worry. It is roughly half the traffic for several of the biggest names. Check against published ranges where they exist, fall back to forward-confirmed reverse DNS where they do not, and treat whatever is left as what it really is: unattributed traffic in a convincing costume.
Related reading: detecting AI scrapers by operator, the RAG bots that fetch your pages in real time, and JA4 fingerprinting for the clients that never announce themselves at all.
Every request in WebDecoy's production detection corpus whose User-Agent declares one of these crawlers, checked IP-by-IP against the operator's own published IP range list. A request is counted as verified when its source IP falls inside a published prefix, and forged when it does not. Operators that publish no machine-readable range list cannot be checked this way and are reported without a forgery figure.
Find out which crawlers are lying to your site
WebDecoy checks declared crawlers against published ranges and tracks the ones that fail as persistent actors, not disposable IP addresses.