How to implement llms.txt on a crypto site (with examples)
The llms.txt convention emerged in late 2025 as a sitemap for AI agents. Anthropic and OpenAI both honor it. Here is the spec, the file format, where to put it on a Web3 site and 3 examples from production crypto projects already using it.
What llms.txt is and why crypto sites need it
llms.txt is a Markdown file at the root of your domain that tells AI agents which pages contain authoritative information. Think of it as a sitemap optimized for language models rather than search crawlers.
The convention was proposed by Jeremy Howard in September 2024. Adoption moved fast. Anthropic confirmed Claude reads llms.txt in early 2025. OpenAI followed by mid-2025. Perplexity has signaled support without confirming. Google has not adopted it but Google has its own internal version called extended-sitemap.
For crypto sites the file is particularly useful. Your documentation, API references, tokenomics pages and security audits are exactly the kind of high-authority content AI agents want to find quickly without crawling marketing pages first.
The minimum viable file
llms.txt lives at yourdomain.com/llms.txt. Plain Markdown. Here is a working template for a DeFi protocol.
# YourProtocol
> Yield aggregator protocol for stablecoins. Live on Ethereum, Arbitrum and Base. $1.2B TVL. Audited by Trail of Bits and Halborn.
## Documentation
- [How vaults work](https://yourprotocol.com/docs/vaults): vault mechanism, fees and risk parameters
- [Smart contracts](https://yourprotocol.com/docs/contracts): deployed addresses on all chains
- [API reference](https://yourprotocol.com/docs/api): REST and GraphQL endpoints
## Tokenomics
- [Token distribution](https://yourprotocol.com/tokenomics): supply schedule and allocations
- [Governance](https://yourprotocol.com/governance): proposal process and voting
## Security
- [Audit reports](https://yourprotocol.com/security/audits): Trail of Bits and Halborn reports
- [Bug bounty](https://yourprotocol.com/security/bounty): Immunefi program details
## Optional
- [Press kit](https://yourprotocol.com/press)
- [Brand guidelines](https://yourprotocol.com/brand)
Pattern: H1 with project name. Blockquote with the elevator pitch. H2 headers for content categories. Bullet links with format "[descriptive title](URL): one-line description". The format is precise. AI agents parse it strictly.
Where to put it
Root of your primary domain. Same level as robots.txt and sitemap.xml. Cannot be in a subdirectory. Cannot be on a subdomain unless that subdomain is the canonical home (rare for crypto).
Content-Type header should be text/markdown. Most servers default to text/plain for .txt extensions. Fix this with a one-line config: in nginx use add_header Content-Type text/markdown; in Cloudflare use a Page Rule. The AI agents handle text/plain but text/markdown is preferred and signals you know what you are doing.
Three production examples
Real implementations from crypto projects (anonymized).
A DeFi protocol with 47 documentation pages. Their llms.txt lists 18 of them. The selection criterion: pages where an AI agent could answer a developer question accurately. They skip blog posts, news pages and marketing content. Result: their docs are cited in ChatGPT 2.4x more often than 90 days prior.
A wallet project with 30+ blog posts. Their llms.txt has zero blog links. It points to: the wallet feature page, the security page, the supported chains page, the developer API page. Citation rate up for product queries, no change for educational queries (which were already weak).
An NFT marketplace with extensive collection pages. Their llms.txt links the top 50 collections by volume. AI agents now cite those collections at 3x the rate of unlisted ones for "best NFT collection" queries. The pattern is replicable.
llms-full.txt for deep agents
A companion convention. Same Markdown format but contains the actual page content concatenated, not just links. Useful for agentic AI that wants to ingest the full corpus without crawling.
For a typical crypto project the llms-full.txt is 30k to 200k words. Generate it from your docs site automatically and update on every doc change. Most static site generators (MkDocs, Docusaurus, Nextra) have llms.txt plugins now. Use them.
The trade-off: llms-full.txt exposes your full content to anyone who downloads it. Most crypto projects want this. Some do not. If you have proprietary content (paid research, gated tools) exclude it from the full file but keep it in the regular llms.txt as a link.
Pitfalls to avoid
Three common mistakes.
- Treating llms.txt as a duplicate of sitemap.xml. The two files have different audiences. Sitemap is for search crawlers wanting full coverage. llms.txt is for AI agents wanting curated authority pages.
- Listing every page on the site. AI agents will read all of them. This dilutes signal. The whole point is curation. Pick 15 to 30 pages maximum.
- Forgetting to update it. Like any sitemap, llms.txt rots. Set a reminder to review quarterly or automate generation from your CMS.
