lintpage
~/llms-txt/webflow
§ Webflow

llms.txt on Webflow

Webflow now serves an llms.txt you upload in site settings, so the file is a setting rather than a workaround. What the upload covers, what it does not, and how to confirm the file is live.

Webflow serves pages it generates, assets from its CDN, and the root-level files it has built features for - robots.txt, and now an llms.txt you upload in site settings.

§ how to serve it

Serving /llms.txt from Webflow.

step 1

Write the file first, then upload it

Write the index before you go looking for the setting. The upload takes whatever you hand it, and Webflow documents nothing about checking the format, so the quality of the file is yours to own and the upload is the last step rather than the first. The field lives under Site settings, then SEO, then LLMs.txt, and publishes to your domain root; Webflow documents the upload as a UTF-8 file under 100 KB. Its launch announcement says the file is kept out of search engines' index, which is right for something written for models rather than searchers - though note that the announcement is the only place Webflow says it, and the current help article does not repeat it.

step 2

Publish, then fetch the live domain

An upload that has not been published is not live, and Webflow documents the file as publishing to your connected domain rather than the .webflow.io staging one. Fetch the published domain and read the first lines back, rather than trusting the settings screen.

bash
curl -sI https://your-custom-domain.com/llms.txt | head -1
curl -s  https://your-custom-domain.com/llms.txt | head -5
step 3

On Enterprise, there is an API for it

Webflow added llms.txt endpoints to its Beta API in October 2025: GET, PATCH and DELETE on /sites/{site_id}/llms_txt, behind the site_config:read and site_config:write scopes. It needs an Enterprise workspace, and it is the route to reach for when the file should be written by your own pipeline rather than uploaded by hand. On any other plan the settings field is the whole story.

step 4

If the upload is not available to you, a proxy still works

The upload is the simple path, and it is not the only one. Anything in front of your domain can answer /llms.txt before the request reaches Webflow: in a probe of the 10,000 most popular sites, a handful of Webflow sites served the file from their own infrastructure rather than from Webflow. If your domain is already behind Cloudflare, a Worker on that route returns the file in a few lines and leaves the rest of the site untouched.

Cloudflare Worker, routed on example.com/llms.txt
const FILE = `# Acme

> What Acme does, in one sentence.

## Pages

- [Product](https://acme.com/product): What it does and who it is for
`;

export default {
  fetch(request) {
    const { pathname } = new URL(request.url);
    if (pathname === '/llms.txt') {
      return new Response(FILE, {
        headers: { 'Content-Type': 'text/plain; charset=utf-8' },
      });
    }
    return fetch(request); // Everything else goes to Webflow untouched.
  },
};
step 5

Check the response, not the upload screen

A file can be uploaded and still not be what a client receives: a redirect rule or a proxy in front of the domain can answer the path first, and what comes back is then your site's HTML with a 200. Run the URL through a checker that reads the body rather than the status code.

§ what goes wrong here

What Webflow gets wrong.

The failures below are specific to Webflow. A generic llms.txt guide will not mention any of them.

01

Webflow's own docs disagree about whether it generates one

The Webflow-specific trap, and it is now a documentation problem rather than a behaviour you can rely on. The Help Center documents an upload-only flow with no generate button, and Webflow's own blog tells you to build the file with a third-party tool before uploading it - while its AEO solutions page claims every site "automatically generates" schema markup and llms.txt files. Those cannot both be true of your site, so assume neither and fetch the path to see what is actually there. Either way the field takes whatever you hand it, so a half-finished draft or a dump of every page is served exactly as uploaded, and Webflow documents nothing about validating the format - an upload is not evidence the file is any good.

02

Custom code in site settings cannot create a URL

Webflow documents custom code as injected before the closing head or body tag of pages that already exist, supporting HTML, CSS and JavaScript only, with no server-side languages and a 50,000 character limit per section. Nothing in that can answer a request for a path with no page behind it, so whatever you paste there, /llms.txt still 404s. If you need to serve a raw file some other way, the supported route is a /.well-known upload - .json, .txt or .md, up to 100 KB, 30 files, on a Premium site plan and not on the staging domain. That is not the domain root, so it will not serve /llms.txt, but it is the one place Webflow hands back a file you uploaded.

03

The .webflow.io staging domain behaving differently

Webflow documents the uploaded file as publishing to your connected domain rather than to the staging one, so there may be nothing at the path on .webflow.io even after a successful upload. The staging domain is noindexed and does not always behave identically to the custom domain besides, particularly once a proxy is in front of the latter. Test against the domain that is actually published.

04

Expecting the file to show up in search

Webflow says it keeps the uploaded llms.txt out of the search index deliberately. That is the correct behaviour and worth knowing before you go looking for it in Search Console: the file is a machine-readable index for models, not a page that ranks, and Google has said separately that its own AI features do not need it.

§ faq

Questions, answered.

Can you add an llms.txt file to a Webflow site?
Yes. Webflow added an upload for it in the SEO part of site settings and serves the file from your domain root, while keeping it out of search results. Guides that say the root is not writable on Webflow, including an earlier version of this page, were written before that shipped - so check the date on anything that tells you it cannot be done.
Does Webflow write the llms.txt for me?
Webflow's documentation does not agree with itself. The Help Center describes uploading a file you wrote, and Webflow's blog points you at third-party generators, but its AEO solutions page says every site automatically generates llms.txt files. Shopify and Wix are unambiguous by comparison: Shopify mirrors a generated agents.md at the path, and Wix generates and maintains a file. On Webflow, fetch your own /llms.txt and believe that rather than either document - and note that nothing Webflow publishes claims it validates the format.
Does a Webflow page at /llms work instead?
It is an HTML page at a different URL, so no client looking for /llms.txt will find it, and anything that does fetch it gets markup rather than markdown. It can still be a useful human-facing index; it just is not an llms.txt and should not be described as one.
Is a Cloudflare Worker worth it for one file?
Rarely, now that the upload exists. It is worth it if the upload is not available on your setup, or if something already sits in front of your domain and answers that path first. Otherwise you would be adding infrastructure in front of your whole site to serve a file that site settings will serve for you.
Is Markdown for AI agents the same thing as llms.txt?
No. They are separate Webflow features that happen to point at the same clients. Markdown for AI agents converts your pages to Markdown when a language model requests them, and is toggled under Site settings, then Publishing, Advanced publishing options, AI and Agents - it needs a custom domain, an Enterprise workspace, and your site moved onto Webflow's Cloudflare infrastructure. The llms.txt upload needs none of that: it is one file you write, wherever the SEO field is available. Worth knowing alongside it: Webflow scoped its llms.txt implementation to that file deliberately, and does not serve the per-page .html.md variants the spec proposes.

LintPage is not affiliated with any platform or plugin named on this page. The claims here were last checked against vendor documentation on 2026-09-18. Settings and defaults move quickly, so confirm against your own install before relying on one.

§ the part that matters

An llms.txt will not fix a site AI cannot read.

Before writing an index for AI clients, check that they can fetch your pages at all. LintPage runs 60 checks against a URL in about 30 seconds - free, no signup.

run a full scan →