A free llms.txt validator. Check a live URL or paste a draft, and the checker parses the file against the llmstxt.org specification: H1 title, blockquote summary, detail blocks and H2 link lists. You get a score out of 100, a grade, and the exact lines to fix.
Free · no sign-up · URL or pasted content
What is an llms.txt checker?
An llms.txt checker is a tool that tests whether an llms.txt file follows the llmstxt.org specification. This free validator fetches the file from your site, or reads a draft you paste, and checks five rules: Markdown format, one H1 title, a blockquote summary, heading-free detail blocks and H2 link lists. It returns a score out of 100, a grade and line-by-line fixes, with no sign-up.
The five rules the validator checks
Each rule maps to a requirement in the llmstxt.org specification. Every finding is marked as an error, a warning or a note.
Markdown format
The file is plain markdown that parses cleanly, with nothing the spec doesn't allow.
H1 title
Exactly one H1 with the site or project name, at the top. It is the only required section.
Blockquote summary
A short > summary directly under the H1, so the links that follow have context.
Detail blocks
Optional paragraphs or lists after the summary, with no headings before the first H2.
H2 file lists
Each H2 section holds - [name](url): note items, and a section named Optional comes last.
A 0 to 100 score with an A to F grade, findings grouped by severity, and a rendered preview of the file.
How to validate an llms.txt file
Check, fix, publish, and check again.
Pick an input mode
Choose Check by URL to validate a file that is already live, or Paste content to validate a draft before you publish it.
Enter your URL or file
Type a bare domain, a site root, or a direct /llms.txt URL — the protocol is added for you. In paste mode, drop the full markdown into the text box.
Run the check
Press Check or Validate. The file is fetched, split into specification blocks, and scored against the five structural rules.
Read the score and grade
The score ring shows weighted compliance out of 100 with a letter grade, plus how many rules passed, warned, or failed.
Work through the findings
Each finding names the rule, the line number, and the exact change to make. Expand a rule card to see every detail behind its status.
Fix, publish, and re-check
Apply the fixes, upload the file to your site root so it is served at yourdomain.com/llms.txt, then run the URL back through the checker to confirm it passes.
How to read the llms.txt report
Start with the errors, then the warnings. Notes are suggestions, not failures.
Score and grade
A weighted score from 0 to 100 with a letter grade from A to F. Each of the five rules carries part of the weight.
Passed, warned, failed
How many of the five rules the file passes outright, passes with warnings, or fails.
Errors
Breaks the specification, such as a missing H1 or link lines that aren't list items. Fix these first.
Warnings
Allowed but likely to confuse a parser, such as a missing summary or an Optional section that isn't last.
Line numbers
Each finding points at the line to change, so you can fix the file in any text editor.
Preview
A rendered view of the title, summary and link sections, the way a program would read them.
Wat is llms.txt?
llms.txt is a markdown file published at the root of a website — jewebsite.nl/llms.txt — that gives large language models a short, curated map of the site. Instead of asking a model to crawl navigation, scripts and boilerplate, the file hands it a title, a summary and a list of the pages that actually matter.
The format is defined by the specification at llmstxt.org. It is deliberately small: only H1 and H2 headings exist, and the body of each section is a list of links. That constraint is what makes the file both human-readable and trivially parseable by a program.
The spec also describes a companion convention, /llms-full.txt, which contains the expanded content itself rather than an index of links.
De vereiste volgorde volgens de specificatie
An optional byte-order mark at the very start of the file.
An H1 with the name of the project or site — the only required section.
A blockquote with a short summary containing the key information needed to understand the rest of the file.
Zero or more markdown blocks — paragraphs, lists, tables — of any type except headings.
Zero or more sections delimited by H2 headers, each containing a file list of `- [name](url)` items with optional `: notes`.
A section named exactly “Optional” has special meaning: its URLs may be skipped when a shorter context is needed.
De 5 validatieregels waarop we controleren
Elke controle komt direct overeen met een clausule in de llmstxt.org-specificatie. Elke regel krijgt een score en het gewogen
totaal vormt je compliance-score en rapportcijfer.
Markdown-indeling markdown-format
Het bestand moet markdown zijn, en er mogen alleen H1- en H2-koppen in het formaat voorkomen.
Lever platte markdown op bij /llms.txt — geen HTML, geen YAML front-matter, geen H3–H6 koppen. Alles dieper dan een H2 valt buiten de specificatie.
H1-projecttitel h1-title
Een H1 met de naam van het project of de website. Dit is het enige verplichte onderdeel.
Start het bestand met een enkele `# Jouw Websitenaam` regel. Dit is het enige verplichte deel van de specificatie en er mag er precies één van zijn.
Blockquote-samenvatting blockquote-summary
Een blockquote met een korte samenvatting van het project, met de belangrijkste informatie die nodig is om de rest van het bestand te begrijpen.
Plaats een `> samenvatting van één alinea` direct onder de H1. Leg uit wat de site is en voor wie deze bedoeld is, zodat een model elke link daaronder kan interpreteren.
Detailblokken zonder koppen project-details
Nul of meer markdown-secties (bijvoorbeeld alinea's, lijsten, tabellen) van elk type behalve koppen, met gedetailleerdere informatie.
Voeg optionele context toe na de samenvatting in de vorm van alinea's, lijsten of tabellen. Gebruik hier geen kop — de volgende kop in het bestand moet je eerste H2-sectie zijn.
H2-secties met bestandslijsten file-lists
Nul of meer markdown-secties afgebakend door H2-koppen, met bestandslijsten van URL's waar meer details beschikbaar zijn.
Groepeer links onder `## Sectienaam` koppen, één link per regel als `- [Naam](https://absolute-url): optionele notities`. Een sectie genaamd exact `Optional` kan worden overgeslagen wanneer een kortere context nodig is, dus houd deze als laatste.
Hoe schrijf je een compliant llms.txt
Implementatiehandleiding
Zes beslissingen die het bestand binnen de specificaties houden.
Begin met één H1. Gebruik de naam van je site of project — niets erboven behalve een optionele byte-order mark. Dit is het enige onderdeel dat de specificatie vereist.
Voeg de blockquote-samenvatting toe. Eén `>` alinea direct onder de H1 waarin wordt uitgelegd wat de site is, zodat de onderstaande links context hebben.
Houd detailblokken vrij van koppen. Extra alinea's, lijsten of tabellen zijn toegestaan na de samenvatting — maar geen koppen tot je eerste H2.
Groepeer links onder H2-secties. Noem secties naar waar een model naar zou zoeken: Docs, Gidsen, API, Blog. Alleen H1 en H2 bestaan in dit formaat.
Schrijf de bestandslijst-items exact over. `- [Paginanaam](https://example.com/pagina): korte opmerking`. Gebruik absolute URL's zodat een model ze kan omzetten zonder basis-URL.
Zet "Optioneel" als laatste. Een sectie met exact de titel Optioneel kan worden overgeslagen wanneer een kortere context nodig is. Reserveer deze voor secundaire pagina's en houd hem aan het einde.
Het specificatiemodel
Het canonieke voorbeeld gepubliceerd op llmstxt.org — kopieer het en vul je eigen waarden in.
# Title
> Optional description goes here
Optional details go here
## Section name
- [Link title](https://link_url): Optional link details
## Optional
- [Link title](https://link_url)
· Save it as llms.txt and upload it to your site root so it is served at jouwdomein.nl/llms.txt, then run it back through this checker.
The specification this checker follows is published and maintained at llmstxt.org.
What this llms.txt validator doesn't do
It checks structure against the specification, not whether the pages you list are your best ones or still load.
It doesn't fix the file for you; each finding says what to change.
A perfect score doesn't mean AI engines will read the file or cite you. llms.txt is a voluntary convention.
In URL mode it reads what your server returns at /llms.txt. If a firewall or bot protection blocks the request, paste the file instead.
llms.txt is a markdown file published at the root of a website that gives large language models a short, curated map of the site. The specification at llmstxt.org defines its structure: an H1 with the project or site name, a blockquote summary, optional heading-free detail blocks, and H2 sections containing file lists of the form - [name](url): optional notes.
Where does the llms.txt file have to be located?
At the root of your domain, served at yourdomain.com/llms.txt. The specification also describes a companion file, /llms-full.txt, which holds the expanded content itself instead of an index of links. This checker looks for both when you validate by URL.
What does this llms.txt checker validate?
Five structural rules drawn from the specification: that the file is markdown using only H1 and H2 headings, that it opens with a single H1 project title, that a blockquote summary follows it, that any further detail blocks contain no headings, and that each H2 section contains a file list of link items. Each rule is weighted, and the total becomes a score out of 100 with a letter grade.
Is the blockquote summary required in llms.txt?
The H1 with the project name is the only section the specification marks as required. The blockquote summary is described as part of the expected structure and carries the key information needed to understand the rest of the file, so this checker treats a missing summary as a problem worth fixing rather than a hard failure of the format.
What does the Optional section mean in llms.txt?
A section named exactly Optional has special meaning in the specification: the URLs listed under it may be skipped when a shorter context is needed. Use it for secondary pages such as contact, legal and policy pages, and keep it as the last section in the file.
What is the difference between llms.txt and llms-full.txt?
llms.txt is a compact index — a title, a summary, and lists of links to the pages that matter. llms-full.txt is the companion convention that contains the full content itself in one file, for cases where a model should read the material rather than follow links to it.
Does llms.txt replace robots.txt or a sitemap?
No. robots.txt tells crawlers what they are allowed to fetch and a sitemap lists every indexable URL. llms.txt does neither — it is a curated summary that tells a language model which content is worth reading and how the site fits together. They serve different purposes and can all coexist at the site root.
Do I need an account to use this llms.txt checker?
No. The checker is free and requires no sign-up. You can validate a live URL or paste the contents of a draft file, and the results are returned to you without being published anywhere.
How do I validate an llms.txt file?
Enter your site address (the checker fetches /llms.txt) or paste the file's contents, then run the check. Fix each error and warning it lists, publish the file at your site root, and run the check again until the score is where you want it.
Is this llms.txt validator free?
Yes. The checker is free and needs no account. It works on a live URL or on pasted content, so you can test a draft before you publish it.
More tools for AI crawlers
Build the file, set crawl rules, and see what AI agents receive from your pages.
A valid llms.txt is a map. AI Rank Lab shows whether ChatGPT, Claude, Gemini, Perplexity and Google's AI answers actually mention and cite you.
Brand Visibility
Run the prompts your buyers ask on six AI engines and record whether your brand is mentioned, where, in what tone, and which URLs are cited. Every run is stored so you can compare over time.
ChatGPT, Claude, Gemini, Perplexity, AI Overviews and AI Mode