DEV Community

DEUS Automations
DEUS Automations

Posted on

Most AI-crawler blocking doesn't happen in robots.txt

Most AI-crawler blocking doesn't happen in robots.txt

Numbers re-derived from the live Agent Web Index aggregate on 2026-09-19 (47,314 domains with a
measured verdict). Dataset CC BY 4.0: Zenodo DOI, GitHub DeusAcc/agent-web-index, Hugging Face
DeusHorizon/agent-web-index. Live hub: https://shop.lumnika.com/ai-readiness/?src=devto

Everyone audits robots.txt. We probed 47,314 domains the way an AI assistant actually fetches
them — one request from a browser user-agent, then one from each published crawler user-agent —
and compared what robots.txt permits with what the server really returns.

22.5% of measured domains block at least one major AI crawler. Most of those blocks are not in
robots.txt.

Crawler Served Blocked in robots.txt Blocked by the edge anyway Edge : robots
ClaudeBot 39,946 2,077 6,571 3.2 : 1
GPTBot 40,150 2,595 6,250 2.4 : 1
PerplexityBot 42,518 1,233 4,391 3.6 : 1
OAI-SearchBot 42,507 826 4,513 5.5 : 1

"Blocked by the edge" means one thing only, and it is measured, not inferred: robots.txt allows
the bot, a browser user-agent gets the page, and the crawler user-agent gets a different answer —
a 403, a challenge, or a block page. Nobody wrote that rule for ClaudeBot. It came with a CDN
setting.

It depends on who answers for your domain

Grouping by the edge vendor that serves the host, over crawler×domain pairs:

Edge Domains Crawler pairs blocked
Akamai 266 43.0%
Google (Cloud/Frontend) 722 38.1%
Sucuri 52 18.7%
AWS CloudFront 2,903 16.4%
Cloudflare 25,404 12.6%
No identifiable edge 11,335 11.0%
Azure Front Door 283 8.7%

A site behind Akamai is roughly three and a half times more likely to refuse an AI crawler than a
site behind Cloudflare — while both owners believe their robots.txt is the policy.

Mean readability score across measured domains: 73.1 (median 74).

Check yours

Every domain has a page with its own evidence: https://shop.lumnika.com/ai-readiness/<domain>?src=devto.
The same data is a public MCP server, no key, if you would rather have your assistant ask:

POST https://shop.lumnika.com/ai-readiness/mcp
{"jsonrpc":"2.0","id":1,"method":"tools/call",
 "params":{"name":"domain_readiness","arguments":{"host":"example.com"}}}
Enter fullscreen mode Exit fullscreen mode

Limits, stated by us first

Single vantage point, one probe per crawler per domain, one point in time — a challenge page can
be transient and we count it as a block. Percentages cover only domains that answered at all;
unreachable domains are excluded, not counted as open. google-extended and applebot-extended
are robots-only signals with no fetch to compare, so they carry no edge figure. Vendor rows with
few domains (Sucuri, Akamai) have wide error bars — the direction is solid, the second decimal is
not.

Top comments (0)