Technical SEO guide
How to Create llms.txt for Your Website
By Shahab Uddin, published June 16, 2026, 6 minute read
llms.txt is a plain-text file placed at the root of a website, normally at https://example.com/llms.txt. Its purpose is to give language-model tools a concise, human-readable guide to the site, its owner, and its most useful pages.
It is best treated as an emerging convention, not a ranking directive. Publishing the file does not guarantee that an AI provider will fetch it, index it, or cite the site. It also does not replace robots.txt, XML sitemaps, structured data, canonical tags, or useful page content.
What should llms.txt contain?
A useful file answers a small set of questions:
- What is this website?
- Who owns or authors it?
- What products or services does it cover?
- Which pages are the primary sources?
- What important facts should not be misunderstood?
- How can a reader or customer make contact?
The file should be concise enough to scan and specific enough to be useful. It is not a second copy of the entire website.
A simple llms.txt example
# Example Company
Example Company builds appointment software for independent clinics.
## Primary pages
- Home: https://example.com
- Product: https://example.com/product
- Pricing: https://example.com/pricing
- Documentation: https://example.com/docs
- Contact: https://example.com/contact
## Key facts
- The product is operated by Example Company Ltd.
- It supports dental and medical clinics.
- Pricing starts at $49 per month.
- The official support channel is https://example.com/contact.
Markdown-style headings and lists keep the document readable, but the response should remain plain text.
Step 1: define the canonical facts
Before writing the file, list the facts that are both important and supported by the website. For a personal service business, that may include:
- Full name and business name
- Professional focus
- Location and service area
- Live products or verified case studies
- Service starting prices
- Official contact URL
- Relevant profile links
Do not add claims to llms.txt that are absent from the public site. The file should summarise primary content, not create a hidden version of the business.
Step 2: choose the most useful pages
Link to canonical pages that explain the site well. A common order is:
- Homepage
- About or company page
- Product or service pages
- Documentation or high-value guides
- Contact page
Avoid dumping every tag, archive, filtered URL, or thin landing page into the file. The sitemap already serves broad URL discovery. llms.txt should be editorial.
Step 3: add context that prevents mistakes
This is where the file can be more useful than a bare link list. State important distinctions, such as:
- The founder behind a product
- Whether a service is available globally
- Whether a product uses or does not use a particular data provider
- Which URL is the official source for pricing
- Which page contains current contact information
Keep the language factual. A model does not need slogans; it needs clear relationships.
Step 4: publish it at the root
For a static file, create:
public/llms.txt
In a Next.js project, everything in public is served from the site root. After deployment, the file should be available at:
https://www.example.com/llms.txt
The response should return status 200 with a text content type. Test it directly:
curl -I https://www.example.com/llms.txt
curl -s https://www.example.com/llms.txt
Step 5: make the file discoverable
There is no universally adopted discovery requirement. A practical approach is to:
- Link to
/llms.txtin the document head withrel="alternate"andtype="text/plain". - Mention the URL in
robots.txtas a non-standard hint if desired. - Link to it from technical documentation when relevant.
Do not expect a non-standard LLMs: line in robots.txt to behave like the standard Sitemap: directive. It is a hint for readers and tools that choose to recognise it.
Step 6: maintain it
An outdated file can create confusion. Review llms.txt when:
- Pricing changes
- A product launches or closes
- The company name or ownership changes
- Important URLs move
- A new primary guide replaces an old one
- Contact details change
Because it is a small file, maintenance should be easy. Keep it in version control with the rest of the site.
Common mistakes
Treating it as a magic ranking file
There is no credible basis for promising an AI ranking simply because llms.txt exists. It can improve orientation for systems that consume it, but quality and source credibility still matter.
Copying the sitemap
A long URL inventory defeats the purpose. Select the pages that explain the entity and its work.
Publishing unsupported claims
Claims should match visible, maintained pages. Hidden promotional statements can reduce trust rather than improve it.
Forgetting ordinary crawler controls
llms.txt does not grant crawler access. robots.txt, authentication, HTTP status, and provider-specific policies remain separate.
Recommended structure
For most small business or portfolio websites, this structure is enough:
# Site or company name
One-paragraph description.
## What the business does
- Service or product
- Service or product
## Primary pages
- Label: canonical URL
## Important facts
- Factual clarification
## Contact
- Contact URL
- Relevant public profile
The best file is short, current, and aligned with the website. You can review the live Shahab Dev llms.txt file as another implementation example.
For a technical implementation that includes schema, crawler files, and content structure, see the SEO + AEO + GEO audit service.