Capyo
en
Install free
← All guides

llms.txt checker: how to validate an llms.txt file

How to run an llms.txt checker: status, reachability, link coverage against your sitemap, crawler access — and what engines actually do with the file.

Published September 27, 2026 · 5 min read

An llms.txt checker validates four things about your file — that /llms.txt returns successfully, that the content served is the file you wrote, that its links cover the pages that matter, and that nothing in robots.txt blocks the crawlers who would read it — because a file that fails any one of those is decoration.

Most broken llms.txt files fail quietly: the URL returns the default file, a theme update wiped the template, or a crawl-blocking rule went in months ago. The checks below run in order, cheapest first.

The six checks, in order

CheckHow to run itWhat a failure means
File reachableOpen /llms.txt in a plain browser tab404 or error: no file is being served at all
Served file is yoursCompare what loads with what you previewedYou are serving Shopify’s default, not your file
It lists productsScan the body for product linksThe file is a stub; crawlers learn nothing
robots.txt allows AI crawlersRead /robots.txt and look for the AI user agentsThe file exists but will never be read
agents.md existsCheck /agents.mdSome crawler conventions expect it; missing is a gap
Storefront publicFetch a product page without cookiesA challenge page means crawlers see nothing either

Two traps account for most failures. The first: you previewed a file, wrote it, and a later theme edit removed the template — the URL still answers, with content you never wrote. The second: robots.txt gained a blanket rule during some other project, and the llms.txt is perfect, unread.

The sitemap is the reference list of what exists; llms.txt is the shortlist of what matters. Compare the two and you get a coverage question with a concrete answer:

  1. Every link resolves. A 404 in the file teaches the crawler your map is stale.
  2. Representative products, not all products. A shortlist of your strongest or most typical items beats a dump of four thousand URLs.
  3. Collections are present. They are how an engine understands the shape of your catalog.
  4. Policies are present. Shipping, returns and contact are the questions that follow every shopping question.
  5. Descriptions are current. Price mentions and availability claims go stale first.

If your sitemap contains pages no crawler could usefully quote — pure filters, pagination, internal search results — their absence from llms.txt is correct. Coverage is about judgment, not completeness.

A checker validates the file, not the outcome

Passing all six checks means the file is reachable, correct, linked and readable. It says nothing about whether any engine will cite you — that depends on the pages themselves and on factors no file can supply.

What engines actually do with it

Realistic expectations, in three lines: some crawlers will fetch /llms.txt as a matter of routine, others may ignore it entirely, and none of them are obliged to. The file’s value is asymmetric — cheap to maintain, painful to discover missing after a theme update. That asymmetry is why it belongs in a daily check rather than a launch checklist.

The things that matter more than the file itself stay constant: robots.txt permissions, pages that render without JavaScript, and product facts written as text. When those regress, they are usually what moved your visibility, not the file.

From one-off check to routine

A workable cadence: the six checks daily (they are cheap and catch the two traps above automatically), a link-coverage pass against the sitemap whenever the catalog structure changes, and the outcome review weekly — which tracked questions cited you, mentioned you or left you out, plus the visits and orders each assistant sent.

Capyo: AI Visibility & GEO runs that routine: six daily crawler checks with a heads-up when something blocks the crawlers, a product-rich llms.txt you preview before writing and remove in one click, and a weekly report on 20 tracked questions (100 on Pro) with referral visits and orders from day one. The rest of this site’s checkers live at the free tools hub.

How do I check my llms.txt file?

Open /llms.txt in a plain browser tab and confirm it returns the content you wrote — not a 404 and not Shopify default text. Then confirm it lists products, that /robots.txt allows the AI crawlers, and that every link inside the file resolves.

Why does my llms.txt show different content than I wrote?

Almost always because the template was removed or overridden — a theme update or an app edit can quietly drop it — so the URL keeps answering with the platform default. Compare the served file with your preview to confirm.

How big should an llms.txt be?

Big enough to shortlist your representative products, collections and policies with honest descriptions, and no bigger. The file is a map, not an archive: everything that belongs in a sitemap does not belong here.

Does robots.txt affect my llms.txt?

Yes, indirectly and severely. If robots.txt disallows the AI crawlers, your llms.txt is unread no matter how good it is — which is why crawler permission is part of the check, not a separate chore.

Do search engines and AI crawlers use the file the same way?

No. Search crawlers work from sitemaps and links; llms.txt targets language-model crawlers looking for a quick orientation to your store, and even among those, adoption varies. It is cheap insurance rather than a requirement.

Free tool

llms.txt generator and checker

Build an llms.txt for your store and check the file you already have, line by line. Runs entirely in your browser.

Open the free tool

Capyo is an independent app, not affiliated with or sponsored by OpenAI, Perplexity, Anthropic, Google or Shopify. "ChatGPT" and "OpenAI" are trademarks of OpenAI. "Perplexity" is a trademark of Perplexity AI. Visibility figures are a weekly sample of API answers and can vary.