Free llms.txt generator
Enter your site's address. The generator reads its sitemap, fetches the homepage and up to 49 more pages, and writes an llms.txt in the llmstxt.org format: your site's name, a summary from the homepage's meta description, and a section per part of the site with each page's title, link and description. Tag, archive, pagination and legal pages go under ## Optional. Edit it if you like, then copy or download it and put it at your site's root, like https://example.com/llms.txt.
Headlark writes these automatically (start free).
Show the pages
What llms.txt is, and what it isn't
llms.txt is a proposed convention, not a web standard: a Markdown file at your site's root that gives language models and AI tools a short map of your site, so they can find the pages that matter without crawling everything. Documentation sites adopted it first, and plugins for Astro Starlight, Docusaurus and others generate one at build time.
Search engines don't use it for ranking, and it doesn't replace your sitemap or robots.txt. Whether a given AI tool reads it is up to that tool. It's cheap to add and keep up to date, which is why many sites have one anyway.
Running a docs site? The guides for Starlight and Docusaurus cover the rest of their SEO setup.
How it works
It finds your sitemap the same way the site checker does: Sitemap: lines in robots.txt, or else /sitemap.xml and /sitemap-index.xml, following a sitemap index one level down. It fetches the homepage plus up to 49 pages spread evenly over the sitemap, only on your own domain, and stops after about 40 seconds. For each page it takes the <title> (minus the site name repeated in every title, or the <h1> when there's no title) and the meta description. Pages are grouped by the first part of their path, like /blog/ or /docs/; parts with a single page go under "Pages". On a site translated under language prefixes like /de/ and /fr/, it lists one language: the one of the address you enter.
Without a sitemap, you get the homepage only. A site with more than 50 pages gets a sample, so add the rest by hand or generate the file in your build. Nothing is stored: the file is made on our server when you press the button and only shown to you.