robots.txt & llms.txt across the Tranco top 1M
Data as of 2026-09-07 · robots.txt via Common Crawl CC-MAIN-2026-34 + our polite crawl · llms.txt via our polite crawl · Tranco list XN67N (2026-09-03T22:00:02.533886) · 1,000,000 panel domains · crawls: 2026-09-07 · 2026-08-02 · 2026-07-25 · 2026-07-17 1,212,578 robots.txt fetches · 740,113 parsed · 56,498 llms.txt probes

Has anyone actually adopted llms.txt?

llms.txt is an emerging, non-IETF convention (proposed by Jeremy Howard, 2024): a markdown file at /llms.txt describing a site for LLMs. We measure how many sites publish one and whether it conforms to the llmstxt.org structure.

adoption among live top-500k sites
13.0%
balanced panel · live-count-weighted across 10 bands
adoption among measured domains
9.1%
live + dead + other · 403 opt-outs excluded
top-50k census: adoption of live
12.2%
reported separately; never pooled at 10× weight
conformant of published
96.9%
3,871 of 3,996 genuine files

Balanced panel: 50,000 selected domains (5,000 from each equal 50k band), 30,676 live. The separate top-50k census improves Explorer coverage but is down-sampled for the representative top-500k estimate.

Adoption ≠ consumption. Report adoption + conformance, never impact:
  • Ahrefs (137K sites): ~28% publish, but ~97% are never read; of the read 3%, 96% of requests were bots. AI bots don't probe for missing llms.txt.
  • SE Ranking (300K domains): no measurable AI-citation lift.
  • Google's John Mueller calls it a "temporary crutch"; OpenAI/Anthropic steer owners to robots.txt.
  • HTTP Almanac 2025: of 324,184 valid files, ~39.6% were generated by the All in One SEO WordPress plugin — adoption is largely passive CMS-plugin default, not strategy.

Do popular sites adopt llms.txt more than smaller ones?

Band 1 = ranks 1–50,000; band 10 = ranks 450,001–500,000. Each point uses the balanced 5,000-domain draw for that band. Adoption is conditioned on a strict-200 live homepage; liveness is shown beside it so the changing denominator is visible.

llms.txt adoption and liveness by 50k rank band
data table
BandTranco ranksselectedlive livenessadoption of liveconformant of published
D1 1–50,000 5,000 2,870 65.9% 11.9% 95.6%
D10 450,001–500,000 5,000 3,170 71.6% 13.1% 96.6%
D2 50,001–100,000 5,000 3,154 72.4% 11.4% 96.4%
D3 100,001–150,000 5,000 2,874 66.2% 12.2% 95.4%
D4 150,001–200,000 5,000 3,093 70.3% 13.5% 96.2%
D5 200,001–250,000 5,000 3,136 70.9% 12.3% 96.9%
D6 250,001–300,000 5,000 2,867 64.8% 14.6% 98.3%
D7 300,001–350,000 5,000 3,086 69.2% 13.1% 98.0%
D8 350,001–400,000 5,000 3,197 72.2% 13.7% 96.8%
D9 400,001–450,000 5,000 3,229 72.4% 14.3% 97.8%

Blue = genuine /llms.txt adoption among live sites. Amber = share of measured, non-opt-out domains that were live. Each band contributes an equal 5,000-domain sample.

All ten top-500k bands are represented. D1 also has a separate full census, but only its random 5,000-domain draw enters this chart and the balanced headline. See the sampling and liveness methodology.

How many llms.txt files are really files?

Many origins answer a missing /llms.txt or /ai.txt with 200 anyway — their homepage HTML, their robots.txt, an error string, or a bare OK. We count a file only when the body actually contains a document (see how presence is decided). Raw-200 adoption would be 13.5% in the observed crawl corpus — but that diagnostic pool includes the oversized top-50k census and is not a representative prevalence estimate.

~97% of apparent /ai.txt "adoption" is not a real file. Separating the two is itself a finding.

caveat These are counts, not adoption rates — each variant has a different denominator. This crawl probes tiered and stores one row per domain (the winning variant), so a variant's count is only over the domains where that path was actually probed and won: /llms.txt is probed on every live domain; the supplements (/llms-full.txt, /llms-ctx.txt, /llms-ctx-full.txt) are probed only when /llms.txt returned 200 but was non-conformant; and /ai.txt is probed on every live domain but only recorded when no conformant llms.txt variant was found first. A site that publishes a good /llms.txt and a /llms-full.txt is invisible in the supplement rows. Per-variant denominators need a re-crawl that records every variant independently; until then, do not divide these counts by the probe total.

Genuine files vs non-files by variant (counts, not rates)
data table
variant200sgenuinenot a fileprobed when
/ai.txt10,019 5449,475 every live domain; recorded only if no conformant llms.txt won
/llms.txt7,342 7,144198 every live domain
/llms-ctx-full.txt24 519 only when /llms.txt was a non-conformant 200
/llms-ctx.txt9 09 only when /llms.txt was a non-conformant 200

Solid = genuine (a 200 whose body is a real document); red = a 200 that is not a file (HTML page, robots.txt, stub or error string). Denominators differ per variant — see the caveat above.

Who generates llms.txt?

Of 7,143 genuine files, 43.6% carry a detectable generator signature — our own measurement of the CMS/plugin-driven nature of adoption (RQ-4). Bars colored by conformance rate.

Generator market share (genuine files)
data table
generatorfilesconformant
(none detected)4,027 94.6%
Shopify1,601 99.3%
Yoast SEO516 99.0%
WordPress316 96.5%
All in One SEO260 99.6%
Rank Math146 97.9%
HubSpot90 94.4%
Ghost73 90.4%
Wix61 100.0%
Blogger22 100.0%
Magento11 81.8%
Webflow10 90.0%

Generator-produced files are near-universally spec-conformant; hand-rolled ones less so.

Do sites that publish llms.txt also block AI crawlers?

Of genuine llms.txt publishers, 23.5% (1,677 of 7,143) also name at least one AI crawler in robots.txt — publishing a welcome mat for LLMs while addressing their crawlers directly.

caveat Naming ≠ blocking. A named crawler could be an Allow or a Disallow — this v1 measures naming only. The rigorous allow/block verdict split (the Mixed Signals quadrant) lands with per-bot verdicts in a later crawl.

llms.txt publishers naming an AI crawler
data table

1,677 of 7,143 genuine publishers name ≥1 AI crawler in robots.txt.

Names an AI crawler in robots.txt (allow OR block undetermined) vs no AI crawler named.

What sections does an llms.txt actually contain?

The most common H2 section titles across the genuine corpus — the de-facto schema sites are converging on (no spec mandates these).

Top section titles
data table
section titlefiles
optional1,524
platform1,502
read-only browsing (no authentication required)1,410
commerce protocol (ucp)1,408
for personal shopping assistants and agents acting on behalf of a user1,402
store policies1,365
pages856
posts637
categories509
sitemaps470
products439
company436
resources395
tags305
contact293
about262
pricing222
blog203
solutions192
key pages179

Normalized (lower-cased) H2 titles across genuine llms.txt files.

Is llms-full.txt any different from llms.txt?

This crawl promotes /llms-full.txt from a supplement (probed only when /llms.txt was a non-conformant 200) to an independently probed path — requested on every live cohort domain regardless of the /llms.txt outcome (FR-18d). It is therefore the one non-base variant with a real denominator, and the only one we express as a rate.

/llms-full.txt adoption
4.7%
2,622 genuine of 56,412 probed
200s that aren't files
79.0%
of the 12,492 apparent 200s
conformant of genuine
78.1%
2,047 files

read these together The not-a-file rate is the story, not a footnote. This path returns 200 for 12,492 domains but only 2,622 are real files — 79.0% return something else for a missing path (a web page, a robots.txt, a stub). Compare /llms.txt, where the rate is far lower. Quoting the raw 200 count as adoption would overstate this path by roughly 4.8x.

Is the full dump maintained alongside the index?

This is the question independent probing exists to answer: both lanes now cover the same domains, so the breakdown is measurable for the first time.

publishesdomainsshare of full-file publishers
both /llms.txt + /llms-full.txt 2,077 79.1%
/llms-full.txt only — no base index 548 20.9%
/llms.txt only — no full dump 5,067

Of 7,144 /llms.txt publishers, only 29.1% also serve a full-context dump — so the dump is the exception, not the norm, even among sites that have adopted the convention.

An interesting insight: one platform dominates this path

insight Shopify accounts for 1,504 of the 2,622 genuine /llms-full.txt files (57.4%). That is a far higher single-vendor concentration than the base /llms.txt corpus shows, where no generator exceeds ~17%. Read carefully: it means this path's adoption curve is substantially one platform's default output rather than 2,622 independent decisions — the same passive-CMS-default dynamic the HTTP Almanac found for llms.txt (39.6% All in One SEO), but more concentrated.

One thing this does not say: Shopify is not the explanation for the 548 full-only domains. Its files overwhelmingly sit on domains that publish a base /llms.txt as well — the platform emits both files, not the dump alone, which is why it shows up in the both row above rather than the full-only row. The full-only group is instead dominated by files with no detectable generator, which we can count but not attribute.

An interesting insight: for most publishers, the “full” file isn’t fuller

The 2,077 domains publishing both files let us ask something the tiered crawl never could: is /llms-full.txt actually a fuller document, or the same content at a second path? Compared per domain on size and link count.

full vs base filedomainsshare of pairs
mirror — within ±5% size and identical link count 1,445 69.6%
genuinely fuller — >5% larger 567 27.3%
smaller than the base file 53 2.6%

insight 69.6% of both-lane publishers serve a /llms-full.txt that mirrors their /llms.txt rather than expanding on it. We verified this against live files rather than inferring it from sizes: those pairs differ by exactly the filename, in a line that says so — “you’re reading /llms.txt, which mirrors that content” — and 46 serve the two paths byte-for-byte identical. So the file documents its own duplication.

Read the aggregate with its concentration. “69.6% are mirrors” is really “one platform’s output is a mirror, and that platform dominates this lane”: Shopify accounts for 1,487 of the 2,077 pairs and 94.5% of its pairs are mirrors. Outside it the pattern largely disappears. The table below is the honest form of the finding; the single lane-wide percentage is not.

generator (full file)pairsmirrorsmirror rate
Shopify1,487 1,40594.5%
(none detected)426 307.0%
WordPress86 78.1%
Ghost31 13.2%
HubSpot18 15.6%
Blogger13 00.0%
All in One SEO6 116.7%
Squarespace5 00.0%
Yoast SEO2 00.0%
Magento2 00.0%
Webflow1 00.0%

What this does not establish: we detect the generator from a signature the file itself carries, and we checked a handful of these against their live files, not all 1,487. The (none detected) row is counted but not attributable — those files carry no generator signature, so we can report their mirror rate and nothing about who produced them.

Which sites publish the best llms.txt files?

Largest genuine files (by lines)

prosperhealth.io 23,247 lines
searchengineland.com 21,005 lines
craftbits.com 20,501 lines
fastoscrews.com 17,087 lines
3qsdn.com 15,882 lines
mailchimp.com 13,893 lines
ucsf.edu 13,271 lines
rollbar.com 11,653 lines
bfbtransfercart.com 10,816 lines
alternate.be 10,173 lines
toryburch.com 9,633 lines
silencershop.com 9,330 lines

Most links

ucsf.edu 10,981 links
alternate.be 10,169 links
fivetran.com 7,702 links
steuertipps.de 7,245 links
nykaa.com 6,942 links
simracewebshop.eu 6,725 links
gomining.com 6,356 links
gmt.io 6,356 links
esmadrid.com 6,292 links
hontecmultipcb.com 6,201 links
infobus.eu 6,011 links
timespro.com 5,909 links

200s that aren't a /llms.txt

200 on the canonical path, but the body isn't a file — a web page, a robots.txt, or a stub. Not counted as adoption.

bit.ly
alphapolis.co.jp
uiuc.edu
useinsider.com
openssl.org
yumpu.com
kochava.com
zimperium.com
impact.com
nbc.com
kijiji.ca
upstart.com