Short answer: there's no public evidence that llms.txt gets you cited by ChatGPT, Claude, Perplexity, or Google's AI features, and none of those providers has publicly committed to reading it. Does llms.txt work as a cheap, low-risk bet? Yes. As a ranking or citation lever? Nobody has shown that, including the people selling it.
That's the uncomfortable version. The useful version is that you don't have to take anyone's word for it, mine included. Your server logs and a twenty-prompt spreadsheet can tell you what happens on your own site, and this article shows you how to run that test properly.
- No major AI provider (OpenAI, Anthropic, Google, Perplexity) has publicly said it reads
llms.txtwhen building answers. Google has said the opposite. - A log line showing
GPTBotfetched/llms.txtproves a fetch. It doesn't prove the file influenced a single answer. - The strongest test you can run is a canary: a URL listed only in
llms.txt, nowhere else. If a bot requests it, the file was read and followed. - Prompt tests before and after are noisy. Run each prompt three times per engine or you'll measure randomness.
- Cost is about 30 minutes. Benefit is unproven. I'd still do it, but last, after the work that does move citations.
What llms.txt is (two sentences, then I move on)
llms.txt is a markdown file at the root of your domain, proposed by Jeremy Howard of Answer. AI in September 2024, that lists your most useful pages with one-line summaries so a language model can find the good stuff without parsing your navigation. If you want the format and a build walkthrough, I covered that in the llms.txt generator guide.
This article is about one question only: does anyone actually use it?
What the providers have said publicly
I'll only list what I'm confident was said on the record. Rumors from LinkedIn carousels don't count.
| Provider | Public position on reading llms.txt |
What that means for you |
|---|---|---|
| John Mueller said in 2025 that, as far as he knew, no AI system used it, and compared it to the old keywords meta tag. Gary Illyes said Google doesn't support it. | Don't expect AI Overviews or AI Mode to treat it as a signal. | |
| OpenAI | No public commitment. Its crawler docs cover robots.txt and user agents, not llms.txt. |
GPTBot may fetch it like any URL. That's all you can say. |
| Anthropic | No public commitment for Claude's answers. Anthropic does publish llms.txt files for its own developer docs. |
Publishing one isn't the same as reading yours. |
| Perplexity | No public commitment I can point to. | Same as above. |
So the honest status is: a public proposal, adopted by thousands of sites (docs platforms like Mintlify generate it automatically, which inflates the count), and endorsed by zero of the engines whose citations you care about.
There's one place where it demonstrably gets used. Developer tooling. When a developer pastes https://docs.example.com/llms.txt into a coding assistant or an MCP docs server, the tool reads it because a human pointed it there.
That's real usage, and it's why API documentation sites adopted it first. It just isn't the same thing as ChatGPT discovering your agency's service page.
What server logs can show (and what they can't)
Logs are the only first-party evidence you have. They're also easy to over-read. Here's the line I draw.
Logs can show:
- Which user agents requested /llms.txt, how often, and when.
- Whether those requests came from IP ranges the vendor publishes (OpenAI publishes ranges for GPTBot, OAI-SearchBot and ChatGPT-User).
- Whether the same bot then requested URLs that appear in the file.
Logs can't show:
- Whether the content was used in training, stored in an index, or thrown away.
- Whether any answer, for any user, was shaped by it.
- Anything about Google's AI features, because Google crawls with Googlebot. Google-Extended is a robots.txt token, not a user agent, so you'll never see it in a log line.
That last point trips people up constantly. I've seen an audit report claim "Google-Extended visited llms.txt 40 times." It didn't. Something spoofed the string, or someone misread a column.
Here's the gap in plain terms: a fetch is a delivery receipt. Citation is someone reading the letter and quoting it in a meeting. Logs give you the receipt.
The Karolina test: what one real log export looked like
Karolina runs marketing for a B2B software company in Gdańsk, about 340 indexed pages, llms.txt live since March. She asked me whether it was "working." I pulled 90 days of her access logs.
The numbers, roughly:
- 58,000 requests from identified AI user agents across the whole site.
- 21 requests to
/llms.txt. Of those, 6 came fromGPTBot, 4 fromClaudeBot, 2 fromPerplexityBot, and the rest from SEO tools and genericpython-requestsscripts. - Zero requests to
/llms.txtfromChatGPT-UserorClaude-User, the live fetchers that act on a user's question.
So the file was being picked up occasionally by training and index crawlers, at a rate of about one hit a week. Meanwhile her product pages were being fetched hundreds of times a week through ordinary links and the sitemap.
Was llms.txt "working"? It was being collected. That's it. Nothing in that data connects it to a single citation. Her takeaway, and mine: leave it there, stop checking it weekly, and spend the time on the pages the bots were already reading.
Not sure what AI crawlers can actually parse on your site? AI Visibility crawls your pages the way an LLM does and flags missing markdown twins, missing schema, and pages that render as an empty shell. Free plan, one site.
How to run your own llms.txt test in 5 steps
If you want an answer for your own domain rather than an industry average, this is the protocol I use. It takes about two hours spread across six weeks.
- Baseline your logs. Export 30 days of raw access logs (not GA4, which never sees bots). Count requests to
/llms.txtby user agent:
grep '"GET /llms.txt' access.log \
| awk -F'"' '{print $6}' \
| sort | uniq -c | sort -rn
In the standard combined log format, field 6 split on quotes is the user agent. If your host uses a different format, adjust the field number.
-
Verify the bots are real. Check the source IPs against the vendor's published ranges. A string that says
GPTBotfrom a residential IP in a random ASN isn't OpenAI. -
Plant a canary. Add one URL to
llms.txtthat exists nowhere else: not in the sitemap, not linked from any page, for example/notes/llms-canary.mdwith a short, genuinely useful summary of your service. If any crawler requests that URL, it got there throughllms.txt. That's the cleanest causal signal you'll get. -
Run a prompt baseline. Write 20 questions your customers actually ask. Put each into ChatGPT, Claude, Perplexity, and Gemini, three times each, in a fresh session, and record whether your domain is cited. That's 240 data points, and yes, it's tedious.
-
Wait six weeks, then repeat steps 1, 3 and 4. Change nothing else on the key pages in between, or you won't know what caused what.
The canary is the part almost nobody does, and it's the part that turns "the file got fetched" into "the file got followed." Still not citation. But it's one rung higher on the ladder.
Why prompt tests lie to you (and how Bartek fixed it)
Bartek sells industrial fasteners online from Poznań. He added llms.txt and markdown twins in the same week, then ran his 20 prompts once each in ChatGPT. Before: cited in 4 answers. After: 7. He was ready to call it a 75% lift.
Then he re-ran the "after" set the next morning. 5 citations. And a third run gave 6.
That's the problem. AI answers aren't deterministic. The same prompt in the same engine can cite different sources an hour apart, and engines quietly change their retrieval between runs. A swing of 2 or 3 citations out of 20 is noise.
What fixed it:
- Three runs per prompt per engine, recorded as a cited/not-cited count out of 3.
- One change at a time. Bartek had shipped markdown twins and
llms.txttogether, so even a real lift couldn't be attributed to either. - A control set. Five prompts about topics his site doesn't cover at all. If those start citing him, something is off with the test, not the site.
After redoing it properly over two cycles, the honest result was "no measurable difference from llms.txt." The markdown twins plausibly helped, since those are the pages the crawlers were fetching anyway. I can't prove that either. But I'd bet on the twins over the index file every time.
Cost vs benefit: is llms.txt worth it?
This is the real decision, so here it is without decoration.
llms.txt file |
Markdown twins of key pages | Rewriting first paragraphs | |
|---|---|---|---|
| Time to ship | 30 minutes | 1-3 days | 1-2 days for 10 pages |
| Ongoing cost | Update when pages change | Keep in sync on publish | None |
| Evidence it affects citation | None public | Indirect (bots fetch pages, not index files) | Strongest (models extract early passages) |
| Downside risk | Near zero | Duplicate content if canonicals are wrong | Near zero |
| My priority | Last | Middle | First |
My blunt view: I wouldn't pay anyone to write your llms.txt, and I wouldn't buy a tool whose main pitch is generating one. It's a text file. If a vendor claims it will "get you into ChatGPT," ask them for the log data and the controlled prompt test. They won't have it.
But I also wouldn't skip it. It's 30 minutes, it can't hurt you, and if a provider ever does announce support, you're already there. That's what a cheap option looks like. You buy it because it's cheap, not because you expect it to pay out.
One caveat worth repeating: if your robots.txt blocks GPTBot or ClaudeBot, the whole question is moot. A crawler that respects your block won't fetch /llms.txt either. Check that first, before you spend a minute on the index file.
What actually moves AI citations instead
I won't repeat the full tactics list from my LLM SEO article, but the order matters, so here's the short version: answer the question in the first two sentences, put checkable facts where adjectives used to be, keep one idea per section, and make sure the crawlers can reach the page at all.
Every one of those affects the pages that bots demonstrably fetch. llms.txt affects one file that they rarely fetch. That ratio is the whole argument.
And measure the outcome, not the proxy. Most AI clicks that do happen arrive with no referrer and land in Direct / None in GA4, so "no AI traffic in my reports" isn't evidence of anything either.
Frequently asked questions
Does llms.txt work for getting cited by ChatGPT?
There's no public evidence that it does. OpenAI hasn't said it reads llms.txt when building answers, and log data on typical sites shows the file is fetched rarely, if at all. Citation depends on the pages themselves.
Does Google use llms.txt?
Google has said it doesn't. John Mueller compared it to the keywords meta tag, and Gary Illyes said Google doesn't support it. Google's AI features use the normal Search index, crawled by Googlebot.
How can I tell if AI crawlers read my llms.txt?
Grep your raw server logs for requests to /llms.txt and group them by user agent, then verify the IPs against vendor-published ranges. For a stronger signal, list one canary URL only in llms.txt and watch whether any bot requests it.
Can llms.txt hurt my SEO? Not in any way I've seen. It's a static text file that search engines treat like any other URL. The only realistic risk comes from markdown twins without proper canonical handling, not from the index file.
Should I put llms-full.txt on my site too? Only if you have documentation people will feed into coding tools, where the full-text version is genuinely handy. For a marketing site with 40 pages, it adds maintenance and gives you nothing measurable.
How long should I wait before judging the results? At least six weeks between baseline and re-test, with three runs per prompt per engine. Anything shorter or with single runs will mostly measure the randomness of AI answers.
Next steps
Does llms.txt work? As a delivery mechanism to the engines you care about, nobody has shown it, and the providers that spoke up said no. As a 30-minute hedge, it's fine. Ship it, plant a canary, and then stop thinking about it.
Put your real effort into the pages the bots already fetch every day. If you want to see what those crawlers find when they get there, AI Visibility shows you page by page. If you want me to run the log analysis and the prompt test for you and tell you what to fix first, that's a custom project.
Sources and further reading - The llms.txt proposal (llmstxt.org) - OpenAI crawlers and user agents (OpenAI) - Google's common crawlers, including Google-Extended (Google) - AI features and your website (Google Search Central)
Want to know what AI crawlers actually read on your site?
AI Visibility crawls your pages the way an LLM does and shows what's missing: markdown twins, structured data, pages a model can't parse. Free plan, one site, no credit card.
Check My AI Visibility