GEO Audit Orchestration Skill
Purpose
This skill performs a comprehensive Generative Engine Optimization (GEO) audit of any website. GEO is the practice of optimizing web content so that AI systems (ChatGPT, Claude, Perplexity, Gemini, etc.) can discover, understand, cite, and recommend it. This audit measures how well a site performs across all GEO dimensions and produces an actionable improvement plan.
Key Insight
Traditional SEO optimizes for search engine rankings. GEO optimizes for AI citation and recommendation. Sites that score high on GEO metrics see 30-115% more visibility in AI-generated responses (Georgia Tech / Princeton / IIT Delhi 2024 study). The two disciplines overlap but have distinct requirements.
Audit Workflow
Phase 1: Discovery and Reconnaissance
Step 1: Fetch Homepage and Detect Business Type
Use WebFetch to retrieve the homepage at the provided URL.
Extract the following signals:
- Page title, meta description, H1 heading
- Navigation menu items (reveals site structure)
- Footer content (reveals business info, location, legal pages)
- Schema.org markup on homepage (Organization, LocalBusiness, etc.)
- Pricing page link (SaaS indicator)
- Product listing patterns (E-commerce indicator)
- Blog/resource section (Publisher indicator)
- Service pages (Agency indicator)
- Address/phone/Google Maps embed (Local business indicator)
Classify the business type using these patterns:
| Business Type |
Detection Signals |
| SaaS |
Pricing page, "Sign up" / "Free trial" CTAs, app.domain.com subdomain, feature comparison tables, integration pages |
| Local Business |
Physical address on homepage, Google Maps embed, "Near me" content, LocalBusiness schema, service area pages |
| E-commerce |
Product listings, shopping cart, product schema, category pages, price displays, "Add to cart" buttons |
| Publisher |
Blog-heavy navigation, article schema, author pages, date-based archives, RSS feeds, high content volume |
| Agency/Services |
Case studies, portfolio, "Our Work" section, team page, client logos, service descriptions |
| Hybrid |
Combination of above signals -- classify by dominant pattern |
Step 2: Crawl Sitemap and Internal Links
- Attempt to fetch
/sitemap.xml and /sitemap_index.xml.
- If sitemap exists, extract up to 50 unique page URLs prioritized by:
- Homepage (always include)
- Top-level navigation pages
- High-value pages (pricing, about, contact, key service/product pages)
- Blog posts (sample 5-10 most recent)
- Category/landing pages
- If no sitemap exists, crawl internal links from the homepage:
- Extract all
<a href> links pointing to the same domain
- Follow up to 2 levels deep
- Prioritize pages linked from main navigation
- Respect
robots.txt directives -- do not fetch disallowed paths.
- Enforce a maximum of 50 pages and a 30-second timeout per fetch.
Step 3: Collect Page-Level Data
For each page in the crawl set, record:
- URL, title, meta description, canonical URL
- H1-H6 heading structure
- Word count of main content
- Schema.org types present
- Internal/external link counts
- Images with/without alt text
- Open Graph and Twitter Card meta tags
- Response status code
- Whether the page has structured data
Phase 2: Parallel Subagent Delegation
Delegate analysis to 5 specialized subagents. Each subagent operates on the collected page data and produces a category score (0-100) plus findings.
Subagent 1: AI Visibility Analysis (geo-ai-visibility)
- Analyze content blocks for quotability by AI systems (citability scoring)
- Check AI crawler access via robots.txt and llms.txt presence
- Scan brand presence across YouTube, Reddit, Wikipedia, LinkedIn
- Score brand authority signals that AI models use for entity recognition
Subagent 2: Platform Optimization (geo-platform-analysis)
- Assess readiness for Google AI Overviews, ChatGPT, Perplexity, Gemini, Bing Copilot
- Check platform-specific ranking factors and optimization opportunities
Subagent 3: Technical GEO Infrastructure (geo-technical)
- Analyze robots.txt for AI crawler access
- Verify meta tags, headers, and technical accessibility for AI systems
- Check page speed, server-side rendering, and Core Web Vitals
- Assess security headers and mobile optimization
Subagent 4: Content E-E-A-T Quality (geo-content)
- Evaluate Experience, Expertise, Authoritativeness, Trustworthiness signals
- Check author bios, credentials, source citations
- Assess content freshness, depth, and originality
- Verify "About" page quality and team credentials
Subagent 5: Schema & Structured Data (geo-schema)
- Validate all schema.org markup
- Check for GEO-critical schema types (FAQ, HowTo, Organization, Product, Article)
- Assess schema completeness and accuracy
- Identify missing schema opportunities
Phase 3: Score Aggregation and Report Generation
Composite GEO Score Calculation
The overall GEO Score (0-100) is a weighted average of six category scores:
| Category |
Weight |
What It Measures |
| AI Citability |
25% |
How quotable/extractable content is for AI systems |
| Brand Authority |
20% |
Third-party mentions, entity recognition signals |
| Content E-E-A-T |
20% |
Experience, Expertise, Authoritativeness, Trustworthiness |
| Technical GEO |
15% |
AI crawler access, llms.txt, rendering, speed |
| Schema & Structured Data |
10% |
Schema.org markup quality and completeness |
| Platform Optimization |
10% |
Presence on platforms AI models train on and cite |
Formula:
GEO_Score = (Citability * 0.25) + (Brand * 0.20) + (EEAT * 0.20) + (Technical * 0.15) + (Schema * 0.10) + (Platform * 0.10)
Score Interpretation
| Score Range |
Rating |
Interpretation |
| 90-100 |
Excellent |
Top-tier GEO optimization; site is highly likely to be cited by AI |
| 75-89 |
Good |
Strong GEO foundation with room for improvement |
| 60-74 |
Fair |
Moderate GEO presence; significant optimization opportunities exist |
| 40-59 |
Poor |
Weak GEO signals; AI systems may struggle to cite or recommend |
| 0-39 |
Critical |
Minimal GEO optimization; site is largely invisible to AI systems |
Issue Severity Classification
Every issue found during the audit is classified by severity:
Critical (Fix Immediately)
- All AI crawlers blocked in robots.txt
- No indexable content (JavaScript-rendered only with no SSR)
- Domain-level noindex directive
- Site returns 5xx errors on key pages
- Complete absence of any structured data
- Brand not recognized as an entity by any AI system
High (Fix Within 1 Week)
- Key AI crawlers (GPTBot, ClaudeBot, PerplexityBot) blocked
- No llms.txt file present
- Zero question-answering content blocks on key pages
- Missing Organization or LocalBusiness schema
- No author attribution on content pages
- All content behind login/paywall with no preview
Medium (Fix Within 1 Month)
- Partial AI crawler blocking (some allowed, some blocked)
- llms.txt exists but is incomplete or malformed
- Content blocks average under 50 citability score
- Missing FAQ schema on pages with FAQ content
- Thin author bios without credentials
- No Wikipedia or Reddit brand presence
Low (Optimize When Possible)
- Minor schema validation errors
- Some images missing alt text
- Content freshness issues on non-critical pages
- Missing Open Graph tags
- Suboptimal heading hierarchy on some pages
- LinkedIn company page exists but is incomplete
Output Format
Generate a file called GEO-AUDIT-REPORT.md with the following structure:
# GEO Audit Report: [Site Name]
**Audit Date:** [Date]
**URL:** [URL]
**Business Type:** [Detected Type]
**Pages Analyzed:** [Count]
---
## Executive Summary
**Overall GEO Score: [X]/100 ([Rating])**
[2-3 sentence summary of the site's GEO health, biggest strengths, and most critical gaps.]
### Score Breakdown
| Category | Score | Weight | Weighted Score |
|---|---|---|---|
| AI Citability | [X]/100 | 25% | [X] |
| Brand Authority | [X]/100 | 20% | [X] |
| Content E-E-A-T | [X]/100 | 20% | [X] |
| Technical GEO | [X]/100 | 15% | [X] |
| Schema & Structured Data | [X]/100 | 10% | [X] |
| Platform Optimization | [X]/100 | 10% | [X] |
| **Overall GEO Score** | | | **[X]/100** |
---
## Critical Issues (Fix Immediately)
[List each critical issue with specific page URLs and recommended fix]
## High Priority Issues
[List each high-priority issue with details]
## Medium Priority Issues
[List each medium-priority issue]
## Low Priority Issues
[List each low-priority issue]
---
## Category Deep Dives
### AI Citability ([X]/100)
[Detailed findings, examples of good/bad passages, rewrite suggestions]
### Brand Authority ([X]/100)
[Platform presence map, mention volume, sentiment]
### Content E-E-A-T ([X]/100)
[Author quality, source citations, freshness, depth]
### Technical GEO ([X]/100)
[Crawler access, llms.txt, rendering, headers]
### Schema & Structured Data ([X]/100)
[Schema types found, validation results, missing opportunities]
### Platform Optimization ([X]/100)
[Presence on YouTube, Reddit, Wikipedia, etc.]
---
## Quick Wins (Implement This Week)
1. [Specific, actionable quick win with expected impact]
2. [Another quick win]
3. [Another quick win]
4. [Another quick win]
5. [Another quick win]
## 30-Day Action Plan
### Week 1: [Theme]
- [ ] Action item 1
- [ ] Action item 2
### Week 2: [Theme]
- [ ] Action item 1
- [ ] Action item 2
### Week 3: [Theme]
- [ ] Action item 1
- [ ] Action item 2
### Week 4: [Theme]
- [ ] Action item 1
- [ ] Action item 2
---
## Appendix: Pages Analyzed
| URL | Title | GEO Issues |
|---|---|---|
| [url] | [title] | [issue count] |
Quality Gates
- Page Limit: Never crawl more than 50 pages per audit. Prioritize high-value pages.
- Timeout: 30-second maximum per page fetch. Skip pages that exceed this.
- Robots.txt: Always check and respect robots.txt before crawling. Note any AI-specific directives.
- Rate Limiting: Wait at least 1 second between page fetches to avoid overloading the server.
- Error Handling: Log failed fetches but continue the audit. Report fetch failures in the appendix.
- Content Type: Only analyze HTML pages. Skip PDFs, images, and other binary content.
- Deduplication: Canonicalize URLs before crawling. Skip duplicate content (e.g., HTTP vs HTTPS, www vs non-www, trailing slashes).
Business-Type-Specific Audit Adjustments
SaaS Sites
- Extra weight on: Feature comparison tables (high citability), integration pages, documentation quality
- Check for: API documentation structure, changelog pages, knowledge base organization
- Key schema: SoftwareApplication, FAQPage, HowTo
Local Businesses
- Extra weight on: NAP consistency, Google Business Profile signals, local schema
- Check for: Service area pages, location-specific content, review markup
- Key schema: LocalBusiness, GeoCoordinates, OpeningHoursSpecification
E-commerce Sites
- Extra weight on: Product descriptions (citability), comparison content, buying guides
- Check for: Product schema completeness, review aggregation, FAQ sections on product pages
- Key schema: Product, AggregateRating, Offer, BreadcrumbList
Publishers
- Extra weight on: Article quality, author credentials, source citation practices
- Check for: Article schema, author pages, publication date freshness, original research
- Key schema: Article, NewsArticle, Person (author), ClaimReview
Agency/Services
- Extra weight on: Case studies (citability), expertise demonstration, thought leadership
- Check for: Portfolio schema, team credentials, industry-specific expertise signals
- Key schema: Organization, Service, Person (team), Review
1---2name: geo-audit3description: Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit across AI citability, platform analysis, technical infrastructure, content quality, and schema markup. Produces a composite GEO Score (0-100) with prioritized action plan.4---5
6# GEO Audit Orchestration Skill
7
8## Purpose
9
10This skill performs a comprehensive Generative Engine Optimization (GEO) audit of any website. GEO is the practice of optimizing web content so that AI systems (ChatGPT, Claude, Perplexity, Gemini, etc.) can discover, understand, cite, and recommend it. This audit measures how well a site performs across all GEO dimensions and produces an actionable improvement plan.
11
12## Key Insight
13
14Traditional SEO optimizes for search engine rankings. GEO optimizes for AI citation and recommendation. Sites that score high on GEO metrics see 30-115% more visibility in AI-generated responses (Georgia Tech / Princeton / IIT Delhi 2024 study). The two disciplines overlap but have distinct requirements.
15
16---
17
18## Audit Workflow
19
20### Phase 1: Discovery and Reconnaissance
21
22**Step 1: Fetch Homepage and Detect Business Type**
23
241. Use WebFetch to retrieve the homepage at the provided URL.
252. Extract the following signals:
26 - Page title, meta description, H1 heading
27 - Navigation menu items (reveals site structure)
28 - Footer content (reveals business info, location, legal pages)
29 - Schema.org markup on homepage (Organization, LocalBusiness, etc.)
30 - Pricing page link (SaaS indicator)
31 - Product listing patterns (E-commerce indicator)
32 - Blog/resource section (Publisher indicator)
33 - Service pages (Agency indicator)
34 - Address/phone/Google Maps embed (Local business indicator)
35
363. Classify the business type using these patterns:
37
38| Business Type | Detection Signals |
39|---|---|
40| **SaaS** | Pricing page, "Sign up" / "Free trial" CTAs, app.domain.com subdomain, feature comparison tables, integration pages |
41| **Local Business** | Physical address on homepage, Google Maps embed, "Near me" content, LocalBusiness schema, service area pages |
42| **E-commerce** | Product listings, shopping cart, product schema, category pages, price displays, "Add to cart" buttons |
43| **Publisher** | Blog-heavy navigation, article schema, author pages, date-based archives, RSS feeds, high content volume |
44| **Agency/Services** | Case studies, portfolio, "Our Work" section, team page, client logos, service descriptions |
45| **Hybrid** | Combination of above signals -- classify by dominant pattern |
46
47**Step 2: Crawl Sitemap and Internal Links**
48
491. Attempt to fetch `/sitemap.xml` and `/sitemap_index.xml`.
502. If sitemap exists, extract up to 50 unique page URLs prioritized by:
51 - Homepage (always include)
52 - Top-level navigation pages
53 - High-value pages (pricing, about, contact, key service/product pages)
54 - Blog posts (sample 5-10 most recent)
55 - Category/landing pages
563. If no sitemap exists, crawl internal links from the homepage:
57 - Extract all `<a href>` links pointing to the same domain
58 - Follow up to 2 levels deep
59 - Prioritize pages linked from main navigation
604. Respect `robots.txt` directives -- do not fetch disallowed paths.
615. Enforce a maximum of 50 pages and a 30-second timeout per fetch.
62
63**Step 3: Collect Page-Level Data**
64
65For each page in the crawl set, record:
66- URL, title, meta description, canonical URL
67- H1-H6 heading structure
68- Word count of main content
69- Schema.org types present
70- Internal/external link counts
71- Images with/without alt text
72- Open Graph and Twitter Card meta tags
73- Response status code
74- Whether the page has structured data
75
76---
77
78### Phase 2: Parallel Subagent Delegation
79
80Delegate analysis to 5 specialized subagents. Each subagent operates on the collected page data and produces a category score (0-100) plus findings.
81
82**Subagent 1: AI Visibility Analysis (geo-ai-visibility)**
83- Analyze content blocks for quotability by AI systems (citability scoring)
84- Check AI crawler access via robots.txt and llms.txt presence
85- Scan brand presence across YouTube, Reddit, Wikipedia, LinkedIn
86- Score brand authority signals that AI models use for entity recognition
87
88**Subagent 2: Platform Optimization (geo-platform-analysis)**
89- Assess readiness for Google AI Overviews, ChatGPT, Perplexity, Gemini, Bing Copilot
90- Check platform-specific ranking factors and optimization opportunities
91
92**Subagent 3: Technical GEO Infrastructure (geo-technical)**
93- Analyze robots.txt for AI crawler access
94- Verify meta tags, headers, and technical accessibility for AI systems
95- Check page speed, server-side rendering, and Core Web Vitals
96- Assess security headers and mobile optimization
97
98**Subagent 4: Content E-E-A-T Quality (geo-content)**
99- Evaluate Experience, Expertise, Authoritativeness, Trustworthiness signals
100- Check author bios, credentials, source citations
101- Assess content freshness, depth, and originality
102- Verify "About" page quality and team credentials
103
104**Subagent 5: Schema & Structured Data (geo-schema)**
105- Validate all schema.org markup
106- Check for GEO-critical schema types (FAQ, HowTo, Organization, Product, Article)
107- Assess schema completeness and accuracy
108- Identify missing schema opportunities
109
110---
111
112### Phase 3: Score Aggregation and Report Generation
113
114#### Composite GEO Score Calculation
115
116The overall GEO Score (0-100) is a weighted average of six category scores:
117
118| Category | Weight | What It Measures |
119|---|---|---|
120| **AI Citability** | 25% | How quotable/extractable content is for AI systems |
121| **Brand Authority** | 20% | Third-party mentions, entity recognition signals |
122| **Content E-E-A-T** | 20% | Experience, Expertise, Authoritativeness, Trustworthiness |
123| **Technical GEO** | 15% | AI crawler access, llms.txt, rendering, speed |
124| **Schema & Structured Data** | 10% | Schema.org markup quality and completeness |
125| **Platform Optimization** | 10% | Presence on platforms AI models train on and cite |
126
127**Formula:**
128```
129GEO_Score = (Citability * 0.25) + (Brand * 0.20) + (EEAT * 0.20) + (Technical * 0.15) + (Schema * 0.10) + (Platform * 0.10)
130```
131
132#### Score Interpretation
133
134| Score Range | Rating | Interpretation |
135|---|---|---|
136| 90-100 | Excellent | Top-tier GEO optimization; site is highly likely to be cited by AI |
137| 75-89 | Good | Strong GEO foundation with room for improvement |
138| 60-74 | Fair | Moderate GEO presence; significant optimization opportunities exist |
139| 40-59 | Poor | Weak GEO signals; AI systems may struggle to cite or recommend |
140| 0-39 | Critical | Minimal GEO optimization; site is largely invisible to AI systems |
141
142---
143
144## Issue Severity Classification
145
146Every issue found during the audit is classified by severity:
147
148### Critical (Fix Immediately)
149- All AI crawlers blocked in robots.txt
150- No indexable content (JavaScript-rendered only with no SSR)
151- Domain-level noindex directive
152- Site returns 5xx errors on key pages
153- Complete absence of any structured data
154- Brand not recognized as an entity by any AI system
155
156### High (Fix Within 1 Week)
157- Key AI crawlers (GPTBot, ClaudeBot, PerplexityBot) blocked
158- No llms.txt file present
159- Zero question-answering content blocks on key pages
160- Missing Organization or LocalBusiness schema
161- No author attribution on content pages
162- All content behind login/paywall with no preview
163
164### Medium (Fix Within 1 Month)
165- Partial AI crawler blocking (some allowed, some blocked)
166- llms.txt exists but is incomplete or malformed
167- Content blocks average under 50 citability score
168- Missing FAQ schema on pages with FAQ content
169- Thin author bios without credentials
170- No Wikipedia or Reddit brand presence
171
172### Low (Optimize When Possible)
173- Minor schema validation errors
174- Some images missing alt text
175- Content freshness issues on non-critical pages
176- Missing Open Graph tags
177- Suboptimal heading hierarchy on some pages
178- LinkedIn company page exists but is incomplete
179
180---
181
182## Output Format
183
184Generate a file called `GEO-AUDIT-REPORT.md` with the following structure:
185
186```markdown
187# GEO Audit Report: [Site Name]
188
189**Audit Date:** [Date]
190**URL:** [URL]
191**Business Type:** [Detected Type]
192**Pages Analyzed:** [Count]
193
194---
195
196## Executive Summary
197
198**Overall GEO Score: [X]/100 ([Rating])**
199
200[2-3 sentence summary of the site's GEO health, biggest strengths, and most critical gaps.]
201
202### Score Breakdown
203
204| Category | Score | Weight | Weighted Score |
205|---|---|---|---|
206| AI Citability | [X]/100 | 25% | [X] |
207| Brand Authority | [X]/100 | 20% | [X] |
208| Content E-E-A-T | [X]/100 | 20% | [X] |
209| Technical GEO | [X]/100 | 15% | [X] |
210| Schema & Structured Data | [X]/100 | 10% | [X] |
211| Platform Optimization | [X]/100 | 10% | [X] |
212| **Overall GEO Score** | | | **[X]/100** |
213
214---
215
216## Critical Issues (Fix Immediately)
217
218[List each critical issue with specific page URLs and recommended fix]
219
220## High Priority Issues
221
222[List each high-priority issue with details]
223
224## Medium Priority Issues
225
226[List each medium-priority issue]
227
228## Low Priority Issues
229
230[List each low-priority issue]
231
232---
233
234## Category Deep Dives
235
236### AI Citability ([X]/100)
237[Detailed findings, examples of good/bad passages, rewrite suggestions]
238
239### Brand Authority ([X]/100)
240[Platform presence map, mention volume, sentiment]
241
242### Content E-E-A-T ([X]/100)
243[Author quality, source citations, freshness, depth]
244
245### Technical GEO ([X]/100)
246[Crawler access, llms.txt, rendering, headers]
247
248### Schema & Structured Data ([X]/100)
249[Schema types found, validation results, missing opportunities]
250
251### Platform Optimization ([X]/100)
252[Presence on YouTube, Reddit, Wikipedia, etc.]
253
254---
255
256## Quick Wins (Implement This Week)
257
2581. [Specific, actionable quick win with expected impact]
2592. [Another quick win]
2603. [Another quick win]
2614. [Another quick win]
2625. [Another quick win]
263
264## 30-Day Action Plan
265
266### Week 1: [Theme]
267- [ ] Action item 1
268- [ ] Action item 2
269
270### Week 2: [Theme]
271- [ ] Action item 1
272- [ ] Action item 2
273
274### Week 3: [Theme]
275- [ ] Action item 1
276- [ ] Action item 2
277
278### Week 4: [Theme]
279- [ ] Action item 1
280- [ ] Action item 2
281
282---
283
284## Appendix: Pages Analyzed
285
286| URL | Title | GEO Issues |
287|---|---|---|
288| [url] | [title] | [issue count] |
289```
290
291---
292
293## Quality Gates
294
295- **Page Limit:** Never crawl more than 50 pages per audit. Prioritize high-value pages.
296- **Timeout:** 30-second maximum per page fetch. Skip pages that exceed this.
297- **Robots.txt:** Always check and respect robots.txt before crawling. Note any AI-specific directives.
298- **Rate Limiting:** Wait at least 1 second between page fetches to avoid overloading the server.
299- **Error Handling:** Log failed fetches but continue the audit. Report fetch failures in the appendix.
300- **Content Type:** Only analyze HTML pages. Skip PDFs, images, and other binary content.
301- **Deduplication:** Canonicalize URLs before crawling. Skip duplicate content (e.g., HTTP vs HTTPS, www vs non-www, trailing slashes).
302
303---
304
305## Business-Type-Specific Audit Adjustments
306
307### SaaS Sites
308- Extra weight on: Feature comparison tables (high citability), integration pages, documentation quality
309- Check for: API documentation structure, changelog pages, knowledge base organization
310- Key schema: SoftwareApplication, FAQPage, HowTo
311
312### Local Businesses
313- Extra weight on: NAP consistency, Google Business Profile signals, local schema
314- Check for: Service area pages, location-specific content, review markup
315- Key schema: LocalBusiness, GeoCoordinates, OpeningHoursSpecification
316
317### E-commerce Sites
318- Extra weight on: Product descriptions (citability), comparison content, buying guides
319- Check for: Product schema completeness, review aggregation, FAQ sections on product pages
320- Key schema: Product, AggregateRating, Offer, BreadcrumbList
321
322### Publishers
323- Extra weight on: Article quality, author credentials, source citation practices
324- Check for: Article schema, author pages, publication date freshness, original research
325- Key schema: Article, NewsArticle, Person (author), ClaimReview
326
327### Agency/Services
328- Extra weight on: Case studies (citability), expertise demonstration, thought leadership
329- Check for: Portfolio schema, team credentials, industry-specific expertise signals
330- Key schema: Organization, Service, Person (team), Review