Answer Engine Optimization (AEO) skill — optimize content to be cited by AI language models (ChatGPT, Perplexity, Claude, Gemini, Mistral) as authoritative sources. Distinct from SEO — AEO optimizes for citation in LLM-generated responses, not search rankings. Use when planning content for AI-first search audiences, auditing existing content for E-E-A-T signals, tracking which pages get cited by which LLMs, or building a citation-friendly content strategy. Triggers — 'AEO audit', 'optimize for ChatGPT', 'get cited by Perplexity', 'LLM citation strategy', 'answer engine optimization', 'content for AI search', 'E-E-A-T audit'. Output is a markdown audit report (default) or JSON for pipeline integration. Stdlib-only Python tools.
66
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
Fix and improve this skill with Tessl
tessl review fix ./.gemini/skills/aeo/SKILL.mdThe canonical home for this skill is aeo in alirezarezvani/claude-skills
Get your content cited by ChatGPT, Perplexity, Claude, Gemini, and Mistral as the authoritative source.
AEO is the practice of optimizing content for citation in LLM-generated responses — distinct from SEO, which optimizes for search rankings. This skill audits, optimizes, and tracks AEO performance.
| SEO | AEO | |
|---|---|---|
| Optimizes for | Click-through rankings | Being cited as authoritative source |
| Audience | Humans browsing search results | LLMs answering questions |
| Success metric | Position 1-10, organic traffic | Citation count across LLMs |
| Key signals | Backlinks, keywords, page speed | E-E-A-T, structured data, factual density |
| Update cadence | Weeks-to-months | Days-to-weeks (LLM training cycles) |
Both can coexist — the same content can rank #1 on Google AND get cited by Perplexity. But the techniques differ: SEO rewards keyword density + backlinks; AEO rewards primary-source signals + structured facts.
marketing-skill/skills/seo-audit insteadThe auditor (aeo_audit.py) scores content across 4 dimensions:
Composite score 0-100 with per-dimension breakdown. Output: markdown report with specific fix recommendations.
The optimizer (aeo_optimizer.py) generates AEO-improved variants:
[1]-style references with sourcesThree modes: conservative (touch <10% of words), balanced (touch <30%), aggressive (rewrite for maximum AEO).
The tracker (citation_tracker.py) maintains a local ledger of citations:
Stores in ~/.aeo-data/citations.json (local, no telemetry).
references/aeo_eeat_canon.md — E-E-A-T methodology, industry thresholds, anti-patternsreferences/llm_citation_patterns.md — per-LLM citation selection heuristics (Perplexity, ChatGPT, Claude, Gemini, Mistral)references/aeo_vs_seo.md — when to invest in AEO vs SEO vs bothreferences/bot_access_and_monitoring.md — AI crawler robots.txt matrix (the prerequisite check: a blocked bot zeroes that platform), Google Search Console AI Overviews monitoring, manual testing protocols, citation-drop diagnostic (merged from the former ai-seo skill)references/extractable_content_patterns.md — 7 copy-ready block templates (definition, steps, table, FAQ, attributed stat, expert quote, summary box) that answer engines reliably extract (merged from the former ai-seo skill)0. Pre-flight: bot access
Check robots.txt against the crawler matrix in references/bot_access_and_monitoring.md
→ a blocked GPTBot/PerplexityBot/ClaudeBot/Google-Extended is the first fix, always
1. Audit existing content
$ python3 scripts/aeo_audit.py --url https://example.com/blog/post
→ markdown report with composite score + 4-dimension breakdown
2. Apply optimization recommendations
$ python3 scripts/aeo_optimizer.py --input post.md --mode balanced --output post-aeo.md
→ optimized variant with citations + schema + structural fixes
3. Publish + monitor
$ python3 scripts/citation_tracker.py --action add --url https://example.com/blog/post \
--llm perplexity --query "what is AEO" --date 2026-05-17
→ adds entry to local citations.json ledger
4. Report
$ python3 scripts/citation_tracker.py --action report --url https://example.com/blog/post
→ per-page citation stats: count, LLMs, queries, velocityThe skill is industry-aware via per-run --industry flag. Supported: saas, healthcare, finance, legal, ecommerce, b2b, media, education.
Industry affects:
Example:
python3 scripts/aeo_audit.py --url <url> --industry healthcare
# → stricter E-E-A-T thresholds; flags any health claim without primary citation# AEO Audit Report — [Page Title]
**URL:** https://example.com/blog/post
**Date:** 2026-05-17
**Industry:** saas
**Composite Score:** 72/100 (B+)
## Dimension Breakdown
| Dimension | Score | Verdict |
|---|---|---|
| Experience | 80/100 | Strong — first-person case study present |
| Expertise | 65/100 | Author bio missing credentials |
| Authoritativeness | 75/100 | 4 backlinks from authority domains |
| Trustworthiness | 68/100 | No corrections policy linked |
## Top 3 Fixes
1. Add author bio with credentials (Expertise +15)
2. Link to corrections policy from footer (Trustworthiness +12)
3. Inject FAQ schema for the 5 questions implicit in H2s (Authoritativeness +8)
## All Recommendations
[...]
## Audit Trail
[3-count of analysis steps, sources cited, time taken]python3 scripts/aeo_audit.py --url <url> --output jsonReturns full structured data for integration with content management workflows.
| Industry | Min Composite | Critical Signals |
|---|---|---|
| Healthcare | 85 | Medical reviewer byline, peer-reviewed citations, FDA disclosure |
| Finance | 85 | Author CFA/CPA credentials, "not investment advice" disclaimer, dated examples |
| Legal | 85 | Jurisdiction disclosed, attorney bio, "not legal advice" disclaimer |
| SaaS | 70 | Product manager byline, case study with metrics, ROI calculator |
| E-commerce | 65 | Product reviews aggregated, return policy, schema.org Product |
| B2B | 70 | Industry analyst quotes, customer logos, ROI data |
| Media | 70 | Editorial policy, fact-check link, original reporting |
| Education | 75 | Instructor bio, learning outcomes, accreditation if applicable |
pip install requiredrequests + beautifulsoup4 if --url mode used (otherwise pass markdown via --input for file-based audits)query_research mode (currently scaffold-only — full LLM-driven query research is roadmap)All data is local-first:
~/.aeo-data/citations.json — citation ledger~/.aeo-data/patterns.json — success patterns library~/.aeo-data/audits/<hash>.md — saved audit reportsNo telemetry. No cloud sync. Export to CSV anytime via citation_tracker.py --action export.
marketing-skill/skills/seo-audit — traditional click-through SEOmarketing-skill/skills/programmatic-seo — template-driven SEO at scalemarketing-skill/skills/content-strategy — broader content planningmarketing-skill/skills/copywriting — voice + tonemarketing-skill/skills/schema-markup — structured data implementationVersion: 2.7.3
Source: Ported from alirezarezvani/aeo-box (answer-engine-optimization/ skill, 2,464 LOC across 9 modules). This port distills the 9-module Python toolkit into 3 stdlib CLI tools per the claude-skills convention; preserves the E-E-A-T scoring methodology, citation-tracking schema, and industry-aware thresholds verbatim.
License: MIT (matches upstream + this repo).
19392f7
Canonical home
since Aug 28, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.