Free tool - the llms.txt reality check

Free llms.txt Checker
& Live Validator

Most llms.txt validators only inspect pasted text. Citevera tests the deployed file: HTTP response, crawler accessibility, structure, content, and linked URLs - the failure modes paste-in linting cannot see.

How the live checker works

Four layers, checked in order, each with its own verdict:

  • 1. Serves - we request /llms.txt with a crawler user-agent and record the full HTTP reality: status, redirect chain, final content-type, HTML-in-disguise.
  • 2. Reachable - your robots.txt, parsed with standard precedence rules: may GPTBot, ClaudeBot, PerplexityBot, and Google-Extended fetch the file and your site root?
  • 3. Well-formed - the de-facto llmstxt.org shape: one H1 title, section headings, valid Markdown links. No invented strictness.
  • 4. Useful - we sample up to ten linked URLs and verify they resolve, check the word count, and look for placeholder boilerplate.

Why a pasted llms.txt can pass but fail online

The file on your laptop and the response your server gives a crawler are different things. The failure modes we see live in the gap between them: a server that answers /llms.txt with a 200 that is actually your homepage (on WordPress, usually plain permalinks leaving the rewrite rule unexpressed - or a rewrite that was never flushed after setup); a correct file served with a text/html content-type; a WAF or bot-protection layer that challenges crawler user-agents while your browser sails through; a robots.txt rule that quietly disallows the path for the exact crawlers the file is written for; links that rotted since the file was generated; and template boilerplate that was never replaced. A paste-in validator cannot see any of these, because none of them live in the text.

Example result

A real check of a WordPress site, run with this tool on 2026-08-04 (domain removed). This is the homepage-in-disguise case from the section above:

Server actually serves /llms.txt
Fail

Your server returns your homepage, not llms.txt. The request for /llms.txt came back as your homepage HTML - AI crawlers asking for your llms.txt get your homepage in disguise.

Evidence
  • Final content-type: text/html

Fix: On WordPress this is almost always plain permalinks: Settings -> Permalinks -> pick "Post name" (pretty permalinks), then re-save.

AI crawlers allowed to reach it
Pass

robots.txt permits GPTBot, ClaudeBot, PerplexityBot, and Google-Extended to fetch /llms.txt and your site root.

Well-formed llms.txt
Not measured

Not measured: there was no served llms.txt content to parse.

Actually useful content
Not measured

Not measured: there was no served llms.txt content to evaluate.

Understanding your results

  • Pass - we completed the check and the layer behaves correctly.
  • Fail - we completed the check and found a problem, with the evidence and a fix.
  • Not measured - we could not complete the check (a timeout, a block, or a prior layer left nothing to evaluate). This is a statement about our fetch, never a failure of your site - the two are kept strictly separate.

Common problems and fixes

FindingFix
Homepage returned instead of llms.txtRe-save permalinks (WordPress: Settings -> Permalinks -> Post name) and clear any page cache, then re-run.
Served as text/htmlServe the route as text/plain or text/markdown - the content is right, the content-type tells crawlers it is a web page.
Broken links in the fileReplace with the pages' canonical URLs; regenerate the file if it was created before a URL restructure.
Crawler blocked by robots.txtReview the matched robots group we quote in the evidence - the fix is scoping or removing that specific rule.

Frequently asked questions

Where does llms.txt live?

At your site root: yourdomain.com/llms.txt. Like robots.txt, the path is the convention - a file in a subdirectory will not be found by tools that look for it.

Is llms.txt required for AI visibility?

No. It is a proposed convention (llmstxt.org), not a standard, and adoption by AI engines is emerging and only partially confirmed. It is a low-cost way to hand LLM tools a curated index of your site - useful, not mandatory.

What is the difference between llms.txt and robots.txt?

robots.txt is access control: which crawlers may fetch which paths. llms.txt is curation: a Markdown index telling AI tools which pages matter and what your site is about. They complement each other - and robots.txt can accidentally block crawlers from reading your llms.txt, which is exactly what layer 2 of this checker tests.

Why does my llms.txt pass a validator but fail this check?

Paste-in validators only see the text you paste. This checker fetches the deployed URL, so it catches what happens on the wire: servers that return your homepage instead of the file, HTML content-types, WAF challenges served to crawler user-agents, and links that no longer resolve.

Does Google use llms.txt?

No. Google has not adopted llms.txt and it is not a ranking factor. It remains an optional convention aimed at LLM tools and AI assistants, not at Google Search.

Once your llms.txt serves correctly, the next question is whether AI crawlers can reach the rest of your site - check any page against every major AI crawler, with the exact robots.txt rule that decides each verdict.

Built by Paul, founder of Citevera · Published 2026-08-04 · Updated 2026-08-04 · Agent list verified 2026-08-04 · Fetches as Citevera-Scanner · New here? What is llms.txt