ROAS Experttools

Free, runs in your browser

Free llms.txt generator

Give AI assistants a one-page map of your site. Prefill from your homepage and sitemap, tidy the sections, then copy or download the file. The install steps for your platform are below the preview.


Want it in your inbox with the install steps?

Optional. The file works without it. We'll send the text and the steps for your platform, nothing else unless you ask.

Where to put the file

It has to be served at the root of your domain as plain text: https://yoursite.com/llms.txt. Pick your platform.

Shopify themes can't serve a file at the root; theme assets live under /cdn/shop/.... Two ways that work:

Redirect. Upload llms.txt in Content > Files, copy its URL, then add a URL redirect in Online Store > Navigation from /llms.txt to that file URL. Crawlers that follow redirects (most do) get the file. Some apps on the Shopify App Store do the same with a settings page.

Cloudflare in front. If your domain's DNS is on Cloudflare, a Snippet or a Worker route on yoursite.com/llms.txt can return the text directly with content-type: text/plain, no redirect. That is the cleanest option.

Upload it. Put llms.txt in the folder that holds wp-config.php (SFTP or the host's file manager). WordPress leaves real files alone, so it's served as is.

Or use the SEO plugin. Yoast SEO (Settings > APIs > llms.txt) and All in One SEO both generate one from your content. Paste this file's sections into their editor if they let you, or let them generate it and compare.

Check yoursite.com/llms.txt in a private window: you should see plain text, not a 404 page from the theme.

Magento and Adobe Commerce serve static files from pub/. Copy llms.txt to pub/llms.txt on the web node (or add it to your deployment so it survives a rebuild). Make sure the web server rule that blocks dotfiles and .txt in some hardened configs lets llms.txt through; robots.txt is served the same way, so if that works, this does.

Webflow. There's no root file upload. Upload llms.txt as an asset (Assets panel), copy the asset URL, then add a 301 redirect in Site settings > Publishing > 301 redirects from /llms.txt to that URL. On a Cloudflare-proxied domain, a Snippet can serve it directly instead.

Framer. Same idea: host the file (Cloudflare, GitHub Pages, S3) and add a redirect in Site Settings > Redirects from /llms.txt to it.

App Router: create app/llms.txt/route.ts and return the text. Or drop the file in public/llms.txt, which is simpler if the content is static.

export const dynamic = 'force-static';
export function GET() {
  return new Response(LLMS_TXT, { headers: { 'content-type': 'text/plain; charset=utf-8' } });
}

Pages Router: public/llms.txt is enough.

Any static host: put the file in the web root next to robots.txt. On Cloudflare Pages or Workers, public/llms.txt or a route handler. Add a _headers rule if your host doesn't send text/plain for .txt files.

Then open yoursite.com/llms.txt in a private window and confirm it returns the text with status 200, not a redirect to the homepage.

Is your site readable once the file is in place?

The free audit checks llms.txt, robots.txt for 11 AI bots, and whether your pages make sense without JavaScript. 48 checks, fixes for your platform, no sign-up to see the score.

Run the free audit

Questions

What is llms.txt?

A plain markdown file at the root of your site (yoursite.com/llms.txt) that tells AI assistants what the site is and which pages matter. It has a title, a one-line summary and short sections of links with one-line descriptions. The format comes from llmstxt.org. Longer read: what is llms.txt.

Do AI assistants read llms.txt?

Some do and some don't yet. Anthropic, Cloudflare, Stripe and Mintlify-hosted docs publish one; OpenAI and Google have not said their crawlers use it. It costs nothing to serve, it is the cleanest summary of your site a crawler can get, and it doubles as a checklist of the pages you want assistants to cite.

What goes in it?

Your site name as an H1, a blockquote with one sentence on what you do, optional context (markets, currencies, who it's for), then H2 sections such as Docs, Products or services, Blog, Policies and Contact. Each section is a list of links in the form - [Title](URL): one line on what the page covers. Keep it under a few hundred lines; it's a map, not a copy of the site.

Where do I put the file?

At the root, served as text/plain. The install steps above cover Shopify, WordPress, Magento, Webflow, Framer, Next.js and plain hosts.

Is this free, and do you keep my data?

Free, no account. The generator runs in your browser. Prefill reads your public homepage, robots.txt and sitemap and caches the result for ten minutes. Nothing is stored unless you ask for the file by email.

Does llms.txt replace robots.txt or a sitemap?

No. robots.txt says who may crawl, the sitemap says what exists, llms.txt says what matters and why. Use the robots.txt builder for AI crawlers to decide which bots to allow, and run the free audit to see whether a crawler can read your pages without JavaScript.