← Free tools

llms.txt Checker

llms.txt is a Markdown file that lists a site's most useful pages for AI tools. This free llms.txt checker and validator fetches yours and tests it against the current v2 spec, then shows a pass, a warning, an error or an info note for each check, with the fix.

Updated

Free, no account needed.

What the llms.txt checker tests

First, the checker fetches the file and makes sure it's actually an llms.txt file. This catches a pretty common problem: some sites return their normal HTML page, or a "not found" page, at /llms.txt with a 200 status. Then it reads the file line by line:

How to read the result

Errors mean the file won't work as an llms.txt. Warnings mean it works, but there's a problem worth fixing. Info items are optional extras from the v2 spec.

CheckResultFix
File at /llms.txtError on a 404, a redirect loop or an HTML pageSave a plain text file at the root of the site, or at the path it should cover
H1 at the topError if missingStart the file with # Your site name
SummaryWarning if missingAdd one line starting with > that says what the site is
HeadingsWarning on H3 or lower, or on an H2 that isn't a link listUse H2 only for link lists, and put any notes above the first H2 without headings
Link list formatWarning on list items without a linkWrite each item as - [Name](url): notes
Broken linksWarning for each link that returns an errorFix the link or remove it
Content typeWarning if it's text/htmlServe .txt files as text/plain or text/markdown
Link relationsInfoAdd <link rel="describedby" href="/llms.txt"> to your pages any time, and rel="alternate" links once you have Markdown versions

In general, fix the errors first, then the warnings.

What changed in llms.txt v2

llms.txt was first proposed by Jeremy Howard of Answer.AI in September 2024. The current version, v2, was last updated on 10 August 2026. The file itself barely changed: it's still Markdown with an H1, a summary, optional notes and H2 link lists. Most of v2 is about how AI agents find and use the file:

  • How agents use it: v2 describes agents reading or searching the file, then following its links to content written for them.
  • Scope: v1 allowed files in subfolders but didn't say what they covered. In v2 a file covers the pages under its path, and the most specific one wins, so a project on a shared domain can have its own file.
  • Markdown versions of pages: each page can have a clean Markdown copy at the same URL with .md added (page.html.md), or, new in v2, with the extension replaced (page.md).
  • Link relations: a page can point to its Markdown version with rel="alternate" type="text/markdown" and to its llms.txt with rel="describedby", either as an HTML link tag or in an HTTP Link header.
  • The Optional section: it's still allowed for secondary links, but v2 gives it no mechanical meaning. In v1 it told tools what to leave out when they needed a shorter context.
  • Removed: the llms_txt2ctx tool for expanding a file into one long context, which v1 described.

The checker tests the v2 rules, and reports the new link relations as optional.

An llms.txt example that passes

Here's a small file for a made-up invoicing product that passes every check:

# Acme

> Acme is invoicing software for freelance designers, with plans from $12 a month.

Acme sends invoices, tracks payments and reminds late clients by email.

## Product
- [Pricing](https://acme.io/pricing.md): Plans, limits and what each includes
- [Features](https://acme.io/features.md): What the product does
- [Docs](https://acme.io/docs/index.md): Setup and API

## Optional
- [Changelog](https://acme.io/changelog.md): Release notes by month

Keep it short. It's basically a list of your most useful pages, with one line on each. Link to the Markdown versions of your pages if you have them, and to the normal pages if you don't.

Does llms.txt do anything?

In short, it's a map for the AI agents and tools that read it. The proposal is written for agents that read a site on someone's behalf, and v2 describes them reading the file and then following its links to the right pages. There aren't any published numbers yet on how many tools actually do this, or on whether having a file changes which pages AI engines cite.

Peak Answer's crawler access study recorded what came back at /llms.txt on the tech sites ChatGPT and Google cite. A plain fetch couldn't tell a real file from other text, so Peak Answer ran this checker on the same 887 sites in November 2026: 58% had a real llms.txt, and 2% returned a web page at /llms.txt instead. The llms.txt adoption study has the full breakdown.

So think of llms.txt as a small extra. It only takes a few minutes to write, and writing it makes you spell out what you sell and which pages matter, but it won't get a page cited on its own. Crawler access matters a lot more. OpenAI says sites that block OAI-SearchBot won't be shown in ChatGPT search answers, and the AI crawler checker tests that part.

How to fix common llms.txt problems

  • The checker sees an HTML page. Your CMS or host is serving its normal page, or a soft 404, at /llms.txt. Upload the file as a static file at the root, or add a route that serves it as plain text.
  • The H1 isn't at the top. Remove anything above the title, like a comment or a blank line, and start with # Name. A byte-order mark before it is fine.
  • Links return 404 or redirect. Update them to the final URLs.
  • The file is very long. Cut it down to your most useful pages and the main sections of your docs. Secondary links can go under ## Optional.
  • The wrong content type. If the server sends text/html, set text/plain or text/markdown for .txt files in your server or CDN settings.
  • The file is out of date. Update it whenever you add or remove key pages. The llms.txt generator builds a first version from your site.

llms.txt, robots.txt and sitemap.xml

All three files sit at the root of your site, but they do different jobs:

llms.txtrobots.txtsitemap.xml
JobDescribes the site and points to its key pagesTells crawlers what they may fetchLists the URLs you want indexed
FormatMarkdownPlain text rulesXML
Who reads itAI agents and tools that support itCrawlers that follow itSearch engines
RequiredNoNo, but every site should have oneNo, but most sites should have one

You can check the other two with the robots.txt checker and the sitemap checker.

Common questions

Enter your site above. The checker fetches /llms.txt, tests it against the v2 spec and checks the links in it. You can also open yoursite.com/llms.txt in a browser: it should show plain text that starts with `#` and your site name.
The proposal is still maintained, and it was last updated in August 2026. How many AI tools actually read it isn't published.
It works as a map for the tools that read it. There's no published evidence that it changes which pages AI engines cite.
No, llms.txt is not mandatory. It's an optional proposal, and nothing breaks without it. If you do publish one, the only required part is the H1.
An H1 with your site name, a one-line summary in a blockquote, a few lines of context if needed, and H2 sections listing your most useful pages as `- [Name](url): notes`. Secondary links can go under `## Optional`.
It's a separate file some sites publish with the full text of their docs in one place. It isn't part of the llms.txt spec. The checker notes whether you have one, but doesn't grade it.

Track your AI visibility every week

Peak Answer runs checks like these every week, then writes the content and gets the placements.

Start 7 day trial