Home
Categories
Free Tools
Write For UsAbout UsContact
SEO

How to Create and Upload an llms.txt File (Step-by-Step, Any CMS)

How to create and upload an llms.txt file on WordPress, Shopify, Webflow, and static sites, with a free generator to skip manual formatting.

July 13, 2026 8 min read
How to Create and Upload an llms.txt File (Step-by-Step, Any CMS)

Key takeaways

  • WordPress powers roughly 43 percent of websites, and none of its default themes generate an llms.txt file.
  • The file opens with an H1 and a one-sentence summary, then lists your key pages in Markdown.
  • Upload it to the site root, then confirm it returns a 200 status and plain text.

WordPress powers roughly 43 percent of all websites according to W3Techs’ 2026 usage survey, and none of its default themes generate an llms.txt file automatically. Shopify, Webflow, and static site generators such as Astro and Hugo share the same gap: the format only reached general awareness after Answer.ai published the proposal in September 2024, well after most CMS platforms had finalised their file-handling conventions.

Publishing a compliant file takes three steps regardless of platform: draft the markdown content, place it at the domain root, and confirm it resolves at yourdomain.com/llms.txt without a redirect. This guide walks through each step for WordPress, Shopify, Webflow, and static sites, and shows how a free generator tool removes the formatting work entirely.

Budget roughly an hour end-to-end for a typical business site with under thirty key pages. Larger documentation sites with hundreds of pages take longer only because the page-selection decision in step one takes longer, not because the technical upload itself is more complex.

Step 1: Decide Which Pages Belong in the File

Not every page deserves a place in an llms.txt file. The format works best as a curated shortlist, not a mirror of the full sitemap. Start with documentation, pricing, core product or service pages, and any content a person would need to understand what the business does within the first thirty seconds of arriving.

Group candidate pages into two or three categories before writing any markdown. A software company typically separates Documentation, API Reference, and Pricing. A content publisher might use Guides, Tools, and About. This grouping becomes the H2 structure of the finished file, so deciding it upfront saves a rewrite later.

Step 2: Write the Markdown File

The file opens with a single H1 line naming the site or product, followed by a one-sentence blockquote summary. Below that, each category becomes its own H2 heading, with page links listed underneath as single-line markdown entries: the link text, the URL in parentheses, and a short description after a colon.

Writing this by hand is manageable for ten pages and tedious past thirty. WritoryBuzz’s free llms.txt generator accepts a list of page titles, URLs, and categories, then outputs correctly formatted markdown in under two minutes, which removes the most common formatting mistakes: missing blank lines between sections and inconsistent link syntax.

Step 3: Upload to WordPress

WordPress serves files from its root directory through the server’s file system rather than the post editor, so llms.txt needs to be placed via FTP, a hosting file manager, or an SFTP client, directly inside the top-level public_html or www folder alongside wp-config.php. Uploading it as a Page or Post will not work, since WordPress would serve that content at a URL with the site’s permalink structure attached rather than at the bare root address.

A small number of WordPress plugins launched in 2025 that generate and serve the file through a settings screen instead of a manual upload, which suits site owners without FTP access. Either method is valid as long as the final file resolves at the exact root URL with no redirect chain in front of it.

Step 4: Upload to Shopify and Webflow

Shopify does not currently expose root-level file uploads through its standard admin interface, which means llms.txt on a Shopify store typically requires either a theme code edit that serves the file through a custom app proxy, or a Shopify app built specifically for the purpose. Webflow allows custom code and file hosting through its site settings, where a custom file can be attached to the root path directly from the Webflow dashboard without a code edit.

Both platforms share a verification step that WordPress users often skip: after publishing, request the file directly in a browser using the bare root URL. If the platform’s routing rules intercept the request and return the homepage instead of the raw markdown, the file is not correctly deployed even if the upload step reported success.

Step 5: Upload to Static Site Generators

Static sites built with Astro, Hugo, Next.js, or plain HTML handle llms.txt the same way they handle robots.txt or favicon.ico: as a static asset placed in the public or static directory, which the build process copies to the site root automatically. This is the simplest deployment path of the four covered here, since no server-side routing decision can intercept the file.

Step 6: Verify and Maintain the File

After upload, confirm three things: the file returns a 200 status code at the root URL, the content type serves as plain text or markdown rather than HTML, and every linked URL inside the file is live and correctly spelled. A robots.txt generator with a built-in URL tester covers the same verification pattern and is worth running alongside llms.txt, since the two files commonly get checked in the same technical SEO pass.

Treat the file as a living document rather than a one-time task. Whenever a major page is added, renamed, or retired, the llms.txt entry needs the same update, or it starts pointing AI crawlers toward broken or outdated content, which undermines the exact trust signal the file is meant to build.

Troubleshooting Common Upload Errors

The most frequent failure is a file that uploads successfully but resolves to the homepage instead of the raw markdown when requested directly. This happens when a CMS’s routing layer intercepts unrecognised root-level requests and redirects them to a 404 page or the homepage rather than serving the static file, which is common on Shopify and some managed WordPress hosts with aggressive caching rules.

A second common error is serving the file with the wrong content type. Browsers and crawlers expect llms.txt to return as text/plain or text/markdown. Some server configurations default unrecognised file extensions to application/octet-stream, which can cause a crawler to download the file rather than read it inline. Checking the response headers directly, rather than just confirming the file opens in a browser tab, catches this error reliably.

A third error worth checking is caching. Content delivery networks and full-page cache plugins sometimes serve a stale 404 response for the file’s URL from before it was uploaded, even after the file exists on the server. Purging cache for the specific root URL after upload resolves this in most cases.

What to Do After the File Is Live

Publishing llms.txt is one input into a wider AI visibility picture, not the whole picture. WritoryBuzz’s AEO checker scores schema markup, FAQ formatting, and crawler access alongside the presence of a valid llms.txt file, giving a fuller view of whether a page is actually citation-ready.

For a breakdown of real, annotated files from live sites, see llms.txt Examples: 8 Real Files Broken Down Line by Line, which shows the category and formatting choices covered in this guide applied in practice.

Get It Live This Week, Not This Quarter

The technical work here rarely exceeds an hour once the page list is decided. The harder part is the upfront decision about which pages actually belong in the file, and that decision benefits from involving whoever owns product marketing or documentation rather than being made by whoever has FTP access.

Start with the background on the format covered in What Is llms.txt? The New Standard for AI Crawler Visibility if the concept itself still needs justifying internally, then move straight to drafting the file with the generator once the page list is agreed.

Once live, revisit the file quarterly. Explore the rest of WritoryBuzz’s free AI search and SEO toolkit for the other checks worth running on the same schedule.

Related readFree E-E-A-T Checkers vs Manual Audits: What Each One MissesRead →

Free tools for SEO

FAQs

Do I need coding skills to create an llms.txt file?

No. The file is plain markdown, similar to writing a simple list with links. A free generator tool can format it automatically from a list of page titles and URLs, so no coding knowledge is required for the file itself.

Where exactly does llms.txt need to be uploaded?

The file must sit at a domain’s bare root address, such as yourdomain.com/llms.txt, not inside a subfolder or served as a CMS page. WordPress, Shopify, and static sites each require a different upload method to reach that exact location.

How is llms.txt different from a normal sitemap upload?

A sitemap.xml lists every indexable URL for search engines and is often auto-generated by SEO plugins. llms.txt is a manually curated, much shorter markdown list intended for language models, and almost no CMS generates it automatically as of 2026.

How long does it take to set up llms.txt?

Drafting the file typically takes under an hour once the page list is decided, and uploading it takes a few more minutes depending on the platform. Static sites are fastest since the file deploys as part of the normal build process.

Can WordPress plugins generate llms.txt automatically?

A small number of WordPress plugins released in 2025 can generate and serve the file through a settings screen, which avoids a manual FTP upload. Coverage across all WordPress themes and hosting setups is not universal, so manual upload remains a reliable fallback.

How often should an llms.txt file be updated?

Update the file whenever a major page is added, renamed, or removed, and review it on a quarterly schedule at a minimum. An outdated file pointing to broken or retired pages undermines the trust signal the file is intended to provide.

Was this guide helpful?
Akshay Goswami
Written by

Akshay Goswami

Akshay Goswami is the founder and owner of WritoryBuzz, a digital publication focused on technology, business, SEO, AI, and emerging industry trends. With expertise in SEO, content strategy, and digital growth, he creates research-driven content that helps readers stay ahead in the evolving online landscape while building authoritative brands through impactful storytelling.

More from this author

Keep exploring

Have expertise to share? Write for WritoryBuzz.Read the guidelines and send us your pitch.
Become a contributor
Free tools

63 free tools for writers, SEOs and developers

Open one in your browser and start. Nothing to install, and your text stays on your device.

PrivateInstant resultsNo sign up
Write for us

Have expertise to share?

  • Original, well researched guides
  • Reviewed by our editors
  • 29 categories to publish in
Submit a guest post
© 2026 WritoryBuzz. All rights reserved.Back to top