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).
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, velocity
The 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 json
Returns 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).