An llms.txt file is a plain-text file placed at the root of your site (at yoursite.ma/llms.txt) that tells AI models which of your pages are the most important, clean, and trustworthy to read first. Think of it as a table of contents written for machines: instead of letting ChatGPT, Claude, or Perplexity guess where your best content lives among the navigation, the footer, and the cookie banner, you hand it to them on a plate, in Markdown, with zero noise.
This guide explains what llms.txt actually is, why the convention is emerging, how to write one with a concrete example, how it differs from robots.txt, and where adoption honestly stands today in Morocco and beyond.
What is an llms.txt file exactly?
The llms.txt file is a proposed standard that surfaced in 2024, championed by Jeremy Howard (co-founder of fast.ai). The idea starts from a simple technical observation: a modern HTML page is a nightmare for a language model. It carries JavaScript, navigation markup, ad scripts, CNDP consent pop-ups, chat widgets. For a human, the browser tidies all of that. For an AI working inside a limited context window, it is pure waste: it burns its tokens reading code instead of your knowledge.
The llms.txt file fixes this by pointing to your key pages, ideally as stripped-down Markdown versions. It tells the machine: "here is who we are, here are the ten resources that matter, read those." It is algorithmic hospitality. You make the crawler's job easier, and in return you raise the odds that it understands your offer correctly and cites you.
Distinguish it from two cousins. First, sitemap.xml lists all your URLs for classic search engines: exhaustive, built for indexing. The llms.txt is curated: only the essentials, ranked, in natural language. Second, robots.txt states what is allowed or forbidden to crawl. The llms.txt blocks nothing: it recommends. The files are complementary, not rivals.
What does this file really do for GEO?
The llms.txt sits inside the logic of GEO (Generative Engine Optimization), the set of levers aimed at getting cited by AI rather than ranking in ten blue links. If the topic is new to you, start with our complete GEO guide, which sets the scene.
Concretely, the file plays three roles.
It lowers extraction cost
When an assistant fetches your content in real time (Perplexity, ChatGPT search mode, Google AI Overviews), every millisecond and every token counts. A clean Markdown page reads at a fraction of the cost of a heavy HTML page. You become the "easy" source, and easy sources get cited more often.
It disambiguates your entity
A good llms.txt opens with a block that states clearly who you are: name, business, geography, what you offer. For an agency in Casablanca or Rabat, it is the chance to anchor "Morocco", "darija", "MAD" and your services in the model's mind, without forcing it to infer any of that.
It surfaces your best proof
You choose what to put in the window: your case studies, your flagship guides, your contact page. You steer the read toward what builds authority instead of letting the AI stumble onto a stale old page at random.
What does an llms.txt file look like?
The format is deliberately minimal: it is Markdown. An H1 title with the site name, a summary paragraph (often in a blockquote), then H2 sections holding lists of annotated links. Here is a trimmed example for a fictional Moroccan SME:
# Atlas Bois (custom carpentry, Casablanca)
> Atlas Bois designs and builds bespoke furniture for homes
> and businesses in Morocco. Quotes in MAD, delivery across
> Casablanca, Rabat, and Marrakech.
## Core resources
- [Our work](https://atlasbois.ma/work.md): gallery of delivered projects
- [Pricing and lead times](https://atlasbois.ma/pricing.md): price ranges in dirhams
- [Request a quote](https://atlasbois.ma/quote.md): contact form
## Guides
- [Choosing your wood](https://atlasbois.ma/guides/wood.md): oak, beech, plywood
## Optional
- [Legal notice](https://atlasbois.ma/legal.md)
Notice the "Optional" section: it is a convention of the standard. It signals to the model that those links are secondary and can be skipped if the context window is tight. You rank explicitly.
There is also a variant, llms-full.txt. Instead of pointing to pages, it inlines all the text concatenated into one big file. The upside: the AI makes a single call. The downside: the file can grow huge and overflow context windows. Our advice for most Moroccan businesses: start with a short, well-curated llms.txt, and only move to llms-full.txt if you carry dense technical documentation (SaaS, API, product).
What goes inside your llms.txt? The checklist
Here is a prioritization table, from most useful to most optional, with a recommendation for the Moroccan context.
| Element | Priority | Why | Morocco note | |---|---|---|---| | Name + one positioning line | Essential | Disambiguates the entity | Mention "Morocco" and the city | | Summary block (blockquote) | Essential | Gives context in 2-3 lines | State quotes in MAD | | 5 to 10 key pages | Essential | Steers toward your proof | Local case studies first | | Markdown versions of pages | Recommended | Cuts reading cost | Clean .md, no menu | | "Optional" section | Recommended | Ranks for the AI | Legal notice, CNDP here | | Contact details | Recommended | Eases conversion | Phone, WhatsApp, email | | Your whole sitemap | Avoid | Too much noise, dilutes signal | Keep that for sitemap.xml | | Stuffed keywords | Avoid | Useless and counterproductive | The AI is not fooled |
The golden rule: less, but better. An llms.txt of fifteen sorted links beats a list of two hundred URLs where the crawler gets lost.
How do you host and test it in Morocco?
Publishing is trivial, and that is precisely the argument: the cost is near zero.
Step 1: create the file
Write your Markdown in a text editor. Name it exactly llms.txt (lowercase).
Step 2: place it at the root
Deploy it so it resolves at https://yoursite.ma/llms.txt. On classic hosting, that is the root folder. On Vercel or Netlify, drop it in /public. On WordPress, a plugin or FTP access does the job.
Step 3: check the MIME type
The file must be served as text/plain or text/markdown, not downloaded. Open the URL in a browser: if the text renders, you are good. If it downloads, adjust your server configuration.
Step 4: test crawler access
Check your robots.txt to confirm you have not blocked AI bots (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) if you want to be cited. Blocking those agents is shutting the door on GEO. It is a strategic call to make consciously.
On the ClaroDigi site, we serve an llms.txt at /llms.txt as part of our GEO setup, alongside a bilingual FR/EN library of more than 380 guides. As a coherence proof point: a single one of our content clusters drives roughly 56% of the site's search impressions and 97% of its clicks on its own. The llms.txt is only one piece of that machine, but it is the cheapest piece to lay down.
Should you believe in it? The honest state of adoption
Let us be candid: in 2026, llms.txt is not yet universally honored. None of the major engines (Google, OpenAI, Anthropic) has publicly confirmed reading it as a systematic ranking signal. It is an emerging convention, not a ratified standard like the sitemap.
So why ship it anyway? Because the cost-benefit math is unbeatable. Writing a solid llms.txt takes one to two hours. The risk is zero: it cannot penalize you. And the upside is real: adoption is growing across documentation tooling, some crawlers already consult it, and the trajectory of the web clearly heads toward traffic increasingly mediated by AI. Shipping the file today positions you before the wave, not after.
Our take on what is overrated: do not over-invest in llms-full.txt if you lack dense technical documentation. And above all, do not imagine the file replaces good content. The llms.txt makes your knowledge readable, it does not create it. The real work is still producing genuinely useful pages structured answer-first. For that side, see our guide on structured data and schema for AI citation, which pairs perfectly with llms.txt on the machine layer.
How do you fit this into a coherent AI strategy?
The llms.txt only makes sense inside a wider setup. On its own, it is a business card for robots. Coupled with a real content and structuring effort, it becomes a multiplier. The logical sequence: produce answer-first guides, mark them up in schema, expose clean Markdown versions, then list them in the llms.txt. That is exactly the kind of chain we operate in our AI transformation engagements, where visibility inside AI assistants becomes an acquisition channel in its own right.
This is the Authority Engine philosophy: give away useful knowledge for free, make it trivially accessible to humans and machines alike, earn trust, and receive the prospect already convinced. The llms.txt is one of the smallest gestures in that engine, and one of the highest-return. If you want to see how the mechanism assembles end to end for a Moroccan business, explore our SEO and GEO method in Morocco: the file is only the visible tip of an engine built to turn free knowledge into warm leads.
FAQ
Does llms.txt replace robots.txt or sitemap.xml?
No, all three coexist and serve different roles. The robots.txt allows or forbids bot access. The sitemap.xml exhaustively lists your URLs for classic search indexing. The llms.txt recommends a curated selection of your best pages to AI models. Keep all three.
Do Google or ChatGPT actually read my llms.txt today?
Honestly, not in a guaranteed or universal way in 2026. No major engine has confirmed using it as an official signal. It is an emerging convention. But since setup cost is minimal and risk is zero, shipping it remains a rational low-stakes, high-upside bet.
How many pages should I list in my llms.txt?
Aim for quality, not quantity: five to fifteen well-chosen links cover most Moroccan SMEs. Surface your case studies, your flagship guides, and your contact page. Push the secondary items (legal notice, CNDP) into an "Optional" section.
Do I need to create Markdown versions of my pages?
Recommended but not mandatory. A clean .md version, free of menus and scripts, lowers reading cost for the AI and improves citation fidelity. If you are short on time, point to your existing HTML pages first: an imperfect llms.txt beats no llms.txt.
Will llms.txt really win me clients in Morocco?
Not on its own. The file makes your knowledge machine-readable, but it does not create that knowledge. The real lever is genuinely useful content, structured answer-first, that the llms.txt simply exposes cleanly. Paired with a sound content strategy, it raises your odds of being cited by the AI assistants your prospects already consult.
