What is an llms.txt file? It is a plain-text file at your website's root that gives AI tools a clean, curated summary of your site. This guide shows a free llms.txt example, the exact format, and — the part almost every other guide skips — a full, tested walkthrough for adding one to a Blogger site that cannot host files at its root, using a free Cloudflare Worker. It also covers llms-full.txt, your sitemap, robots.txt, and Google Search Console.

Quick answer

  • What is llms.txt? A plain-text file at your domain root that summarises your site for AI tools and links to your best pages.
  • Does it help ranking? It is a proposed standard. No major AI system reads it for ranking yet — treat it as low-effort future-proofing, not a traffic hack.
  • The Blogger catch: Blogger can't host a real file at yoursite.com/llms.txt. The clean fix is a free Cloudflare Worker — full walkthrough below.
  • Jump ahead: free llms.txt example · Cloudflare Worker setup · the honest truth.

What is an llms.txt file?

An llms.txt file is a simple text file placed at the root of your website — for example, https://yoursite.com/llms.txt. Its job is to give large language models and AI answer engines a short, human-written overview of what your site is, plus a curated list of your most useful pages, each with a one-line description.

Think of it as a friendly map written for machines. A normal web page is wrapped in navigation menus, cookie banners, ads, and layout code that an AI has to wade through. An llms.txt file strips all of that away and says, in plain language: here is who we are, here is what we offer, and here are the exact pages worth reading.

The idea was proposed by Jeremy Howard in 2024 and uses simple Markdown formatting so both people and machines can read it. There is also an optional companion file, llms-full.txt, which holds a longer, more complete version of that information for AI systems that want the full picture.

Honest note up front: As of now, no major AI platform — ChatGPT, Claude, Gemini, Perplexity, or Google — has publicly confirmed it uses llms.txt to decide what to recommend, and Google has said it is not using it for ranking. So this file will not magically get you cited by AI tomorrow. It is cheap insurance for a standard that may gain adoption, and it costs you nothing to have it ready. Anyone promising instant "AI rankings" from an llms.txt file is overselling it.

llms.txt vs llms-full.txt vs sitemap.xml

These three files are often mentioned together, but they do different jobs. Here is how they compare so you know which one matters for what.

FileWho reads itWhat it containsStatus
llms.txtAI tools (proposed)A short, curated overview and links to your best pagesNew, optional
llms-full.txtAI tools (proposed)A detailed, complete text version of your key contentNew, optional
sitemap.xmlSearch enginesA machine list of every canonical URL to crawlEstablished, used by Google

The key difference: a sitemap.xml is a long-established format that Google and Bing actively use, and most platforms generate it for you automatically. The two llms files are new and optional. The sitemap is the exhaustive list of everything; the llms.txt is the curated highlight reel.

Before you start: what to prepare

Writing good llms files is mostly about having your facts organised. Before you open any editor, jot down the following so you are working from real information, not guesses.

  • Your website name and URL.
  • What your site does, in one plain sentence.
  • Your main products, tools, or services.
  • Your most important pages and their real URLs.
  • Who your site is for (your target audience).
  • Your contact page, plus any guides, docs, or blog sections.

The golden rule throughout: only include things that genuinely exist on your site. Do not invent products, features, statistics, or claims — an llms file full of made-up detail is worse than no file at all.

Step 1: Audit your site first

Before listing anything, decide which pages actually deserve to be in your llms.txt and sitemap. The goal is to point AI tools and search engines at your best, canonical pages — and to keep the junk out.

Include your genuinely useful pages: main tools or product pages, key guides and documentation, pricing, your About page, and contact or support. Exclude the low-value and problematic URLs:

  • Login and account pages.
  • Checkout and thank-you pages.
  • Internal search-result pages and filter or parameter URLs.
  • Duplicate pages and staging pages.
  • Admin pages and any page set to noindex.
  • Broken or redirected URLs, and any link with tracking parameters.

A quick way to do this is to list every important page in a simple table with columns for the page name, its URL, its type, and a yes/no for whether it belongs in each file. Approve that list first; then building the files is just transcription.

Step 2: The correct llms.txt format

An llms.txt file follows a simple Markdown structure. Getting the llms txt file format right matters, because tools that check the file expect a specific shape.

  • Start with a single H1 containing your site or company name.
  • Add one short blockquote (a line starting with >) summarising what you do.
  • Optionally add a short paragraph with a few more verified facts.
  • Group your important links under clear H2 headings.
  • Give every link a short, factual description.
  • Use only real, public HTTPS links — no login pages, search pages, or broken URLs.
Filename rules: It must be exactly llms.txt (lowercase, with the "s") — not llm.txt. The optional detailed file is llms-full.txt. Both belong at the domain root, not inside a folder like /blog/llms.txt.

A free llms.txt example you can copy

Here is a complete, minimal llms.txt example you can use as a template. Replace the names, description, and links with your own — and only list pages that actually exist on your site. This is the same simple structure the proposed standard uses, so it will pass an llms txt file checker.

llms.txt example
# Your Site Name > A one-line summary of what your website does, written in plain language. A short paragraph with a few more verified facts about your site — what you offer, who it is for, and anything genuinely useful. Keep it factual. ## Main Tools or Products - [First Tool](https://yoursite.com/first-tool): One-line description of what it does. - [Second Tool](https://yoursite.com/second-tool): One-line description of what it does. ## Guides and Resources - [A Useful Guide](https://yoursite.com/guide): What the reader will learn. ## Company - [About](https://yoursite.com/about): About your site and who runs it. - [Contact](https://yoursite.com/contact): How to get in touch.

That is a valid llms txt file example on its own. If a tool ever reports "no llms txt file found in root directory," the problem is almost never the file's contents — it is where and how the file is served, which the Blogger section below solves.

Step 3: Create llms-full.txt

The llms-full.txt file follows the same idea but expands each section. Where llms.txt is a highlight reel, llms-full.txt is the complete text version of your useful information. It can include full product and service descriptions, feature details, supported formats, use cases, documentation, FAQs, and policies.

Keep it factual and structured. Put the canonical source URL under each major section, remove clutter like navigation menus and cookie notices, and never present assumptions as facts.

Important for large sites: Do not paste every word of a big website into this file by hand. If your site is large or updates often, generate llms-full.txt automatically from your CMS or database, so it does not go stale. A hand-written file on a fast-moving site becomes outdated within weeks.

Step 4: Your sitemap.xml

Unlike llms.txt, a sitemap is an established format that search engines actively use. The best sitemap is one your platform generates and keeps updated automatically — so before creating anything, check whether you already have one.

Open yoursite.com/sitemap.xml and yoursite.com/sitemap_index.xml in your browser. If a working sitemap already exists, do not replace it — improve how your platform generates it instead. Here is what most platforms do:

  • WordPress: uses a sitemap from WordPress itself or an SEO plugin, often at /wp-sitemap.xml or /sitemap_index.xml.
  • Shopify: generates /sitemap.xml automatically.
  • Wix and Squarespace: generate and update the sitemap for you.
  • Blogger: generates /sitemap.xml for posts and /sitemap-pages.xml for static pages, updated on every publish (more on this below).
  • Next.js or a custom site: have your developer generate a dynamic sitemap from the framework or database.

Only hand-build a static sitemap.xml if your site is tiny and its URLs rarely change. When you do, include only canonical, indexable URLs that return HTTP 200, use absolute HTTPS links, and skip login, checkout, search, filter, duplicate, redirected, and broken URLs. Add a lastmod date only when you genuinely know it — do not guess.

Step 5: Review the files

Before you publish anything, run each file past a quick review so you do not ship errors.

llms.txt

  • The description is accurate and every link opens successfully over HTTPS.
  • Only genuinely important pages are included, and nothing is invented.

llms-full.txt

  • The information matches your live site, with a source URL under each major section.
  • No outdated prices or features, no private content, no repeated paragraphs.

sitemap.xml

  • Every URL is canonical, indexable, and returns HTTP 200 — no redirects or broken links.
  • No tracking parameters, and no filter, login, or checkout URLs. The XML opens without an error.

Step 6: Serve the files at the root

All three files must live at the root of your domain, reachable directly:

Correct locations
https://yoursite.com/llms.txt https://yoursite.com/llms-full.txt https://yoursite.com/sitemap.xml

They must not sit inside a folder such as /blog/llms.txt or /files/llms.txt. On most hosting, you simply drop the files into your public root directory — commonly public/, public_html/, www/, or, for a Next.js project, the /public folder. If a developer handles it, the requirements are simple: each file must return HTTP 200, need no login, not redirect to an HTML page, be served as UTF-8 text (the sitemap as valid XML), keep its exact lowercase filename, and not be blocked in robots.txt.

Blogger is the big exception — it has no way to place a file in a public root at all. That is what the next section solves.

How to add llms.txt to a Blogger website (Cloudflare Worker)

Here is where most guides fall silent, because they assume you can drop a file into a folder. On Blogger, you cannot. Blogger has no static file hosting, and no theme edit can create a real file at yoursite.com/llms.txt — the theme only controls HTML output, so it cannot register a brand-new root URL that returns plain text.

The clean, correct solution is a free Cloudflare Worker. A Worker is a tiny script that runs on Cloudflare's network in front of your site. You point your domain through Cloudflare, and the Worker answers requests for /llms.txt and /llms-full.txt with real plain-text content, while every other URL flows straight through to Blogger untouched. This method fully satisfies the standard. Below is the exact process, in the order that works.

Part A — Point your domain through Cloudflare

1

Create a free Cloudflare account and click Add a site. Enter your domain (for example, yoursite.com) and choose the Free plan.

2

Cloudflare scans and imports your existing DNS records automatically. Review them and confirm your Blogger records came across — the CNAME for www pointing to ghs.google.com, and the four Google A records for your root domain. Leave the proxy (the orange cloud) turned on for both www and the root.

3

Cloudflare gives you two nameservers. Log in to your domain registrar (wherever you bought the domain) and replace the existing nameservers with Cloudflare's two.

4

Wait for activation. In Cloudflare your domain will show Pending Nameserver Update and then flip to Active. This can take anywhere from a few minutes to a few hours. Nothing else works until it says Active.

Do this carefully: Moving nameservers hands Cloudflare control of all your DNS. That is why Step 2 matters — if your Blogger records (the www CNAME and the Google root records) are not present in Cloudflare before the switch finishes, your live site can go down. Confirm they are there first.

Part B — Create the Worker

5

In Cloudflare, open Workers & Pages and click Create. Choose the Start with Hello World option (not a template, not "upload static files"), give it a name like sitename-llms, and click Deploy. This deploys a placeholder Worker — that is expected.

6

Open Edit code, select all the placeholder code, delete it, and paste the script below. Put your own content inside the two text blocks. Then click Deploy again.

worker.js
const LLMS_TXT = `# Your Site Name > A one-line summary of what your website does. ## Main Tools - [First Tool](https://yoursite.com/first-tool): What it does. ## Company - [About](https://yoursite.com/about): About your site. `; const LLMS_FULL_TXT = `# Your Site Name A longer, detailed text version of your key content goes here. `; export default { async fetch(request) { const { pathname } = new URL(request.url); if (pathname === "/llms.txt") return text(LLMS_TXT); if (pathname === "/llms-full.txt") return text(LLMS_FULL_TXT); return fetch(request); // everything else goes to Blogger }, }; function text(body) { return new Response(body, { status: 200, headers: { "content-type": "text/plain; charset=utf-8" }, }); }
7

Test the Worker on its own URL first. In the preview panel, add /llms.txt to the temporary workers.dev address and refresh. You should see your text appear. (The bare address showing "There is nothing here yet" is normal — the Worker only answers the two file paths.) Once this works, you know the code is correct before you touch your domain.

Part C — Connect the Worker to your domain

8

On the Worker, open Settings → Domains & Routes → Add → Route. Select your domain as the zone, and add two routes using exact paths, one per file:

Worker routes
www.yoursite.com/llms.txt www.yoursite.com/llms-full.txt
Use exact paths, not a wildcard. It is tempting to add one broad route like yoursite.com/*, but do not. If you already run another Worker on your site (for example, a Blogger HTML tweak), a broad route can intercept every request and even take your whole site down if it errors. Exact paths always win over wildcards in Cloudflare's matching, so your two files get served while everything else stays on Blogger.

Part D — Test and troubleshoot

9

Open yoursite.com/llms.txt in a private browser window. You should see plain text, no login, and no 404.

If it does not work, these are the usual causes, in order:

  • You see your blog's themed "404" page. That means the request reached Blogger, not the Worker — so Cloudflare is not intercepting yet. Check that your domain shows Active in Cloudflare and that the www DNS record is proxied (orange cloud, not grey).
  • You get an SSL or security warning. In Cloudflare, set the SSL/TLS mode to Full.
  • Another Worker is catching the request. The two exact-path routes should take precedence; if not, add the two file checks to the top of that existing Worker instead.
To update the files later: just edit the two text blocks in the Worker and click Deploy again. No re-routing, no DNS changes.

No-code alternative (no Cloudflare)

If you would rather not move your nameservers, you can approximate llms.txt entirely inside Blogger. It is less strict — it serves a redirect to an HTML page instead of raw text at the root — but AI crawlers that read HTML will still see your content. Create two Blogger Pages (one for each file's content), then go to Settings → Errors and redirects → Custom redirects and permanently redirect /llms.txt and /llms-full.txt to those pages. Use this only if avoiding a domain migration matters more to you than serving perfectly raw text.

Step 7: Add your sitemap to robots.txt

On Blogger you do not build a sitemap — it is generated for you at yoursite.com/sitemap.xml (posts) and yoursite.com/sitemap-pages.xml (static pages), and updated every time you publish. Do not try to upload a static sitemap to replace it; a static file goes stale while the auto-generated one stays current.

What you should do is declare both sitemaps in your robots.txt. In Blogger, go to Settings → Crawlers and indexing → Enable custom robots.txt and paste this:

Custom robots.txt (Blogger)
User-agent: * Disallow: /search Allow: / Sitemap: https://www.yoursite.com/sitemap.xml Sitemap: https://www.yoursite.com/sitemap-pages.xml

The single Disallow: /search is intentional and does not hide your real content — it just keeps crawlers out of Blogger's auto-generated search and label pages, which are thin duplicates. Everything else stays fully open to both search engines and AI crawlers. Do not add llms.txt or llms-full.txt as Sitemap entries; those are not sitemaps.

Step 8: Submit your sitemap to Google Search Console

Submitting your sitemap helps Google discover your pages faster. Open Google Search Console, select your domain property, open Sitemaps, enter sitemap.xml, and click Submit. On Blogger, submit sitemap-pages.xml as well so your static pages are covered. Then check that the status shows Success and review any reported errors.

Set expectations: Submitting a sitemap helps Google find URLs. It does not guarantee crawling, indexing, or rankings — those depend on your content and your site's overall quality.

Step 9: Test everything

Open each of these in a private browser window and confirm it behaves correctly.

URLs to check
https://yoursite.com/llms.txt https://yoursite.com/llms-full.txt https://yoursite.com/sitemap.xml https://yoursite.com/robots.txt
  • Each URL opens without logging in and does not show a 404.
  • The two txt files show readable text (Method 1 serves real plain text; the redirect method at least displays your content clearly).
  • The sitemap opens as valid XML, and robots.txt lists it.
  • Every link inside your llms files opens correctly over HTTPS.
  • Your sitemap is accepted in Google Search Console.

Step 10: Keep them updated

These files are only useful while they are accurate. Refresh them whenever you launch or remove an important page, change URLs, update pricing or documentation, add new tools or categories, migrate your site, or change your domain. A practical rhythm:

  • Let your platform generate sitemap.xml automatically — no manual work.
  • Review llms.txt monthly, or after any major change to your site.
  • Regenerate llms-full.txt whenever your important content changes.

The honest truth about llms.txt and AI visibility

It is worth repeating clearly, because the internet is full of hype right now: an llms.txt file is a nice-to-have, not a growth lever. AI answer engines mostly recommend what they can already find and trust on the open web — which means getting suggested by AI is still, in large part, ordinary SEO plus being genuinely worth citing.

These files can help make your important pages easier to discover, give AI systems a clearer summary of your site, organise your key resources, and reduce confusion about what your site is. They cannot guarantee a top spot in ChatGPT, a citation in Perplexity, visibility in Gemini, inclusion in Claude's answers, Google rankings, or immediate crawling and indexing.

The things that actually move the needle are the same ones that always have: pages with real, helpful depth; original information only you can provide; other sites linking to and mentioning you; clean, crawlable structure; and consistent publishing. Add your llms.txt because it is quick and future-friendly — then put your real energy into content people and machines actually want to cite.

Frequently asked questions

What is an llms.txt file used for?

It gives AI tools and answer engines a short, curated, plain-text overview of your website and a list of your most important pages. The goal is to help machines understand your site without having to parse menus, ads, and layout code.

Does Google use llms.txt?

No. Google has publicly said it does not use llms.txt for ranking, and no other major AI platform has confirmed using it either. It is a proposed standard that tools may adopt later, so treat it as low-effort future-proofing rather than a ranking factor today.

Does llms.txt help SEO or improve AI rankings?

Not directly, at least not yet. Getting recommended by AI is still mostly ordinary SEO plus genuinely citable content. Add llms.txt because it is quick and harmless, but do not expect traffic from the file alone.

Where do I upload the llms.txt file?

At the root of your domain, so it is reachable at yoursite.com/llms.txt. It should not sit inside a folder like /blog/llms.txt. On platforms with file hosting you place it in the public root; on Blogger you serve it with a Cloudflare Worker or a custom redirect, as shown above.

Can I add llms.txt to Blogger?

Yes, but not by uploading a file — Blogger has no static file hosting. The clean method is a free Cloudflare Worker that serves the file as real plain text at your root. A no-code alternative is to create Blogger Pages and redirect /llms.txt to them, which needs no DNS changes.

Do I need a Cloudflare account to use llms.txt on Blogger?

For the correct, plain-text version, yes — Cloudflare's free plan lets a Worker serve the file at your root. If you would rather not change your nameservers, the no-code redirect method keeps everything inside Blogger, at the cost of serving a redirect to an HTML page instead of raw text.

How do I test whether my llms.txt file is working?

Open yoursite.com/llms.txt in a private browser window. It should load readable text with no login prompt and no 404. If you see your blog's 404 page instead, the file is not being served at the root yet — on Blogger, that usually means the Cloudflare step is not fully active.

What is the difference between llms.txt and llms-full.txt?

llms.txt is a short, curated highlight reel — your best pages with one-line descriptions. llms-full.txt is a longer, detailed version with full descriptions, supported formats, FAQs, and source URLs. Both are optional and both belong at the domain root.

Is llms.txt the same as robots.txt or a sitemap?

No. robots.txt tells crawlers which paths they may access, and sitemap.xml lists every URL for search engines to crawl. llms.txt is a newer, optional file aimed at AI tools that summarises your site in plain language. They work alongside each other.

This guide is written from a real Blogger setup, including the parts that broke and how they were fixed. If a step behaves differently on your site, the private-browser test in each section is the fastest way to see exactly where it is going wrong.