Blog GEO: AI Citation Optimization Audit

AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together.

How to use it

  1. Hit Copy SKILL.md — or use the Claude Code line below to get every file.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit AgriciDaniel/claude-blog/skills/blog-geo#main ~/.claude/skills/blog-geo-2

For one project only, change the path to .claude/skills/blog-geo-2. This skill also uses llms.txt, robots.txt — copying SKILL.md alone won't be enough. See the folder on GitHub.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text312 lines
blog-geo-2/SKILL.md312 lines11.8 KBpushed 60d agoRawView on GitHub

Blog GEO: AI Citation Optimization Audit

Scores blog posts for AI citation readiness across ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com, Google AI Overviews, and Google AI Mode as one SEO workflow, not a separate discipline. Generates a 0-100 internal AI Citation Readiness heuristic with platform-specific recommendations. The score is not a calibrated probability of citation.

Google's 2026-05-15 guidance frames generative-AI optimization as SEO: no special markup, llms.txt requirement, or separate GEO/AEO playbook is required for Google visibility. Use GEO/AEO as shorthand labels only.

Cross-reference

This skill covers FLOW surface 3 (AI assistant citations: ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com) and contributes to surface 2 (SERP plus AI Overviews). Surface mapping: skills/blog/references/flow-alignment.md.

For directly relevant AI-citation prompts (AI-supporting-pages rewrite, evidence-based quality follow-up, ChatGPT discovery, visibility prompts), see /blog flow optimize.

Evidence Discipline

Use numeric AI-citation benchmarks only when the report includes a source block with URL, publisher, methodology, sample size, engine or version, query class, retrieval date, and expiry date. If any field is missing, label the benchmark as directional or remove the number. Default heuristics:

  • Self-contained, evidence-backed explanations can aid reuse, but Google prescribes no passage-length or "chunking" requirement.
  • Comparison tables with semantic headers may improve extractability, but do not cite an uplift without a dated source block.
  • AI Overviews coverage is methodology-dependent: cite a dated range, not a fixed point.

Audit Process

Step 1: Read Content

Extract from the blog post:

  • Full content text and word count
  • Heading structure (H1, H2, H3 hierarchy)
  • Individual paragraphs and their word counts
  • FAQ sections (if present)
  • Schema markup (JSON-LD, microdata, RDFa)
  • robots.txt mentions or meta robots directives
  • Any TL;DR or summary boxes
  • Comparison tables and their HTML structure
  • Numbered/ordered lists
  • Definition-style formatting

Step 2: Evidence-Backed Citability (4 pts)

Check each section between headings for AI-extractable passages:

Check Criteria
Context independence Each passage makes sense extracted from surrounding context
Claim structure Passages contain: specific claim + supporting evidence + source attribution
Completeness Passage answers a question without requiring reader to read adjacent sections

Scoring: Count important sections meeting the evidence and completeness criteria. Do not score section length.

  • 4 pts: 80%+ sections have citable passages
  • 3 pts: 60-79%
  • 2 pts: 40-59%
  • 1 pt: 20-39%
  • 0 pts: <20%

Step 3: Purpose Fit and Reader Utility (3 pts)

Check heading format and answer structure:

Check Criteria
Clear purpose The introduction identifies the page's topic, audience, and reader task
Useful section openings Important sections state the point without throat-clearing
Intent-matched format Declarative headings, questions, FAQs, tables, and lists are used only when they fit the material

Scoring:

  • 3 pts: All three criteria met
  • 2 pts: Two criteria met
  • 1 pt: One criterion met
  • 0 pts: None met

Step 4: Entity Clarity (3 pts)

Check topic consistency and disambiguation:

Check Criteria
Canonical topic One unambiguous primary topic per page
Consistent naming Same entity name used throughout (no confusing synonyms)
Intro statement Clear topic statement in the introduction paragraph
Title-content match Title accurately reflects the content focus

Scoring:

  • 3 pts: All four criteria met
  • 2 pts: Three criteria met
  • 1 pt: One or two criteria met
  • 0 pts: None met

Step 5: Content Structure for Extraction (3 pts)

Check for AI-extractable content patterns:

Check Criteria
Summary Optional standalone summary when it helps the intended reader
Comparison tables Tables with semantic headers such as `` or clear column labels
Ordered lists Numbered lists for processes and step-by-step instructions
Definition formatting Key terms formatted with clear definition patterns
Evidence-backed explanations Important reusable claims carry enough context and source support

Scoring:

  • 3 pts: 4-5 elements present
  • 2 pts: 3 elements present
  • 1 pt: 1-2 elements present
  • 0 pts: None present

Step 6: AI Crawler Accessibility (2 pts)

Check technical requirements for AI crawler indexing:

Check Criteria
Rendered content Important content is present in the rendered DOM and accessible to the target crawler
Google visibility Normal crawlability and indexability for Googlebot. No special GEO/AEO file or markup is required for Google AI features
Non-Google AI crawlers If the site wants visibility in non-Google answer engines, check robots.txt treatment for GPTBot, ChatGPT-User, ClaudeBot, PerplexityBot, and related documented crawlers
Schema consistency Structured data reaches the rendered DOM and matches visible content
Page size Reasonable page size within AI crawler limits

Scoring:

  • 2 pts: Google crawlability/indexability is clean, and selected non-Google crawler policies match the site's stated goals
  • 1 pt: Google is indexable but one selected non-Google crawler or rendering check needs review
  • 0 pts: Google crawling/indexing is blocked or multiple selected crawlers are unintentionally blocked

Step 7: Platform-Specific Analysis

Evaluate observable readiness for each declared surface. Product behavior changes by mode, query set, geography, and date, so do not infer causal preferences from a vendor sample.

ChatGPT

  • Check that material claims are source-backed and useful without depending on a specific content format.
  • Treat current citation samples as non-causal context, not a listicle, freshness, or domain-authority rule.

Perplexity

  • Check crawlability, source fidelity, and material freshness when the query is time-sensitive. Verify observations with current logs or reproducible tooling before describing product behavior.

Google AI Overviews

  • Follow Google's normal SEO guidance: make content helpful, crawlable, indexable, and eligible for snippets. No special GEO/AEO markup or llms.txt is required for Google visibility.
  • Measure Search and AI-feature visibility separately. Organic overlap observed in a sample does not establish a preference or guarantee inclusion.

Google AI Mode

  • Treat separately from AI Overviews in reports. Emphasize normal Search eligibility, clear page purpose, accessible text, and consistency between visible content and structured data.

Claude, Gemini, Copilot, and You.com

  • Evaluate content clarity, source accessibility, freshness, and whether robots policy intentionally allows or blocks each crawler where documented.
  • Use engine-specific recommendations only when current docs, logs, or test results are available.

For each platform, provide:

  • Current citability rating (High / Medium / Low)
  • Specific improvements to clarity, source fidelity, usefulness, and crawlability
  • Content format recommendations

Step 8: Strengthen Reusable Evidence

For important sections that lack support, propose a self-contained improvement with a specific claim, the context needed to understand it, and a verified source or transparent original methodology. Do not pad every section, impose a word band, or manufacture statistics.

Step 9: Calculate AI Citation Readiness Score (0-100)

Map the 15-point subcategory scores to a 0-100 display score:

Category Raw Points Display Weight Max Display Score
Evidence-Backed Citability /4 x6.75 27
Purpose Fit and Reader Utility /3 x6.67 20
Entity Clarity /3 x6.67 20
Content Structure /3 x6.67 20
AI Crawler Accessibility /2 x6.5 13
Total /15 100

Rating thresholds:

  • 90-100: Excellent: highly citable by AI systems
  • 70-89: Good: citable with minor improvements
  • 50-69: Needs Work: significant gaps in citability
  • Below 50: Poor: major restructuring needed

Step 10: Generate Report

Output the following report:

## AI Citation Readiness Report: [Title]

**AI Citation Readiness Heuristic: [X]/100**: [Rating]

This is an internal editorial heuristic, not a calibrated probability.

### Score Breakdown
| Category | Raw | Display | Max |
|----------|-----|---------|-----|
| Evidence-Backed Citability | X/4 | X | 27 |
| Purpose Fit and Reader Utility | X/3 | X | 20 |
| Entity Clarity | X/3 | X | 20 |
| Content Structure | X/3 | X | 20 |
| AI Crawler Accessibility | X/2 | X | 13 |
| **Total** | **X/15** | **X** | **100** |

### Per-Section Citability Analysis
| Section (H2) | Purpose Clear | Self-Contained | Claim+Evidence | Ready |
|---------------|---------------|----------------|----------------|-------|
| [heading] | Yes/No | Yes/No | Yes/No | Yes/No |

### Platform-Specific Optimization
#### ChatGPT
- [specific recommendations]

#### Perplexity
- [specific recommendations]

#### Google AI Overviews
- [specific recommendations]

#### Google AI Mode
- [specific recommendations]

#### Claude / Gemini / Copilot / You.com
- [specific recommendations]

### Evidence Improvements

#### [H2 Section 1]
> [Self-contained, source-backed improvement sized to the material]

#### [H2 Section 2]
> [Self-contained, source-backed improvement sized to the material]

### Technical Recommendations
- [ ] [Technical fix with specifics]

### Priority Action Items
1. [Most impactful improvement]
2. [Second most impactful]
3. [Third most impactful]

Run `/blog analyze <file>` for full content quality scoring.

Optional: Search Performance Context (blog-google)

If blog-google credentials include Tier 1 (GSC) and the post has a published URL:

  1. Query GSC by page and query dimensions, then filter rows to the URL: python3 skills/blog-google/scripts/run.py gsc_query --property <property> --dimensions query,page --json
  2. Add to platform-specific analysis:
    • Current impressions, clicks, CTR, average position
    • Search queries driving traffic to this URL
  3. Check indexation: python3 skills/blog-google/scripts/run.py gsc_inspect <url> --json
  4. Report indexation status, canonical selection, mobile usability.
  5. If skipped, report SKIPPED: credentials unavailable or SKIPPED: unpublished URL.

Optional: AI Citation Readiness Heuristic

For a per-engine readiness view (distinct from the 15-point AI Citation Readiness category scored by /blog analyze), run:

python3 scripts/ai_citation_score.py <file> --format markdown

It returns a non-calibrated 0-100 overall heuristic plus per-engine subscores for Google AI Overview, Perplexity, and ChatGPT, a factor breakdown, and up to three highest-impact fixes. Legacy overall_probability output is retained only as a compatibility alias.

1---
2name: blog-geo
3description: >
4 AI citation readiness audit as part of SEO, covering classic Google search
5 and AI search surfaces together. Use whenever the user wants their content
6 to rank or be cited in ChatGPT, Perplexity, Claude, Gemini, Copilot,
7 You.com, Google AI Overviews, or Google AI Mode. AI citation optimization
8 audit scoring blog posts for major answer surfaces. Evaluates
9 evidence-backed citability, purpose clarity, entity clarity, structured
10 data, and AI crawler accessibility. Suggests evidence-backed explanations and a
11 0-100 AI Citation Readiness score. Use when user says "geo", "ai
12 citation", "ai optimization", "citation audit", "aeo", "perplexity
13 optimization", "chatgpt citation".
14user-invokable: true
15argument-hint: "<file-path>"
16license: MIT
17---
18 
19# Blog GEO: AI Citation Optimization Audit
20 
21Scores blog posts for AI citation readiness across ChatGPT, Perplexity, Claude,
22Gemini, Copilot, You.com, Google AI Overviews, and Google AI Mode as one SEO
23workflow, not a separate discipline. Generates a 0-100 internal AI Citation
24Readiness heuristic with platform-specific recommendations. The score is not a
25calibrated probability of citation.
26 
27Google's 2026-05-15 guidance frames generative-AI optimization as SEO: no
28special markup, llms.txt requirement, or separate GEO/AEO playbook is required
29for Google visibility. Use GEO/AEO as shorthand labels only.
30 
31## Cross-reference
32 
33This skill covers FLOW surface 3 (AI assistant citations: ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com) and contributes to surface 2 (SERP plus AI Overviews). Surface mapping: `skills/blog/references/flow-alignment.md`.
34 
35For directly relevant AI-citation prompts (AI-supporting-pages rewrite,
36evidence-based quality follow-up, ChatGPT discovery, visibility prompts), see
37`/blog flow optimize`.
38 
39## Evidence Discipline
40 
41Use numeric AI-citation benchmarks only when the report includes a source block
42with URL, publisher, methodology, sample size, engine or version, query class,
43retrieval date, and expiry date. If any field is missing, label the benchmark as
44directional or remove the number. Default heuristics:
45 
46- Self-contained, evidence-backed explanations can aid reuse, but Google
47 prescribes no passage-length or "chunking" requirement.
48- Comparison tables with semantic headers may improve extractability, but do not
49 cite an uplift without a dated source block.
50- AI Overviews coverage is methodology-dependent: cite a dated range, not a
51 fixed point.
52 
53## Audit Process
54 
55### Step 1: Read Content
56 
57Extract from the blog post:
58- Full content text and word count
59- Heading structure (H1, H2, H3 hierarchy)
60- Individual paragraphs and their word counts
61- FAQ sections (if present)
62- Schema markup (JSON-LD, microdata, RDFa)
63- robots.txt mentions or meta robots directives
64- Any TL;DR or summary boxes
65- Comparison tables and their HTML structure
66- Numbered/ordered lists
67- Definition-style formatting
68 
69### Step 2: Evidence-Backed Citability (4 pts)
70 
71Check each section between headings for AI-extractable passages:
72 
73| Check | Criteria |
74|-------|----------|
75| Context independence | Each passage makes sense extracted from surrounding context |
76| Claim structure | Passages contain: specific claim + supporting evidence + source attribution |
77| Completeness | Passage answers a question without requiring reader to read adjacent sections |
78 
79**Scoring:** Count important sections meeting the evidence and completeness
80criteria. Do not score section length.
81- 4 pts: 80%+ sections have citable passages
82- 3 pts: 60-79%
83- 2 pts: 40-59%
84- 1 pt: 20-39%
85- 0 pts: <20%
86 
87### Step 3: Purpose Fit and Reader Utility (3 pts)
88 
89Check heading format and answer structure:
90 
91| Check | Criteria |
92|-------|----------|
93| Clear purpose | The introduction identifies the page's topic, audience, and reader task |
94| Useful section openings | Important sections state the point without throat-clearing |
95| Intent-matched format | Declarative headings, questions, FAQs, tables, and lists are used only when they fit the material |
96 
97**Scoring:**
98- 3 pts: All three criteria met
99- 2 pts: Two criteria met
100- 1 pt: One criterion met
101- 0 pts: None met
102 
103### Step 4: Entity Clarity (3 pts)
104 
105Check topic consistency and disambiguation:
106 
107| Check | Criteria |
108|-------|----------|
109| Canonical topic | One unambiguous primary topic per page |
110| Consistent naming | Same entity name used throughout (no confusing synonyms) |
111| Intro statement | Clear topic statement in the introduction paragraph |
112| Title-content match | Title accurately reflects the content focus |
113 
114**Scoring:**
115- 3 pts: All four criteria met
116- 2 pts: Three criteria met
117- 1 pt: One or two criteria met
118- 0 pts: None met
119 
120### Step 5: Content Structure for Extraction (3 pts)
121 
122Check for AI-extractable content patterns:
123 
124| Check | Criteria |
125|-------|----------|
126| Summary | Optional standalone summary when it helps the intended reader |
127| Comparison tables | Tables with semantic headers such as `<thead>` or clear column labels |
128| Ordered lists | Numbered lists for processes and step-by-step instructions |
129| Definition formatting | Key terms formatted with clear definition patterns |
130| Evidence-backed explanations | Important reusable claims carry enough context and source support |
131 
132**Scoring:**
133- 3 pts: 4-5 elements present
134- 2 pts: 3 elements present
135- 1 pt: 1-2 elements present
136- 0 pts: None present
137 
138### Step 6: AI Crawler Accessibility (2 pts)
139 
140Check technical requirements for AI crawler indexing:
141 
142| Check | Criteria |
143|-------|----------|
144| Rendered content | Important content is present in the rendered DOM and accessible to the target crawler |
145| Google visibility | Normal crawlability and indexability for Googlebot. No special GEO/AEO file or markup is required for Google AI features |
146| Non-Google AI crawlers | If the site wants visibility in non-Google answer engines, check robots.txt treatment for GPTBot, ChatGPT-User, ClaudeBot, PerplexityBot, and related documented crawlers |
147| Schema consistency | Structured data reaches the rendered DOM and matches visible content |
148| Page size | Reasonable page size within AI crawler limits |
149 
150**Scoring:**
151- 2 pts: Google crawlability/indexability is clean, and selected non-Google
152 crawler policies match the site's stated goals
153- 1 pt: Google is indexable but one selected non-Google crawler or rendering
154 check needs review
155- 0 pts: Google crawling/indexing is blocked or multiple selected crawlers are
156 unintentionally blocked
157 
158### Step 7: Platform-Specific Analysis
159 
160Evaluate observable readiness for each declared surface. Product behavior
161changes by mode, query set, geography, and date, so do not infer causal
162preferences from a vendor sample.
163 
164#### ChatGPT
165- Check that material claims are source-backed and useful without depending on
166 a specific content format.
167- Treat current citation samples as non-causal context, not a listicle,
168 freshness, or domain-authority rule.
169 
170#### Perplexity
171- Check crawlability, source fidelity, and material freshness when the query is
172 time-sensitive. Verify observations with current logs or reproducible tooling
173 before describing product behavior.
174 
175#### Google AI Overviews
176- Follow Google's normal SEO guidance: make content helpful, crawlable,
177 indexable, and eligible for snippets. No special GEO/AEO markup or llms.txt is
178 required for Google visibility.
179- Measure Search and AI-feature visibility separately. Organic overlap observed
180 in a sample does not establish a preference or guarantee inclusion.
181 
182#### Google AI Mode
183- Treat separately from AI Overviews in reports. Emphasize normal Search
184 eligibility, clear page purpose, accessible text, and consistency between
185 visible content and structured data.
186 
187#### Claude, Gemini, Copilot, and You.com
188- Evaluate content clarity, source accessibility, freshness, and whether robots
189 policy intentionally allows or blocks each crawler where documented.
190- Use engine-specific recommendations only when current docs, logs, or test
191 results are available.
192 
193For each platform, provide:
194- Current citability rating (High / Medium / Low)
195- Specific improvements to clarity, source fidelity, usefulness, and crawlability
196- Content format recommendations
197 
198### Step 8: Strengthen Reusable Evidence
199 
200For important sections that lack support, propose a self-contained improvement
201with a specific claim, the context needed to understand it, and a verified
202source or transparent original methodology. Do not pad every section, impose a
203word band, or manufacture statistics.
204 
205### Step 9: Calculate AI Citation Readiness Score (0-100)
206 
207Map the 15-point subcategory scores to a 0-100 display score:
208 
209| Category | Raw Points | Display Weight | Max Display Score |
210|----------|-----------|----------------|-------------------|
211| Evidence-Backed Citability | /4 | x6.75 | 27 |
212| Purpose Fit and Reader Utility | /3 | x6.67 | 20 |
213| Entity Clarity | /3 | x6.67 | 20 |
214| Content Structure | /3 | x6.67 | 20 |
215| AI Crawler Accessibility | /2 | x6.5 | 13 |
216| **Total** | **/15** | | **100** |
217 
218Rating thresholds:
219- 90-100: Excellent: highly citable by AI systems
220- 70-89: Good: citable with minor improvements
221- 50-69: Needs Work: significant gaps in citability
222- Below 50: Poor: major restructuring needed
223 
224### Step 10: Generate Report
225 
226Output the following report:
227 
228```
229## AI Citation Readiness Report: [Title]
230 
231**AI Citation Readiness Heuristic: [X]/100**: [Rating]
232 
233This is an internal editorial heuristic, not a calibrated probability.
234 
235### Score Breakdown
236| Category | Raw | Display | Max |
237|----------|-----|---------|-----|
238| Evidence-Backed Citability | X/4 | X | 27 |
239| Purpose Fit and Reader Utility | X/3 | X | 20 |
240| Entity Clarity | X/3 | X | 20 |
241| Content Structure | X/3 | X | 20 |
242| AI Crawler Accessibility | X/2 | X | 13 |
243| **Total** | **X/15** | **X** | **100** |
244 
245### Per-Section Citability Analysis
246| Section (H2) | Purpose Clear | Self-Contained | Claim+Evidence | Ready |
247|---------------|---------------|----------------|----------------|-------|
248| [heading] | Yes/No | Yes/No | Yes/No | Yes/No |
249 
250### Platform-Specific Optimization
251#### ChatGPT
252- [specific recommendations]
253 
254#### Perplexity
255- [specific recommendations]
256 
257#### Google AI Overviews
258- [specific recommendations]
259 
260#### Google AI Mode
261- [specific recommendations]
262 
263#### Claude / Gemini / Copilot / You.com
264- [specific recommendations]
265 
266### Evidence Improvements
267 
268#### [H2 Section 1]
269> [Self-contained, source-backed improvement sized to the material]
270 
271#### [H2 Section 2]
272> [Self-contained, source-backed improvement sized to the material]
273 
274### Technical Recommendations
275- [ ] [Technical fix with specifics]
276 
277### Priority Action Items
2781. [Most impactful improvement]
2792. [Second most impactful]
2803. [Third most impactful]
281 
282Run `/blog analyze <file>` for full content quality scoring.
283```
284 
285### Optional: Search Performance Context (blog-google)
286 
287If blog-google credentials include Tier 1 (GSC) and the post has a published URL:
288 
2891. Query GSC by page and query dimensions, then filter rows to the URL:
290 `python3 skills/blog-google/scripts/run.py gsc_query --property <property> --dimensions query,page --json`
2912. Add to platform-specific analysis:
292 - Current impressions, clicks, CTR, average position
293 - Search queries driving traffic to this URL
2943. Check indexation: `python3 skills/blog-google/scripts/run.py gsc_inspect <url> --json`
2954. Report indexation status, canonical selection, mobile usability.
2965. If skipped, report `SKIPPED: credentials unavailable` or
297 `SKIPPED: unpublished URL`.
298 
299### Optional: AI Citation Readiness Heuristic
300 
301For a per-engine readiness view (distinct
302from the 15-point AI Citation Readiness category scored by `/blog analyze`), run:
303 
304```bash
305python3 scripts/ai_citation_score.py <file> --format markdown
306```
307 
308It returns a non-calibrated 0-100 overall heuristic plus per-engine subscores
309for Google AI Overview, Perplexity, and ChatGPT, a factor breakdown, and up to
310three highest-impact fixes. Legacy `overall_probability` output is retained
311only as a compatibility alias.
312 

Discussion

Alternatives

Also in AI search (AEO)