Plain Reckoner

Dataset

Which AI crawlers 1,020 small ad-funded publishers name and block in robots.txt

What the people who run small, advertising-funded websites have actually told the AI companies they may read. Every site can publish a file called robots.txt naming which automated readers may fetch its pages. We read 1,020 of those files, drawn at random from the 16,076 domains that two large advertising networks name as their own customers, and resolved each one the way a crawler has to: by the rules that apply at the site root, not by searching the text for a crawler’s name. Three quarters of the files say nothing about AI crawlers at all. Among those that say something, the name shut out most often belongs to a crawler that fetches a page because a person asked a question it answers, and then links back — so the block that costs a publisher readers is far commoner than the block that withholds their work from training. Every share this site publishes about AI-crawler policy — overall, crawler by crawler, and network by network — recomputes from this table, which is the point of publishing it: our aggregate becomes something you can falsify with a spreadsheet instead of having to take on trust.

Coverage
2026-09-02
Last measured
Licence
CC BY 4.0
DOI
10.5281/zenodo.22280370
What a row is
One publisher’s robots.txt file: which AI crawlers it names, which it actually blocks, which names it carries that no vendor documents, and whose template it was written from.
Subjects
robots.txt, AI crawlers, GPTBot, ChatGPT-User, ClaudeBot, CCBot, Google-Extended, crawler blocking, AI training opt-out, web publishers, RFC 9309

Download the summary 1,020 rows · 8 columns · CSV · no account, no email

Read the finding this came out of Publishers block the AI visitor that would have sent them a reader at least ten times more often than the one that only files them away

How to cite this

Use it commercially, change it, build on it. The only condition is credit, and a link satisfies it.

In a chart, where space is short Plain Reckoner (2026)
In full Plain Reckoner (2026). "Which AI crawlers 1,020 small ad-funded publishers name and block in robots.txt" [dataset]. https://doi.org/10.5281/zenodo.22280370
As HTML, ready to paste Source: <a href="https://plainreckoner.com/data/ai-crawler-policy-in-robots-txt/">Plain Reckoner, Which AI crawlers 1,020 small ad-funded publishers name and block in robots.txt</a>

What you should know about this data

How it was measured

1,200 domains were drawn once from the 16,076 the two networks publish about themselves, ranked by a hash of a published seed and the domain name, so that anyone can redraw the same sample. The nightly crawler fetched each robots.txt on a single complete pass; 1,020 answered and 180 refused or could not be reached, and the ones that could not be reached are excluded from the denominator rather than counted as saying nothing, which would have moved the headline in the direction that flatters it. Each file was then resolved rather than searched: the rules that reach a named crawler at the site root, worked out by the grouping rules the robots.txt standard sets out, because a file that stacks thirty crawler names above one permissive block has authorised all thirty. Rows are in the order the source holds them, which is alphabetical by domain with the domain removed — unrelated to anything measured, so any run of rows from it is a fair slice of the whole.

The summary

The first 60 of 1,020 rows. The download has all of them. Free to use with credit, commercially included.

network names_crawlers blocks_crawlers named_tokens blocked_tokens blocks_citation_crawler retired_tokens vendor_template
Raptive 0 0 no
Raptive 0 0 no
Raptive 0 0 no
Raptive 0 0 no Raptive
Mediavine 0 0 no
Mediavine 0 0 no
Mediavine 4 0 GPTBot;ClaudeBot;Google-Extended;CCBot no anthropic-ai;cohere-ai;omgili;omgilibot
Mediavine 0 0 no
Mediavine 0 0 no Yoast
Raptive 0 0 no
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Mediavine 0 0 no
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Raptive 7 0 GPTBot;ChatGPT-User;OAI-SearchBot;ClaudeBot;Google-Extended;PerplexityBot;CCBot no anthropic-ai;claude-web;cohere-ai
Mediavine 0 0 no
Raptive 0 0 no
Raptive 0 0 no
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Mediavine 0 0 no
Raptive 0 0 no
Mediavine 0 0 no
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web
Mediavine 0 0 no
Mediavine 0 0 no
Raptive 0 0 no
Raptive 0 0 no
Mediavine 0 0 no
Mediavine 0 0 no Yoast
Mediavine 0 0 no
Mediavine 0 0 no
Mediavine 0 0 no Yoast
Mediavine 4 0 GPTBot;ClaudeBot;Google-Extended;CCBot no anthropic-ai;cohere-ai;omgili;omgilibot
Raptive 1 1 CCBot CCBot no anthropic-ai;claude-web Raptive
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Raptive 0 0 no Yoast
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Raptive 3 3 GPTBot;ChatGPT-User;CCBot GPTBot;ChatGPT-User;CCBot yes anthropic-ai;claude-web Raptive
Mediavine 0 0 no Yoast
Mediavine 0 0 no
Raptive 3 3 GPTBot;Google-Extended;CCBot GPTBot;Google-Extended;CCBot no anthropic-ai;claude-web Yoast
Raptive 0 0 no
Mediavine 0 0 no
Mediavine 0 0 no Yoast
Mediavine 4 4 GPTBot;ClaudeBot;Google-Extended;CCBot GPTBot;ClaudeBot;Google-Extended;CCBot no anthropic-ai;cohere-ai;omgili;omgilibot
Mediavine 0 0 no
Mediavine 0 0 no Yoast
Mediavine 0 0 no Yoast
Raptive 0 0 no
Raptive 3 3 GPTBot;ChatGPT-User;ClaudeBot GPTBot;ChatGPT-User;ClaudeBot yes
Mediavine 0 0 no Yoast
Mediavine 0 0 no
Raptive 0 0 no
Mediavine 0 0 no
Raptive 2 2 GPTBot;CCBot GPTBot;CCBot no anthropic-ai;claude-web
Mediavine 0 0 no Yoast
Mediavine 0 0 no Yoast
Mediavine 0 0 no
Mediavine 4 4 GPTBot;ClaudeBot;Google-Extended;CCBot GPTBot;ClaudeBot;Google-Extended;CCBot no
Mediavine 0 0 no Yoast
Mediavine 0 0 no

What each column means

network
The advertising network whose published customer list the domain was drawn from
names_crawlers
How many current AI crawlers the file names at all, whether or not it blocks them
blocks_crawlers
How many of them it actually blocks at the site root, once the file is resolved
named_tokens
The crawlers the file names, separated by semicolons
blocked_tokens
The crawlers the file blocks, separated by semicolons
blocks_citation_crawler
yes when at least one blocked crawler is one that fetches a page to answer a question and links back
retired_tokens
Names in the file that no vendor currently documents, separated by semicolons. Not a claim that the crawler stopped running — only that its supposed operator does not list it
vendor_template
The tool or network whose marked block appears in the file, where one does

Want the record underneath this?

The download above is the complete dataset — all 1,020 rows, no account, no email, free to reuse with attribution. Nothing is held back from it.

What is not on the page is the working: the robots.txt bodies as they were served, how each one resolved rule by rule, and the 180 domains that could not be read at all. If you are checking our method, writing about this, or need something cut a different way, ask — we will send what we can and say plainly where we cannot.

No confirmation step and nothing to click. We log the request, email you to say so, and a person sends it — usually within a day. You are not added to any list, and unless you subscribe separately that acknowledgement is the only email you will get. What we collect.

← Every dataset