Quick answer
An llms.txt checker confirms that /llms.txt exists at your site root, returns status 200 as plain text rather than an HTML error page, and follows the proposed format: an H1 site name, a one-line summary in a blockquote, and H2 sections listing links with short notes. Enter your URL above to check.
Enter your site's URL above. Along with AI crawler access and schema types, the checker requests /llms.txt from the site root and reports whether a real file is there. A surprising number of sites "have" an llms.txt that is actually their 404 page or homepage served with status 200, which the checker catches by refusing anything that looks like HTML.
The rest of this page covers what a valid file looks like, how to check the format by hand, and how much difference the file makes. It is one part of the wider AI search readiness checker guide.
Why check llms.txt at all
llms.txt is a proposal, published by Jeremy Howard of Answer.AI in September 2024, for a Markdown file at a site's root that tells language models which pages matter and what they contain. The idea is that a model or agent with a small context window can read one short file instead of crawling and parsing dozens of HTML pages.
Two things are true at once. First, it costs almost nothing to publish, and documentation platforms (Mintlify, GitBook and others) generate one automatically. Second, its effect is unproven: Google says the file has no effect on Search or its AI features, and no other major AI search company has said it uses llms.txt to rank or cite pages.
So the reason to check it is mostly hygiene. If you publish one, it should be valid, current and served correctly. A broken or stale llms.txt that lists deleted pages is worse than none, because any agent that does read it is pointed at 404s. The evidence on whether the file helps at all is in does llms.txt work.
Insight: The most common llms.txt failure isn't a format error. It's a site whose catch-all route returns the homepage for any URL, so /llms.txt "exists" as 40 KB of HTML. Check the content type, not just the status code.
What a valid llms.txt file looks like
The proposal defines a simple structure in Markdown. Only the first element is required:
- An H1 with the site or project name (required).
- A blockquote with a one- or two-sentence summary of what the site is.
- Optional paragraphs or lists with extra context, without headings.
- H2 sections, each a list of links, in the form
- [Title](URL): optional note. - An optional section named "Optional", for links an agent can skip if it's short on context.
Here is a working example for a small SaaS site:
# Acme Invoicing
> Acme Invoicing is online invoicing software for freelancers and small
> agencies: invoices, recurring billing and payment reminders.
Acme is web-based. Plans start free; paid plans are billed monthly.
## Product
- [Features](https://acme.example/features): what the app does, by job
- [Pricing](https://acme.example/pricing): plans, limits and what each includes
- [Integrations](https://acme.example/integrations): Stripe, PayPal, Xero, QuickBooks
## Help
- [Getting started](https://acme.example/help/start): set up an account and send a first invoice
- [Recurring invoices](https://acme.example/help/recurring): schedules, edits and pausing
## Optional
- [Changelog](https://acme.example/changelog): release notes
- [About](https://acme.example/about): company and team
Seotific publishes one too, at /llms.txt, generated from the same page list as its sitemap so it can't drift out of date.
How to validate an llms.txt file in 6 steps
- Request
https://yoursite.com/llms.txtand confirm the status is 200, not a redirect to another page. - Check the response's content type is
text/plainortext/markdown, and that the body doesn't start with<!DOCTYPEor<html. - Confirm the first line is a single
#heading with the site name. - Check that each link list sits under a
##heading and uses the- [Title](URL): notepattern. - Request every URL in the file and confirm each returns 200 without redirecting.
- Compare the file with your sitemap and remove links to pages that are noindexed, redirected or deleted.
The checker above handles steps 1 and 2. Steps 3 to 6 take a few minutes by hand, or a short script for larger files. If you generate the file at build time, add the link check to your build so a deleted page fails the build instead of lingering in the file.
Check your own page
Seotific audits a URL against the keyword it should rank for and lists the fixes in order of impact. Free plan, no card.
Run a free auditShould you publish an llms.txt file?
Given that its effect is unproven, the decision comes down to cost and audience. A quick guide:
Publish one if your site is documentation, an API reference, a developer tool or a large help centre. Coding assistants and agents are the readers the proposal was designed for, and documentation platforms already generate the file, so the cost is close to zero. Keep it generated automatically.
Publish one if you have a product catalogue or service list that is hard to navigate, and you want any agent that does look for the file to find the right pages first. Limit it to the 20 to 50 pages that explain the business.
Skip it, or leave it for later, if you are a small business or a blog and the time would come out of something with a known effect: fixing crawler access, rewriting openings to answer questions directly, or adding Organization schema. None of those are optional in the way llms.txt is.
Never maintain it by hand on a site that changes weekly. A stale file pointing at deleted pages is the one version of llms.txt that is worse than having none.
Whatever you decide, remember what the file can't do: it doesn't grant or deny access, it doesn't influence Google, and no AI search product has said it ranks pages by it. If a vendor sells llms.txt as an AI visibility fix, ask them for the evidence.
llms.txt compared with robots.txt and sitemap.xml
People sometimes expect llms.txt to do the job of one of the older root files. It doesn't; each has a different reader and purpose.
| File | Purpose | Format | Who reads it | Effect on Google | Seotific checks it |
|---|---|---|---|---|---|
| robots.txt | Tells crawlers what they may fetch | Plain-text rules | Every major search and AI crawler | Controls crawling | Yes, per URL and per AI crawler |
| sitemap.xml | Lists URLs you want indexed | XML | Search engines | Helps discovery | Yes, presence and listing in robots.txt |
| llms.txt | Summarises the site's key pages for language models | Markdown | Some agents and tools; no confirmed search use | None, per Google | Yes, presence and that it isn't HTML |
| llms-full.txt | The full text of key pages in one file | Markdown | Some documentation tools | None known | No |
The practical takeaway: llms.txt is not a replacement for robots.txt rules. If you want to control which AI crawlers can access your site, that happens in robots.txt and your firewall. The AI crawler access checker covers it.
Common llms.txt mistakes
Serving HTML instead of Markdown. Wrong: a framework catch-all route returns the homepage for /llms.txt, with status 200. Right: a real static file or route that returns plain text, and a 404 for any other unknown path.
Listing every URL. Wrong: pasting the whole sitemap, 4,000 links, into llms.txt. Right: 10 to 50 links to the pages that best explain the site, grouped by purpose, with a note on each. The point of the file is to be short.
Letting it go stale. Wrong: a hand-written file from launch day that still lists a pricing page you deleted. Right: generate the file from your page list at build time, as you would a sitemap.
Promotional summaries. Wrong: "> The world's leading platform for everything." Right: a factual sentence an agent can repeat accurately: what the product is, who it's for, what it costs.
Treating it as an SEO fix. Wrong: adding llms.txt to a site that blocks OAI-SearchBot and wondering why ChatGPT never cites it. Right: fix crawler access and page content first; add llms.txt as an extra.
Tools to use alongside this llms.txt checker
This checker confirms the file exists and is plain text, alongside AI crawler access and schema. A browser or curl shows the raw content and headers. A link checker (or a crawler pointed at the file) confirms every link resolves.
Seotific's full audit includes llms.txt as an optional, zero-weight check, because it has no confirmed ranking effect. It spends its weight on what does matter for AI visibility: crawler access in robots.txt, content present in the raw HTML, a direct opening answer, and valid Organization details on the homepage. For the structured data side, see schema markup for AI search.
Frequently asked questions
What does an llms.txt checker do?
An llms.txt checker requests /llms.txt from your site root and confirms it returns status 200 as plain text or Markdown rather than an HTML error page. Fuller checks also validate the format (an H1 name, a summary, H2 link sections) and test that the links work.
Is llms.txt required for SEO?
No. Google says llms.txt has no effect on Search, including AI Overviews and AI Mode. No other major AI search company has confirmed using it for ranking or citations. It is optional and low-cost; crawler access and content matter far more.
Where should llms.txt be placed?
At the root of the domain, so it loads at https://yoursite.com/llms.txt. A file in a subfolder or on a different subdomain won't be found by tools that look for it in the standard location.
What is the difference between llms.txt and llms-full.txt?
llms.txt is a short index: a summary and a list of links with notes. llms-full.txt is a convention some documentation tools use for a single file containing the full text of the key pages. Neither is required.
How often should I update llms.txt?
Whenever the pages it lists change. The easiest way is to generate it automatically from the same source as your sitemap at build or deploy time, so deleted pages drop out and new key pages appear without anyone remembering to edit it.
Can llms.txt block AI crawlers?
No. llms.txt only describes your content; it has no rules for access. To allow or block AI crawlers, use robots.txt groups for each crawler (such as GPTBot or ClaudeBot) and, for stricter control, firewall rules at your host or CDN.
Check your own page
Seotific audits a URL against the keyword it should rank for and lists the fixes in order of impact. Free plan, no card.
Run a free audit