Free Tool
llms.txt Validator
Paste your llms.txt below and this free tool checks its structure against the llmstxt.org specification: one H1 title, an optional blockquote summary, and H2 sections of markdown links. You get every error and warning with a line number, instantly, with no signup.
An llms.txt that does not follow the expected shape is worse than none: a parser that hits malformed structure may give up on the whole file. Only around 13% of UK SME sites have an llms.txt at all (our audit data), and a good share of those that do would fail the checks below. Yours lives at https://yourdomain.com/llms.txt. No file there yet? Start with our llms.txt generator.
Paste your llms.txt
Open your file at /llms.txt in a browser, select all, copy, paste here. Nothing you paste leaves your browser.
Every check this validator runs
The full rubric, published so the verdict is auditable. The spec is deliberately small, which is the point of the format: a markdown file simple enough for any LLM tooling to parse.
| Check | Severity | Why it matters |
|---|---|---|
| Exactly one H1 (# Name), and it is the first content line | Error | The H1 is the only required element in the spec. It names the site for the model. |
| Section list items are markdown links: - [title](url) with optional : description | Error | Sections are defined as link lists. A bullet that is not a link cannot be followed. |
| Link URLs are non-empty | Error | An empty href is dead weight for any parser. |
| Blockquote summary (> ...) directly after the H1 | Warning | Optional in the spec but it is the one-line answer an LLM quotes about you. |
| H2 sections present, each containing at least one link | Warning | A file with no sections tells the model nothing about where your key content lives. |
| No H3 or deeper headings | Warning | The spec only defines H1 and H2. Deeper levels are ignored or misread. |
| Link URLs are absolute (https://...) | Warning | The file is read out of context, so relative paths are ambiguous. |
| No bare URLs pasted outside link syntax | Warning | Bare URLs lose the title and description that make a link useful to a model. |
| ## Optional section noted when present | Info | The spec gives this section special meaning: it can be skipped when context is short. |
| Check | Severity | Why it matters |
|---|---|---|
| Exactly one H1 (# Name), and it is the first content line | Error | The H1 is the only required element in the spec. It names the site for the model. |
| Section list items are markdown links: - [title](url) with optional : description | Error | Sections are defined as link lists. A bullet that is not a link cannot be followed. |
| Link URLs are non-empty | Error | An empty href is dead weight for any parser. |
| Blockquote summary (> ...) directly after the H1 | Warning | Optional in the spec but it is the one-line answer an LLM quotes about you. |
| H2 sections present, each containing at least one link | Warning | A file with no sections tells the model nothing about where your key content lives. |
| No H3 or deeper headings | Warning | The spec only defines H1 and H2. Deeper levels are ignored or misread. |
| Link URLs are absolute (https://...) | Warning | The file is read out of context, so relative paths are ambiguous. |
| No bare URLs pasted outside link syntax | Warning | Bare URLs lose the title and description that make a link useful to a model. |
| ## Optional section noted when present | Info | The spec gives this section special meaning: it can be skipped when context is short. |
View as plain-text Markdown
### llms.txt validator rubric: every check, its severity and why it matters | Check | Severity | Why it matters | | --- | --- | --- | | Exactly one H1 (# Name), and it is the first content line | Error | The H1 is the only required element in the spec. It names the site for the model. | | Section list items are markdown links: - [title](url) with optional : description | Error | Sections are defined as link lists. A bullet that is not a link cannot be followed. | | Link URLs are non-empty | Error | An empty href is dead weight for any parser. | | Blockquote summary (> ...) directly after the H1 | Warning | Optional in the spec but it is the one-line answer an LLM quotes about you. | | H2 sections present, each containing at least one link | Warning | A file with no sections tells the model nothing about where your key content lives. | | No H3 or deeper headings | Warning | The spec only defines H1 and H2. Deeper levels are ignored or misread. | | Link URLs are absolute (https://...) | Warning | The file is read out of context, so relative paths are ambiguous. | | No bare URLs pasted outside link syntax | Warning | Bare URLs lose the title and description that make a link useful to a model. | | ## Optional section noted when present | Info | The spec gives this section special meaning: it can be skipped when context is short. |
“llms.txt is an emerging convention, not a ranking lever, and adoption by the AI platforms themselves is still uneven. Have one because it is cheap, correct and useful to the tools that do read it, but do not expect it alone to change how often you are cited. It is one signal of five.”
Common questions
What does a valid llms.txt look like?
One H1 with your site name, an optional blockquote summary, optional plain prose, then H2 sections ("## Key pages", "## Docs") each holding a bulleted list of markdown links with short descriptions. Press "Load a valid example" above to see one.
Where does the file go?
At your domain root: https://yourdomain.com/llms.txt, served as plain text. Some sites also publish llms-full.txt with expanded page content, but start with the standard file.
Do AI platforms actually read llms.txt?
Honestly: support is partial and changing. Several AI dev tools and crawlers read it, the big consumer platforms have not all committed. We publish one ourselves because the cost is near zero and the file doubles as a clean machine-readable site summary. Treat it as cheap hygiene, not a growth lever.
Validator says valid, am I done?
Structurally, yes. Whether the content is right (the pages you list, how you describe yourself) is the editorial half, and whether AI engines can crawl those pages is the access half. Our free audit checks both alongside the rest of the Five Signals.
Adam Parker
Founder, Rank4AI
Adam is the founder of Rank4AI, specialising in AI search visibility. He helps businesses get found across ChatGPT, Gemini, Perplexity, and AI Overviews through technical optimisation and strategic content.
Last reviewed: 11 June 2026
llms.txt is one signal. Check all five.
Our free audit tests llms.txt, schema, crawler access, entity clarity and trust pages across ChatGPT, Claude, Gemini, Perplexity, Copilot and Google AI.
Get a Free AI Search Visibility Audit →