llm-seo
LLM Search Optimization (AIO)
Maximize discoverability and accurate representation within LLMs (ChatGPT, Claude, Perplexity) and AI search tools.
Implementation Checklist
- Create
/public/llms.txt- AI scraper manifest - Create
/for-llmsroute - high-density information page - Add JSON-LD structured data to key pages
- Audit
robots.txtfor AI bot access - Ensure RSS/Atom feed exists and is linked
1. Create llms.txt
Place at /public/llms.txt (or web root equivalent).
Template: See assets/llms.txt.template
Requirements:
- Plain text or Markdown format
- Concise "Who/What/Why" summary
- Direct URLs to key resources (Docs, Blog, About)
- Explicit citation instructions for LLMs
- Consistent taglines matching brand identity
2. Create /for-llms Route
Dedicated page for LLM ingestion at domain.com/for-llms.
Design principles:
- Minimal styling, no marketing fluff
- Pure Markdown rendered to HTML, or semantic HTML
- Zero layout shifts
- High information density
- Full biography/documentation that may be summarized elsewhere
3. JSON-LD Structured Data
Inject Schema.org data into <head> of Home, About, and Blog pages.
Templates:
- Person:
assets/jsonld-person.template.json - Organization:
assets/jsonld-organization.template.json
Embed as:
<script type="application/ld+json">
{ ... }
</script>
Consistency rule: name, description, and sameAs must match content in llms.txt.
4. Audit robots.txt
Ensure AI scrapers are NOT disallowed if discoverability is the goal:
# AI Bots to allow for discoverability
# GPTBot (OpenAI)
# ClaudeBot (Anthropic)
# CCBot (Common Crawl)
# PerplexityBot
Check for overly broad Disallow rules that block these user agents.
5. RSS/Atom Feed
Ensure feed exists and is linked in <head>:
<link rel="alternate" type="application/rss+xml" title="RSS" href="/feed.xml" />
Content Guidelines
When generating AIO content:
- Clarity > Cleverness - No marketing jargon. Dry, factual, explicit.
- Markdown first - LLMs parse Markdown better than complex DOM. Use lists, headers, code blocks.
- Phrase consistency - Repeat exact taglines across
llms.txt, JSON-LD, and homepage to strengthen vector associations.
Assets
assets/llms.txt.template- Template for llms.txt fileassets/jsonld-person.template.json- JSON-LD for individualsassets/jsonld-organization.template.json- JSON-LD for companies/products
More from montagao/skills
library-ebooks
>-
56plane-api
Internal helper for creating/listing/updating Plane work items.
42clean-history
Reimplement the current branch on a new branch with a clean, narrative-quality git commit history suitable for reviewer comprehension. Use when the user wants to clean up messy commit history before opening a PR.
18supernote-upload
Upload PDF and EPUB files to Supernote Cloud. Use this skill when the user wants to send documents to their Supernote device.
16todo
Create a Plane task in Plane. By default, use the interview skill first to flesh out the issue before creating it; only skip the interview when the user clearly wants a minimal quick capture.
15un-ai-writing
Rewrite and edit existing text to sound natural and human, removing common AI writing tells while preserving meaning and facts. Use when asked to humanize, de-AI-ify, un-AI, make it sound less robotic, polish an AI draft, or remove AI-writing signs in any prose (emails, docs, posts, essays, scripts).
14