Free tool llms.txt checker and validator
Paste the contents of your /llms.txt. The validator walks through it the way the llmstxt.org format describes, and lists every problem with its line number: missing title or summary, links a parser cannot read, relative and duplicate URLs, empty sections.
- Issues with line numbers
- llmstxt.org format
- Runs locally
Paste llms.txt, read the issues
Open https://your-site.com/llms.txt, copy everything and paste it here. The sample has three deliberate mistakes; the list updates as you type.
Markdown. A byte order mark at the start is allowed.
Sections
3
H2 headings.
Links
6
List items a parser can read.
Errors
0
Break the format.
Warnings
3
Readable, but likely to be misread.
Issues
- WarningLine 10Text after the link without a colon. Notes must follow “: ”, as in “- [Title](URL): note”.
- WarningLine 11“/docs/webhooks.md” is a relative URL. Tools that read llms.txt on its own cannot resolve it; the proposal’s examples use full URLs.
- WarningLine 16https://brightdesk.example/docs/quick-start.md is already listed on line 9.
- NoteLine 18The Optional section has 1 link(s). By convention, tools may skip these when they need a shorter context.
Sections at a glance
| Section | Links | Other content | Line |
|---|---|---|---|
| Docs | 3 | Links only | 7 |
| Product | 2 | Links only | 13 |
| Optional | 1 | Links only | 18 |
Version v1.0Updated Update history
Errors, warnings and notes
Four numbers sum the file up; the list explains each finding.
Errors
The file does not match the format at all: no H1, an H1 that is not first, an HTML page instead of Markdown, or links with no usable URL. Fix these first.
Warnings
A parser can read the file, but something is likely to be lost: links without “: ” before the note, relative URLs, duplicate links, prose inside sections, empty sections, a missing summary.
Notes
Not wrong, worth knowing: the Optional section may be skipped, “*” bullets are not read by the reference parser, no Markdown page versions.
Sections at a glance
One row per H2: how many links it has and whether it also holds other text. A section full of prose usually means content that belongs in the details paragraph.
Passing the validator means the file follows the proposal. It says nothing about whether any AI system reads it: no major AI company has confirmed that its crawlers use llms.txt.
Three steps
Works for files you wrote by hand, generated by a plugin or exported by a docs platform.
-
1
Copy the live file
Open /llms.txt on your site in a browser. If you get a web page or a 404, that is the first problem to fix.
-
2
Paste and scan
Errors and warnings come with line numbers. Click into the box and use your editor’s go-to-line to find them in the original.
-
3
Fix and recheck
Correct the file, paste again, repeat until only OK and notes remain. To rebuild from scratch, use the llms.txt generator.
The llmstxt.org format, line by line
The proposal (llmstxt.org, September 2024) fixes the order of a file. The validator follows it and the regular expression of its reference parser for links.
- First: an H1 with the name (required). Optional byte order mark before it
- Then: a blockquote with a short summary, then any Markdown except headings
- Then: H2 sections, each a list of
- [name](url)items with optional: notes - A section named
Optionalholds links that can be skipped. Everything else here (relative URLs, duplicates) is good practice, not a rule of the proposal
| Line | Read as | Result |
|---|---|---|
# Brightdesk | Title (H1) | OK if first |
> Help desk software… | Summary | OK if right after the H1 |
- [Pricing](https://…/pricing): Plans | Link with note | OK |
- [API](https://…/api.md) REST endpoints | Link, note without colon | Warning |
- [Webhooks](/docs/webhooks.md): … | Link with relative URL | Warning |
* [Blog](https://…/blog) | Link with * bullet | Note |
### Guides | H3 heading | Warning |
Pricing | https://…/pricing | Plain text in a section | Warning |
The three mistakes in the sample
The sample file parses, but three lines would lose information. Here is each one and the fix.
| Line | Problem | Fix |
|---|---|---|
| 10 | Note after the API link has no colon, so a parser drops it | …api.md): REST endpoints and authentication |
| 11 | /docs/webhooks.md is relative | https://brightdesk.example/docs/webhooks.md |
| 16 | Quick start is listed again under Product (first on line 9) | Delete the duplicate or point it to a different page |
The Optional note on line 18 is informational: the Blog link is fine where it is.
Where llms.txt files usually break
Most broken files come from hand edits or from tools that write their own variant.
Served as HTML
A single-page app or a catch-all route returns the home page at /llms.txt. Check the raw response, not just the browser view.
Prose instead of lists
Paragraphs under H2 headings are ignored by the reference parser. Keep sections as link lists and put context in the notes.
Links without the colon
- [Title](URL) note looks fine to a person, but the parser keeps only title and URL. Write : note.
Nested headings
H3 subsections are not in the format. Flatten them into separate H2 sections.
Check it against real crawler traffic
A valid file is the easy part. Whether AI crawlers request it is something your traffic can show.
Crawl compliance
Your robots.txt and llms.txt are fetched daily and compared with what actually crawled you.
Learn moreAI crawler report
AI crawlers identified by name and behaviour, apart from human visits.
Learn moreAI referrals
Visitors arriving from ChatGPT, Perplexity and other assistants on their own line.
Learn morellms.txt validator questions
Still have a question?
Chat with the team behind TapCub — we usually reply within a few hours on business days.
How do I check if my llms.txt is valid?
Paste it above. With no errors or warnings you get a single OK, which means the file follows the llmstxt.org format: H1 first, summary blockquote, then H2 sections of Markdown links.
What is the required format of llms.txt?
Only the H1 with the site or project name is required. The proposal then expects a blockquote summary, optional non-heading Markdown, and H2 sections whose items are - [name](url) with an optional : notes.
Must llms.txt links be absolute URLs?
The proposal does not say so explicitly, but all its examples use full URLs, and a tool reading the file out of context cannot resolve /docs. The validator therefore warns on relative links.
Why is my note not showing up?
Usually the colon is missing. The reference parser reads - [Title](URL): note; without the colon the text after the link is dropped.
Does a valid llms.txt help my site appear in AI answers?
There is no public evidence that it does. Google has said llms.txt is not needed for Google Search, and OpenAI’s and Anthropic’s crawler docs do not mention it. Validity only means tools that do read it will parse it correctly.
Can it check llms-full.txt?
It checks the llms.txt structure. llms-full.txt is a platform convention for full documentation text with no fixed format, so most of these rules do not apply to it.
Is my file uploaded?
No. Everything runs in your browser, and this tool has no share link, so nothing you paste leaves the page.
Update history
New features, fixes and data refreshes for this tool, newest first.
-
· v1.0
LaunchedFirst release.
Missing something or found an error? Tell us — requests that come up often go into the next update. All tool updates
See who requests your llms.txt
With TapCub, AI crawler visits are recorded separately from people, so you can see whether anyone reads the file you just checked.