AI Access Index · monthly

How the top 1,000 websites treat AI crawlers

On the 1st of every month, the same 1,000 sites, checked the same way: what each site's robots.txt tells AI crawlers, and what its server actually does when they arrive. It is not a ranking. Open or closed, a policy is a choice; the index measures which choices sites make, and whether their servers keep to them.

November 2026 editionMeasured November 1, 2026684 of 1000 sites answeredData under CC BY 4.0

What robots.txt tells AI crawlers

Each site's policy is read the way its own report reads it: from what its robots.txt says to the 40 crawlers that fetch pages for AI search and answers, and the 9 that gather training data.

  • Open to AI79.7% (545)AI search: yes · AI training: yes
  • AI search, no AI training8.8% (60)AI search: yes · AI training: no
  • Selective3.8% (26)Some AI companies in, others kept out
  • Closed to AI7.7% (53)AI search: no · AI training: no

Shares of the 684 sites that answered. Open includes 119 sites with no robots.txt at all, which allows everything. Closed includes 13 hosts that close themselves to every crawler, search engines included: mostly API and CDN hostnames rather than a decision about AI.

Does the server do what robots.txt says?

robots.txt is a request, and the server answers first. After the check's own visit, each homepage was asked for again as four AI crawlers, with each vendor's documented user agent, and the answer was set beside what the site's robots.txt says about that crawler.

11.3%refuse a crawler their robots.txt allowsOf the 547 tested sites that allow at least one of the four. 8.2% leaving out refusals that were only 429s, which can be rate limits.
63.7%serve a crawler their robots.txt blocksOf the 124 tested sites that block at least one. robots.txt asks; only the server can refuse.
85sites could not be testedTheir server refused the check's own request too, so a refusal cannot be told apart from a wall against every bot.
CrawlerBlocked in robots.txtRefused by the serverRefused while robots.txt allows itServed while robots.txt blocks it
GPTBotOpenAI training15.6%8.8%5.9%75% of 80
OAI-SearchBotChatGPT search8.2%3.8%2.3%76.1% of 46
ClaudeBotAnthropic training15.5%8.7%5.5%74.7% of 75
PerplexityBotPerplexity search12.3%8.5%6.3%71.7% of 60

Blocked in robots.txt: share of the 684 sites that answered. The server columns: share of the sites whose homepage opened for the check's own request (about 525). Served while blocked: share of those that block that crawler. A refusal is a 401, 403, 429 or 503.

What changed since last month

This is the first edition. From the December 2026 edition on, this section names every site that changed its AI policy, started or stopped blocking one of the four crawlers, or whose server started or stopped refusing a crawler its robots.txt allows.

Look up a site

Every site in the index, as it answered on November 1, 2026. A site that is not in the sample can be checked the same way, free.

The most-blocked AI crawlers

CrawlerCompanyWhat it doesBlocked by
BytespiderBytedanceTraining only17.5% (120)
CCBotCommon CrawlTraining only17.3% (118)
GPTBotOpenAITraining only15.6% (107)
ClaudeBotAnthropicTraining only15.5% (106)
DiffbotDiffbotAI answers14% (96)
meta-externalagentMeta AIAI answers14% (96)
Google-ExtendedGoogle AIAI answers13.5% (92)
cohere-aiCohereAI answers13.2% (90)
Applebot-ExtendedApple IntelligenceTraining only12.9% (88)
PetalBotHuaweiAI search index12.9% (88)
AmazonbotAmazonAI answers12.3% (84)
PerplexityBotPerplexityAI search index12.3% (84)

Share of the 684 sites that answered whose robots.txt disallows / for the crawler, by name or through a group it falls under. Every crawler the check knows is in summary.json; what each one is, in the crawler reference.

The files and signals written for AI

SignalWhat countsSites
llms.txta real one: a text file that starts with a Markdown heading15.8% (108)
Content-Signala line in robots.txt saying what the content may be used for2.5% (17)
TDM reservationthe EU text-and-data-mining opt-out, as a header or /.well-known/tdmrep.json0.9% (6)
A markdown copy for agentsthe homepage answers Accept: text/markdown with markdown3.7% (25)
agents.jsonat /.well-known/agents.json0.3% (2)
A noai directivein the homepage's meta robots or X-Robots-Tag0% (0)

Shares of the 684 sites that answered.

Edition by edition

EditionAnsweredOpenAI search, no trainingSelectiveClosedRefuse an allowed crawlerServe a blocked one
November 2026684 of 100079.7%8.8%3.8%7.7%11.3%63.7%

Method

  • The same sites every month. The top 1,000 hostnames of Tranco list 8PXYV, the research-standard ranking, downloaded on October 11, 2026 and frozen, so a change in the index is a change in the sites, not in the list. Some are infrastructure hostnames with no website behind them; they count as not answering.
  • The same day and the same rules. On the 1st of each month from 06:17 UTC, from a GitHub Actions cloud runner, each site once, six at a time, nothing retried. It is the check this site runs for anyone, scoring rules v3: robots.txt, llms.txt, the homepage and its markdown copy, agents.json and the TDM file as CrawlReadinessBot, then the homepage as GPTBot, OAI-SearchBot, ClaudeBot and PerplexityBot, keeping only the status. A site's own report says what the index says about it.
  • The four policies. Read from robots.txt's verdicts for the 40 search and answer crawlers and the 9 training crawlers. Open to AI: at most a fifth of the search crawlers blocked and training left mostly open. AI search, no AI training: search open, training blocked (or every training crawler the file names blocked). Closed to AI: every major AI company kept out. Selective: anything else, such as one company left open while the rest are blocked.
  • Refused and tested. A refusal is a 401, 403, 429 or 503. A site counts as tested when the server's answers can be read against its robots.txt; when it refused the check's own request too, a crawler's refusal could be a wall against every bot, and the site is left out of the server shares. Each share names what it is a share of.
  • Limits. One pass, homepages only. The test sends a crawler's user-agent string, which is what firewall rules match; it does not come from the vendors' IP addresses, so a site that verifies crawlers by address could refuse us and admit the real crawler. Firewalls answer by network and by hour, and a 429 can be a rate limit, so the stricter figure leaves 429-only refusals out. The October 2026 study measured the same sites from a different network with a browser as its baseline, so its numbers are not part of this series.

Download the data

Licensed CC BY 4.0. Cite as “Crawl Readiness, AI Access Index, November 2026, www.crawlreadiness.com/ai-access-index/2026-11.”

  • results.csv: one row per site in the sample, with its policy, the server's answer to each of the four crawlers and every signal.
  • changes.csv: every change since the edition before, site by site.
  • summary.json: every number on this page, with what each is a share of.

Where does your site stand?

The same check, free, with the fixes: run it on your site. Sites people have checked with the free tool are listed, unranked, in Checked sites.