Short answer

An llms.txt generator writes the Markdown file a site publishes at /llms.txt: an H1 with the site's name, a one-paragraph summary in a blockquote, and sections of links with notes. Convertica's free generator builds the file in your browser from details you type, and its checker validates an existing file against the format.

  • The generator does not crawl your site. You choose the pages, because llms.txt is meant to be a curated list.
  • Only the H1 is required by the format. The summary, detail text and link sections are optional, but they have to come in that order.
  • The checker labels every finding as a format rule from llmstxt.org or as Convertica's practical advice.
  • The file goes at the root of your site, so that it loads at /llms.txt.
  • llms.txt is a proposed convention, not a web standard, and Google says Google Search does not use it.

llms.txt generator: build your file

Free to use, no sign-up. The form starts with an illustrative example, Example Bike Shop, which is made up. Replace it with your own details and the file updates as you type. Nothing you enter leaves your browser.

About the site

Becomes the H1. It is the only part the format requires.

One paragraph of plain facts: what the site is, who it is for and how buying works. Becomes the blockquote.

Paragraphs or lists that help a reader interpret the links. No headings.

Section 1

Section 2

Optional section

Links a reader can skip when it is short of context. They are printed last, under the heading Optional.

Go to your file

Your llms.txt

5 links

3 sections, including Optional. 971 characters on 22 lines.

# Example Bike Shop

> Example Bike Shop is a made-up online store, used here to show the llms.txt format. It sells commuter and touring bikes, ships within the United States and accepts returns within 30 days.

Notes for anyone reading this file:

- Prices are in US dollars and are listed on each product page.
- Stock changes daily, so check the product page before quoting availability.

## Products

- [Commuter bikes](https://www.example.com/commuter-bikes/): The commuter range, with frame sizes, weights and prices
- [Touring bikes](https://www.example.com/touring-bikes/): The touring range, with frame sizes, weights and prices

## Policies

- [Shipping](https://www.example.com/shipping/): Where the store ships, what it costs and how long delivery takes
- [Returns](https://www.example.com/returns/): The 30-day return policy and how to start a return

## Optional

- [About the shop](https://www.example.com/about/): Who runs the store and how to contact it

The format

# Site or project name

> One-paragraph summary

Optional detail text: paragraphs and lists, no headings

## Section heading

- [Link title](https://www.example.com/page/): Optional note

## Optional

- [Link title](https://www.example.com/another-page/)

llms.txt checker: validate an existing file

Paste the contents of an llms.txt file. The checker reads it in your browser and lists what passes, what to fix and where each rule comes from. It starts with an example that has deliberate mistakes.

Open yourdomain.com/llms.txt, select all of it, copy and paste it here. The checker does not fetch URLs.

Check result

3 errors

6 warnings. 2 checks passed.

3 sections, 4 links, 581 characters.

Format rules come from llmstxt.org. Practical advice is Convertica's own and is never counted as an error.

Findings

  1. Error Format rule

    The file has no H1. Start it with a line such as "# Your site name": the H1 is the only part of the file the format requires.

  2. Error Format rule Line 5

    Line 5 is an H3 heading before the first H2 section. The format allows paragraphs and lists there, but no headings.

    ### About this file
  3. Error Format rule Line 11

    The list item on line 11 has no Markdown link. Each item in a section needs one, written [name](url), at the start of the item.

    - Shipping costs and delivery times: https://www.example.com/shipping/
  4. Warning Format rule Line 9

    On line 9 the text after the link does not start with a colon. The format is [name](url): notes, so a parser will not read that text as the link's note.

    - [Commuter bikes](/commuter-bikes/) - The commuter range, with frame sizes and prices
  5. Warning Practical advice Line 9

    The URL on line 9 is relative (/commuter-bikes/). Use the full address, starting with https://, so the link still works when the file is read away from your site.

    - [Commuter bikes](/commuter-bikes/) - The commuter range, with frame sizes and prices
  6. Warning Practical advice Line 10

    The URL on line 10 uses http://. Use https:// if the page loads over it.

    - [Touring bikes](http://www.example.com/touring-bikes/): The touring range, with frame sizes...
  7. Warning Practical advice Line 13

    Section "Policies" (line 13) has no links.

    ## Policies
  8. Warning Practical advice Line 18

    The same URL is listed 2 times (lines 17 and 18): https://www.example.com/size-guide/. List each page once.

    - [Size guide](https://www.example.com/size-guide/)
  9. Warning Practical advice Line 18

    1 of 4 links has no note (line 18). Notes are optional in the format. The proposal's guidelines suggest a brief, informative description for each link.

    - [Size guide](https://www.example.com/size-guide/)
  10. Pass Format rule

    3 sections under H2 headings, with 4 links in all.

  11. Pass Practical advice

    The file is 581 characters long, under this checker's warning line of 100,000.

How to use the llms.txt generator

To use the llms.txt generator, enter your site's name and a one-paragraph summary, group the pages that matter under section headings, and give each link a title, a full URL and a one-line note. Then copy or download the file and upload it to the root of your site. The file rebuilds as you type.

  1. Name the site. The name becomes the H1, the one part of the file the format requires.
  2. Write the summary. One paragraph of plain facts: what you sell, who it is for, where, and how buying or pricing works. It becomes the blockquote.
  3. Add detail text only if it helps. Notes on how to read the links, or rules a reader should know. Paragraphs and lists are fine. Headings are not.
  4. Group your best pages into sections. Use headings a person would understand, such as Products, Pricing, Policies and Guides. Pick the pages that answer real questions, not every page.
  5. Give each link a note. Say in one line what the page answers. Put links a reader could skip in the Optional section.
  6. Copy or download the file. "Check this file" sends it to the checker, so you can see it pass before you publish.
  7. Publish it at /llms.txt. Then open the address to confirm that it loads as plain text.

New to the file itself? The guide to llms.txt explains what it is, shows a real one and helps you decide whether your site needs it.

What goes in an llms.txt file?

An llms.txt file holds, in this order, an H1 with the name of the site or project, a blockquote with a short summary, optional detail text with no headings, and sections under H2 headings that list links as [name](url), each with an optional colon and note. Only the H1 is required. The format is published at llmstxt.org.

The parts of an llms.txt file, in order (llmstxt.org), and what the generator does with each
PartMarkdownRequired by the format?What the generator does
Name# Example Bike ShopYesWrites the name as the H1, on the first line
Summary> One paragraphNoPuts the summary on one line in a blockquote
Detail textParagraphs and listsNoKeeps your paragraphs and lists, and leaves the text out if it contains a heading
Section## ProductsNoWrites one H2 per section, in the order of the form
Link- [Title](https://...): noteEach list item needs the link. The note is optionalWrites each row as one list item and leaves out a row with no title or no full URL
Optional section## OptionalNoAlways prints it last

"Optional" is a convention, not a command: the proposal describes it as the place for secondary links that a reader can skip when it needs a shorter context.

Worked examples: three files and what the checker says

The three examples below are built and checked by the same code as the tools above. Example Bike Shop is made up, and the examples show the format, not a recommended set of pages for a store.

1. The file the form starts with

The default values in the generator give a file of 22 lines and 971 characters: the H1, a one-line summary, a short detail paragraph with a list, 2 named sections and the Optional section, with 5 links in all. Sent to the checker, it returns no errors and no warnings. 10 checks passed.

2. The smallest valid file

A name alone is a complete llms.txt file, because the H1 is the only required part:

# Example Bike Shop

The checker returns no errors for it, with 2 warnings that are both practical advice: there is no summary, and there are no sections, so a reader has nowhere to go next. Valid is not the same as useful.

3. A file with mistakes, checked and fixed

The checker above starts with a file of 18 lines that has several common mistakes. It reports 3 errors and 6 warnings, listed in full in the tool. The check each one fails, and its fix:

What the checker finds in the example file, and the fix for each finding
LineResultSourceCheck that failsFix
FileErrorFormat ruleThere is an H1 with the name of the project or sitePut a # and a space in front of the name on line 1.
5ErrorFormat ruleNo headings between the summary and the first H2Delete line 5, or rewrite it as a plain sentence.
11ErrorFormat ruleEvery list item in a section starts with a link, written [name](url)Write the item as a link with a note: [Shipping](https://www.example.com/shipping/): Shipping costs and delivery times.
9WarningFormat ruleA note after a link starts with a colonReplace the hyphen after the link with a colon.
9WarningPractical adviceEvery URL is a full https:// addressWrite the full address: https://www.example.com/commuter-bikes/.
10WarningPractical adviceEvery URL is a full https:// addressChange http:// to https://.
13WarningPractical adviceEvery section has at least one link, and a heading with textGive the section its links, or delete the heading. The corrected file moves the shipping link here.
18WarningPractical adviceNo URL is listed twiceDelete line 18. The size guide is already listed on line 17.
18WarningPractical adviceEvery link has a noteSolved by deleting line 18. On a link you keep, add a note after a colon.

The corrected file:

# Example Bike Shop

> Example Bike Shop is a made-up online store that sells commuter and touring bikes.

## Products

- [Commuter bikes](https://www.example.com/commuter-bikes/): The commuter range, with frame sizes and prices
- [Touring bikes](https://www.example.com/touring-bikes/): The touring range, with frame sizes and prices

## Policies

- [Shipping](https://www.example.com/shipping/): Shipping costs and delivery times

## Guides

- [Bike size guide](https://www.example.com/size-guide/): How to choose a frame size from your height

It returns no errors and no warnings. 8 checks passed. For a real file, see the excerpt from this site's own llms.txt in the guide, or paste convertica.org/llms.txt into the checker.

What does the llms.txt checker test?

The llms.txt checker tests a file against 9 rules taken from the format at llmstxt.org and 11 practical checks that are Convertica's own advice. Only a rule the format states can be an error. Every finding names its source, so advice is never presented as part of the format.

Format rules (source: llmstxt.org)
The checker tests thatIf notWhat the format says
The file is Markdown, not an HTML pageErrorThe proposal defines llms.txt as a Markdown file.
There is an H1 with the name of the project or siteErrorThe H1 is the only required section.
The H1 comes first, and there is only oneErrorThe sections come in a set order, starting with the H1.
A blockquote summary, if there is one, comes straight after the H1WarningThe summary is the second section in the order.
No headings between the summary and the first H2ErrorDetail text can be Markdown of any type except headings.
Every list item in a section starts with a link, written [name](url)ErrorEach item of a file list holds a required Markdown hyperlink.
A note after a link starts with a colonWarningThe link is followed optionally by a colon and notes about the file.
A section holds a list of links and nothing elseWarningH2 sections contain file lists.
No H3 or deeper headings inside a sectionWarningThe format has an H1 and H2 sections only.
Practical checks (source: Convertica's advice, not the format)
The checker tests thatIf notWhy we check it
The file has a summaryWarningThe format makes the summary optional. It is where a reader gets the key facts first.
The summary is on one lineWarningThe proposal's reference parser reads one summary line.
The file has at least one section of linksWarningThe format allows none, but then a reader has nowhere to go next.
Every section has at least one link, and a heading with textWarningAn empty section tells a reader nothing.
No two sections share a headingWarningThe proposal's reference parser keys sections by heading and keeps one.
Every URL is a full https:// addressWarningA relative link only works for a reader that knows which site the file came from.
No URL is listed twiceWarningA repeated link spends a reader's context on nothing new.
Every link has a noteWarningNotes are optional in the format. The proposal's guidelines suggest a brief, informative description for each link.
List items start with a hyphenWarningOther markers are valid Markdown, but the proposal's reference parser matches hyphens only.
Headings are written with # and a spaceWarningUnderlined headings and a missing space are read differently by different parsers.
The file is under 100,000 charactersWarningThe proposal says the file should stay small enough to fit in an agent's context and names no figure. This line is Convertica's.

Two limits to keep in mind. First, an error means a parser that follows the format strictly would stumble on that line. It does not mean an AI tool cannot read the file: language models read loose Markdown, and not every published llms.txt follows the format to the letter. Second, the checker reads only what you paste. It does not fetch your links, so it cannot tell you that a URL is broken or that your server returns the file correctly. When one problem repeats, the first 5 lines are listed and the rest are counted in a single line.

Where does the llms.txt file go?

The llms.txt file goes at the root of your site, so that it loads at https://yourdomain.com/llms.txt, next to robots.txt and the sitemap. The proposal also allows a file at a subpath, such as /docs/llms.txt, which covers the pages under that path. Our advice is to serve it as plain text or Markdown, not wrapped in a web page.

The file the generator downloads is plain text in UTF-8, named llms.txt, with no byte-order mark. The format allows one at the start of the file, but it is not needed.

  • Static site or site generator: put llms.txt in the folder that is published as the site root, or generate it during the build.
  • WordPress: llmstxt.org lists Yoast SEO and AIOSEO as plugins that generate the file. Use one source, a plugin or your own file, not both.
  • Hosted site builders: check whether the platform already publishes one. llmstxt.org lists Wix as generating a file for every site.
  • Any other host: upload the file to the web root with SFTP or the host's file manager.

How to check that the published file works

  1. Open yourdomain.com/llms.txt in a browser. You should see the Markdown as plain text, not your site's design.
  2. Copy what the address returns and paste it into the checker. If the server is sending a web page, the checker says so on the first line.
  3. Make sure robots.txt and your firewall do not block the file or the pages it lists for the crawlers you want to reach.
  4. Click a few of the links from the published file. A link to a missing page wastes the reader's effort.

How to build the link list in Excel or Google Sheets

To build llms.txt link lines in Excel or Google Sheets, put each page's title in column A, its URL in column B and its note in column C, then join them with one formula and fill it down. This is quicker than the form when you already have a list of pages from your CMS or sitemap.

="- ["&A2&"]("&B2&")"&IF(C2="","",": "&C2)

With "Commuter bikes" in A2, https://www.example.com/commuter-bikes/ in B2 and the note in C2, the formula gives the same line the generator writes:

- [Commuter bikes](https://www.example.com/commuter-bikes/): The commuter range, with frame sizes, weights and prices

The IF leaves out the colon when a row has no note. Copy the column under a ## heading in your file, then paste the whole file into the checker, which will catch a relative URL or a repeated page.

How does llms.txt relate to robots.txt and the sitemap?

llms.txt, robots.txt and sitemap.xml sit side by side at the root of a site and do different jobs. robots.txt tells crawlers what they may access, the sitemap lists every page you want indexed, and llms.txt is a short, curated reading list. llms.txt grants nothing and blocks nothing: access is still set in robots.txt.

Keep the three consistent. Do not list a page in llms.txt that robots.txt blocks for the crawlers you want to reach, and do not block /llms.txt itself. The guide has a side-by-side comparison of the three files, and the AI visibility checker looks at a live site, including its robots.txt rules for AI crawlers.

Do AI tools read llms.txt?

According to the proposal itself, llms.txt files are used most heavily for software documentation, where coding agents follow them to API references and tutorials. No AI search provider documents using the file to choose its sources. llms.txt is a proposed convention, not a web standard: Jeremy Howard published it at llmstxt.org, it is in its second version, and nothing obliges a crawler or an assistant to look for the file.

What the other primary sources say:

  • Google Search does not use llms.txt. Google's guide to its generative AI features lists the file among things you do not need to create to appear in Search, AI features included.
  • Chrome Lighthouse calls llms.txt an emerging convention. Its llms.txt audit marks a missing file as not applicable and flags only a server error when fetching it.
  • OpenAI, Anthropic and Perplexity each publish documentation for site owners about their crawlers (OpenAI, Anthropic, Perplexity). All three describe robots.txt controls. None says that its crawler looks for llms.txt.
  • OpenAI and Anthropic also publish llms.txt files for their own developer documentation (OpenAI, Anthropic). That shows the format in use for documentation. It is not a statement about what their crawlers or assistants read on other sites.

So publish the file because it is cheap to get right, not because it will move rankings or citations. What an AI tool can read on the pages themselves matters far more. That work is covered in the AI agent readiness checklist, and being cited in AI answers is the subject of generative engine optimization services.

Can AI agents read your pages?

Agent readiness is one of the eight checks in the free CRO audit. Enter your website and email, and watch it check your page live.

What to do after you publish llms.txt

After you publish llms.txt, test it, keep it in step with the site, and then go back to the pages it points to. The file is a signpost. An AI tool that follows one of its links still has to find the price, the policy and the product on the page itself, in the HTML, in plain words.

  1. Test it with an AI tool. The proposal's own advice: give an agent only your llms.txt and ask it questions about your business. Fix whatever it gets wrong.
  2. Keep one source of truth. If the summary states a price or a return window, it has to match the page and the structured data. A buyer who hears one thing from an assistant and reads another on your page has a reason to doubt both, and doubt is what stops a sale.
  3. Regenerate it when pages change. A hand-made file drifts. This site builds its own llms.txt from the same data as its pages, so a deleted page drops out of the file.
  4. Check the pages behind the links. Convertica's free CRO audit runs eight checks on a page, and one of them is agent readiness: whether an AI agent can read what the page sells, the price and the policies.

llms.txt is one small part of making a site readable by AI tools. These cover the rest.

See all free tools and how they fit together.

llms.txt generator FAQ

What is an llms.txt generator?

An llms.txt generator is a tool that writes the Markdown for an llms.txt file: the site's name as an H1, a one-paragraph summary in a blockquote, optional detail text and sections of links with notes. Convertica's generator builds the file in your browser from what you type. It does not crawl your site: you choose the pages and write the notes, because the proposal describes llms.txt as a curated overview, not a copy of the sitemap.

Is this llms.txt generator free?

Yes. The generator and the checker are free and need no sign-up. Both run in your browser: nothing you type or paste is sent to a server, so you can use them for a site that is not live yet.

How do I check or validate an llms.txt file?

Open the file at yourdomain.com/llms.txt, copy all of it and paste it into the llms.txt checker on this page. It lists each error, warning and pass with its line number, and labels each one as a format rule from llmstxt.org or as practical advice from Convertica. Then confirm that the live address returns the file as plain text.

Where do I upload the llms.txt file?

To the root of your site, so that it loads at https://yourdomain.com/llms.txt, the same place as robots.txt. The current version of the proposal also allows a file at a subpath, such as /docs/llms.txt, which covers the pages under that path.

Do I need to submit llms.txt anywhere?

No. The proposal has no submission step and no registry. Publish the file at /llms.txt and a tool that looks for it will find it there. The directories linked from llmstxt.org are optional listings.

Will an llms.txt file get my site cited by ChatGPT, Claude, Perplexity or Google's AI answers?

No public documentation says so. Google states that Google Search, including its generative AI features, does not use llms.txt. The crawler documentation published by OpenAI, Anthropic and Perplexity describes robots.txt controls and does not say that their crawlers look for llms.txt. Treat the file as a courtesy to tools that choose to read it.

Can a site have more than one llms.txt file?

Yes. The proposal allows an llms.txt at the site root or at any path within the site, where it covers the pages under that path. Where more than one file applies, an agent should use the most specific one. A large site can use this to keep each file short.

How long can an llms.txt file be?

The proposal sets no limit. It says only that the file should stay small enough to fit in an agent's context, with the detail behind the links. Convertica's checker warns above 100,000 characters, which is our own line and not part of the format. Near that size, list fewer pages or split the file by section.

How often should I update llms.txt?

Whenever a page it links to moves or is deleted, or a fact in the summary changes, such as a price or a policy. A file that contradicts your pages is worse than no file. If your site is built from data, generate llms.txt in the same build so that it cannot drift.

Find out what is costing you conversions

Enter your website and email and the audit starts right away. Watch it check your page live: eight checks, each scored out of 100, and three fixes you can make now.