Is your llms.txt valid, and does it cover your pages?
This free llms.txt validator checks the text of an llms.txt file against the format proposed at llmstxt.org and, if you also paste your sitemap, lists the pages the file leaves out. It runs in your browser and nothing you paste is sent anywhere. A valid file is not a ranking or citation factor: Google says it does not use llms.txt, and nothing here shows that any AI system reads it.
Part 1
Check your file
Paste the file, and optionally a sitemap, then read the result.
1. Is your llms.txt well formed, and does it cover your pages?
Open yourdomain.com/llms.txt in a browser, select all, copy it and paste it below. Add your sitemap's contents if you want to see which pages are missing. Each check uses one of your free tool runs.
2. How do I copy my live file and sitemap?
Open each address in a browser tab and copy what you see.
- Open
yourdomain.com/llms.txt, press Ctrl+A (Cmd+A on a Mac), then copy. - If you see a web page with your menu, not plain text, the file is missing and your server is returning a page instead. The validator will report it as HTML.
- Open
yourdomain.com/sitemap.xmlthe same way. If it is a sitemap index, open each sitemap it lists and paste them one after another.
Confirmed The tool reads only what you paste. It cannot fetch your site, because browsers block pages from reading other sites' files
Part 2
Learn from real files
What 92 real llms.txt files look like, the problems that recur, and how to write and serve a good one.
3. What do 92 real llms.txt files look like?
Most are tidy documents with an H1, a summary and a handful of sections, but nearly half contain a list item that is not a link, about one in five repeats an address, and the largest is a sitemap in all but name.
To see how the format is used in practice, this validator's rules were run over the 92 llms.txt files collected on 21 and 22 October 2026 from the same 500 websites as the AI-crawler access audit. These are the files that passed a basic structural test (readable text, and an H1 or at least one Markdown link). Every one was saved as received, so each count below can be reproduced from the saved files.
| What was found | Files | Share of 92 |
|---|---|---|
| Starts with an H1, as the proposal requires | 87 | 94.6% |
| Has a blockquote summary right after the H1 | 73 | 79.3% |
| Has at least one H2 section of links | 85 | 92.4% |
| Uses an "Optional" section | 24 | 26.1% |
| Has one or more list items that are not in the form [name](url) | 42 | 45.7% |
| Has at least one empty H2 section | 22 | 23.9% |
| Has list items before the first H2 section | 22 | 23.9% |
| Lists the same address more than once | 19 | 20.7% |
| Uses headings deeper than H2 | 15 | 16.3% |
| Has more than one H1 | 10 | 10.9% |
| Uses a relative link instead of a full address | 3 | 3.3% |
| Links to a different host name, including subdomains | 46 | 50.0% |
| Passes with no failure | 87 | 94.6% |
| Passes with no failure and nothing to check | 28 | 30.4% |
The typical file is 8,581 bytes long, holds 34 links under its H2 sections and has 8 sections (medians). The spread is wide: six files list more than 1,000 links, and the largest lists 12,432, which is a sitemap wearing an llms.txt's clothes. Five of the 92 fail a hard check, two because they have no H1 and three because the H1 is not the first line.
Directional A purposive sample of prominent sites, not the web; counts follow this validator's rules, which are stricter than the audit's own structural test, so they will not match the audit's published figures. The audit's published count of detected files is 100 of 500 (20.0%), under a strict content-type rule. The raw files are not yet published on this site
4. Which problems come up most, and how do you fix them?
The commonest problems are list items that are not links, empty sections, stray lists and repeated addresses, and each has a one-line fix.
- A list item that is not a link (46%). Plain bullets give a reader nothing to follow. Turn each one into [name](url): note, or move the text into a paragraph under the H1.
- An empty section (24%). A heading with nothing under it looks unfinished. Add links or delete the heading.
- Links before the first section (24%). The proposal puts file lists under H2 headings. Add a heading such as "Pages" above them.
- The same address twice (21%). Keep it once, in the section where a reader would look first.
- Headings deeper than H2 (16%). The proposal defines H1 and H2 only. Flatten the structure, or promote the sub-headings to sections.
- More than one H1 (11%). Use one H1 for the site name and make everything else an H2.
- A missing or misplaced H1 (5%). Put the site name on the first line, starting with "# ".
- A file that is really a sitemap. Thousands of links are a list of every page, not a curated guide. Keep the pages a reader would most need and let sitemap.xml do the rest.
Directional Percentages are shares of the 92 files above and follow the validator's rules. The fixes are this article's suggestions, not a standard
5. What does a well-formed llms.txt look like?
It has one H1 with the site name, one sentence saying what the site is, and a few H2 sections of links, each with a short note saying what the page helps a reader do.
This example is for a made-up company. Paste it into the validator above to see it pass.
# Example Co
> Example Co designs and installs signs for retail chains in the United States. This file lists the pages that best explain what we do.
## Services
- [Retail signage rollouts](https://example.com/services/rollouts/): How a 40-location rollout is planned, permitted and installed
- [Sign maintenance](https://example.com/services/maintenance/): Inspection and repair plans for existing signs
## Evidence
- [Case study: a 40-store rollout](https://example.com/work/forty-store-rollout/): Scope, timeline and what went wrong
## Optional
- [Blog](https://example.com/blog/): Articles on signage rules and materials
- The H1 names the site, and nothing else sits above it.
- The blockquote is one or two sentences, written for a reader who knows nothing about you.
- Each section groups pages by purpose (services, evidence, policies), not by where they sit in your navigation.
- Each link uses a full https address and a note that says what the page does, not repeats its title.
- The Optional section holds pages that are useful but skippable, such as a blog index.
Confirmed The layout follows the format described at llmstxt.org. The notes and grouping advice are this article's suggestions
6. How should the file be served, and how do you check?
Put it at the root as /llms.txt, serve it as plain text or Markdown, and check that the response is the file and not an HTML page.
Many servers answer a request for a missing file with an ordinary HTML page and a success code, so a quick look in a browser can be misleading. From a terminal, ask for the headers:
curl -sI https://example.com/llms.txt
- The status line should be
200, not404or a redirect to your home page. - The
content-typeheader should name plain text or Markdown. A value oftext/htmlalmost always means an error page. - The body should start with your H1, which you can confirm by pasting it into the validator.
Confirmed The format proposal places the file at the site root, or at any subpath it covers. The advice on response checks is this article's own, based on the HTML pages the audit met when it asked for missing files
7. How is llms.txt different from robots.txt and sitemap.xml?
Each file answers a different question: robots.txt says what a cooperating crawler may fetch, a sitemap lists the addresses you want found, and llms.txt is a proposed curated guide to your best pages.
| File | Answers | Format | Status |
|---|---|---|---|
| robots.txt | Which paths may a cooperating crawler request? | Plain-text rules by user agent | A published standard, RFC 9309 |
| sitemap.xml | Which addresses should be found and when did they change? | XML list of URLs | A widely supported protocol |
| llms.txt | Which pages best explain this site? | Markdown with an H1, a summary and H2 link lists | A proposal; Google does not use it and no platform is shown to read it |
Because they do different jobs, one cannot stand in for another. A robots.txt rule does not make a page more useful, and an llms.txt does not stop a crawler fetching a page. The robots.txt checker covers the first, and this validator covers the third.
Part 3
Understand the file
What the checks are based on, whether you need the file, and where the limits are.
8. What does the validator check?
It checks the layout described at llmstxt.org: an H1 with the site name, an optional blockquote summary, optional paragraphs, and H2 sections holding lists of links, with an optional section named Optional for links a reader can skip.
| Check | Result if it fails | Why |
|---|---|---|
| The file is Markdown, not an HTML page | Fail | Servers often return a page for a missing file |
| An H1 comes first (a byte-order mark may precede it) | Fail | The proposal's only required element |
| More than one H1 | Check | The proposal describes one site name |
| A blockquote summary follows the H1 | Check | Optional, but it is the line that says what the site is |
| H2 sections with link lists exist, and none is empty | Check | A file with no links points to nothing |
| Every list item is a link in the form [name](url) | Check | The proposal's file-list format |
| Addresses are complete, https and not javascript: or data: | Fail or check | A reader outside your site must be able to follow each link |
| No address is listed twice | Check | Repeats add noise |
| Sitemap pages missing from the file | Listed, with lines to paste | Only if you paste a sitemap; leaving a page out can be a choice |
Confirmed Layout read from llmstxt.org on 1 November 2026. It is a proposal published by its author, not an internet standard, and it does not mention a file called llms-full.txt
9. Do you need an llms.txt at all?
Not for Google Search. Google says you do not need AI text files, markup or special files to appear in its generative AI features, and that Google Search does not use llms.txt.
- Other services. Some tools and assistants may read the file. No published evidence in this site's research shows that any AI system uses it.
- How common it is. In the 500-site crawler audit, 100 sites (20.0%) published a detectable llms.txt; 94 of those began with a conventional Markdown heading.
- If you keep one, keep it accurate and short, and treat it as a map of your own best pages, not a ranking lever.
Confirmed Google's statement, read 1 November 2026. Directional The 20.0% figure comes from a purposive sample of 500 sites, not the whole web
10. Where can I write one?
Part 4 of the free AI visibility check builds a simple llms.txt from rows you fill in. Then paste the result here to check it, along with your sitemap.
Writing the file by hand gives the best result, because each one-line description should say what the page helps a reader do. A page title taken from a web address, which is what the missing-pages list suggests, is only a starting point.
11. How do you keep the file accurate?
Re-check it whenever your site's pages change, and at least once a quarter, because a file that lists removed pages or omits new ones is worse than none.
- After a launch or redesign. Paste the file and your new sitemap into the validator and read the missing-pages list.
- When a page is removed or moved. Search the file for its old address and update or delete the line.
- When your offer changes. Update the summary so it still says what the site is.
- Each quarter. Open every link once. A list of broken links is a poor guide.
Hypothesis A maintenance routine suggested by this article, not a requirement of the format
12. Questions about llms.txt and this validator
Short answers on whether the file helps, what valid means and what is not checked.
Does a valid llms.txt help me rank or get cited?
No evidence shows that it does. Google says it does not use llms.txt and that no AI text file is needed for its generative AI features, and this site has found no published evidence that other AI systems use it.
Is llms.txt an official standard?
No. It is a format proposal published at llmstxt.org. This validator checks that format, so a pass means the file follows the proposal, not that any platform will use it.
What is llms-full.txt, and does this check it?
Some sites publish a longer llms-full.txt that holds the full text of their pages. It is not part of the proposal at llmstxt.org and this tool does not check it.
Why can it not fetch my file for me?
Browsers do not let a web page read another site's files, and nothing here is sent to a server, so you paste the text yourself. That also means your file is never stored or shared by this tool.
Should every sitemap page be in the file?
Not necessarily. The list of missing pages is a prompt to decide, not a rule. A short file of your most useful pages is a reasonable choice.
How long should an llms.txt be?
The proposal sets no length. Among the 92 real files checked here, the typical one is about 8.6 KB with 34 links in 8 sections, while a few list thousands of addresses. A short curated list of your most useful pages fits the idea better than a copy of your sitemap.
Can I use relative links?
The validator flags them, because a reader outside your site cannot follow a path such as /services/ without knowing the domain. Only 3 of the 92 real files used one.
Should I link to pages on other sites?
The proposal does not forbid it, and half of the 92 files link to a different host name, often a documentation subdomain. For most sites, a guide to your own best pages is the clearer choice.
What is the Optional section for?
The proposal reserves an H2 headed exactly "Optional" for links a reader can skip when it needs a shorter version. About a quarter of the real files use one.
13. What can this validator not show?
It checks the text you pasted against one format proposal, once.
- It cannot see how your server serves the file: the content type, redirects or caching.
- It cannot tell whether a linked page exists or returns the right content.
- It cannot show whether any AI system or crawler reads the file, or what happens if it does.
- Suggested names for missing pages come from the web address and need your own wording.
Next: check which AI crawlers your robots.txt allows → run the free AI visibility check →