Optimize content for AI Overviews, ChatGPT, Perplexity, and other AI search systems. Use when improving GEO, AI citations, llms.txt readiness, crawler accessibility, and passage-level citability.
Installs into .claude/skills of the current project.
Are you the author of Seo Geo?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/huytran1120-seo-geo)
---
name: seo-geo
description: "Optimize content for AI Overviews, ChatGPT, Perplexity, and other AI search systems. Use when improving GEO, AI citations, llms.txt readiness, crawler accessibility, and passage-level citability."
risk: critical
source: "https://github.com/AgriciDaniel/claude-seo"
date_added: "2026-03-21"
user-invokable: true
argument-hint: "[url]"
allowed-tools:
- Read
- Grep
- Glob
- Bash
- WebFetch
---
# AI Search / GEO Optimization (February 2026)
## When to Use
- Use when improving visibility in AI Overviews, ChatGPT, Perplexity, or similar AI search systems.
- Use when evaluating llms.txt readiness, AI crawler access, or citation-oriented content structure.
- Use when the user asks about GEO, AI SEO, LLM visibility, or AI citations.
## Evidence boundaries
Use a dated query/platform sample and actual citation/referral evidence. No market-share, correlation, passage-length or uplift figures are established by this file; correlations do not prove an optimization causes citations. Scores below are a disclosed qualitative rubric, not a provider ranking metric.
## GEO Analysis Criteria (Updated)
### 1. Citability Score (25%)
Use self-contained passages sized for the topic; no universal optimal citation word count is established.
**Strong signals:**
- Clear, quotable sentences with specific facts/statistics
- Self-contained answer blocks (can be extracted without context)
- Direct answer in first 40-60 words of section
- Claims attributed with specific sources
- Definitions following "X is..." or "X refers to..." patterns
- Unique data points not found elsewhere
**Weak signals:**
- Vague, general statements
- Opinion without evidence
- Buried conclusions
- No specific data points
### 2. Structural Readability (20%)
Evaluate citation sources on a defined current sample instead of assuming a universal ranking-position distribution.
**Strong signals:**
- Clean H1->H2->H3 heading hierarchy
- Question-based headings (matches query patterns)
- Short paragraphs (2-4 sentences)
- Tables for comparative data
- Ordered/unordered lists for step-by-step or multi-item content
- FAQ sections with clear Q&A format
**Weak signals:**
- Wall of text with no structure
- Inconsistent heading hierarchy
- No lists or tables
- Information buried in paragraphs
### 3. Multi-Modal Content (15%)
Use relevant media when it helps the reader; measure any citation effect rather than promising a fixed uplift.
**Check for:**
- Text + relevant images
- Video content (embedded or linked)
- Infographics and charts
- Interactive elements (calculators, tools)
- Structured data supporting media
### 4. Authority & Brand Signals (20%)
**Strong signals:**
- Author byline with credentials
- Publication date and last-updated date
- Citations to primary sources (studies, official docs, data)
- Organization credentials and affiliations
- Expert quotes with attribution
- Entity presence in Wikipedia, Wikidata
- Mentions on Reddit, YouTube, LinkedIn
**Weak signals:**
- Anonymous authorship
- No dates
- No sources cited
- No brand presence across platforms
### 5. Technical Accessibility (20%)
Crawler rendering capabilities differ. Inspect initial and rendered content for the actual target system; server-rendered critical content improves broad accessibility.
**Check for:**
- Server-side rendering (SSR) vs client-only content
- AI crawler access in robots.txt
- llms.txt file presence and configuration
- RSL 1.0 licensing terms
---
## AI Crawler Detection
Check `robots.txt` for these AI crawlers:
| Crawler | Owner | Purpose |
|---------|-------|---------|
| GPTBot | OpenAI | Content that may be used for model training |
| OAI-SearchBot | OpenAI | OpenAI search features |
| ChatGPT-User | OpenAI | ChatGPT browsing |
| ClaudeBot | Anthropic | Claude web features |
| PerplexityBot | Perplexity | Perplexity AI search |
| CCBot | Common Crawl | Training data (often blocked) |
| anthropic-ai | Anthropic | Claude training |
| Bytespider | ByteDance | TikTok/Douyin AI |
| cohere-ai | Cohere | Cohere models |
**Recommendation:** Choose search and training access independently. [OpenAI crawler guidance](https://developers.openai.com/api/docs/bots) distinguishes OAI-SearchBot from GPTBot; do not enable training as a requirement for search visibility.
---
## llms.txt Proposal
The [llms.txt proposal](https://llmstxt.org/) provides agent-friendly navigation; its presence does not guarantee indexing or citations.
**Location:** `/llms.txt` (root of domain)
**Format:**
```
# Title of site
> Brief description
## Main sections
- `Page title -> https://example.com/page`: Description
- `Another page -> https://example.com/another-page`: Description
## Optional: Key facts
- Fact 1
- Fact 2
```
**Check for:**
- Presence of `/llms.txt`
- Structured content guidance
- Key page highlights
- Contact/authority information
---
## RSL 1.0 (Really Simple Licensing)
Machine-readable licensing proposals are separate from search ranking or guaranteed crawler enforcement. Verify the current specification and publisher adoption before recommending an implementation; this guide does not establish legal enforceability or endorsements.
---
## Platform-Specific Optimization
| Platform | Key Citation Sources | Optimization Focus |
|----------|---------------------|-------------------|
| **Google AI Overviews** | Measure current citation sources | Traditional SEO + passage optimization |
| **ChatGPT** | Measure current citation sources | Entity presence, authoritative sources |
| **Perplexity** | Measure current citation sources | Community validation, discussions |
| **Bing Copilot** | Bing index, authoritative sites | Bing SEO, IndexNow |
---
## Output
Generate `GEO-ANALYSIS.md` with:
1. **GEO Readiness Score: XX/100**
2. **Platform breakdown** (Google AIO, ChatGPT, Perplexity scores)
3. **AI Crawler Access Status** (which crawlers allowed/blocked)
4. **llms.txt Status** (present, missing, recommendations)
5. **Brand Mention Analysis** (presence on Wikipedia, Reddit, YouTube, LinkedIn)
6. **Passage-Level Citability** (self-contained, source-backed passages identified)
7. **Server-Side Rendering Check** (JavaScript dependency analysis)
8. **Top 5 Highest-Impact Changes**
9. **Schema Recommendations** (for AI discoverability)
10. **Content Reformatting Suggestions** (specific passages to rewrite)
---
## Quick Wins
1. Add "What is [topic]?" definition in first 60 words
2. Create concise self-contained answer blocks
3. Add question-based H2/H3 headings
4. Include specific statistics with sources
5. Add publication/update dates
6. Implement Person schema for authors
7. Allow key AI crawlers in robots.txt
## Medium Effort
1. Create `/llms.txt` file
2. Add author bio with credentials + Wikipedia/LinkedIn links
3. Ensure server-side rendering for key content
4. Build entity presence on Reddit, YouTube
5. Add comparison tables with data
6. Implement FAQ sections (structured, not schema for commercial sites)
## High Impact
1. Create original research/surveys (unique citability)
2. Build Wikipedia presence for brand/key people
3. Establish YouTube channel with content mentions
4. Implement comprehensive entity linking (sameAs across platforms)
5. Develop unique tools or calculators
## DataForSEO Integration (Optional)
If DataForSEO MCP tools are available, use `ai_optimization_chat_gpt_scraper` to check what ChatGPT web search returns for target queries (real GEO visibility check) and `ai_opt_llm_ment_search` with `ai_opt_llm_ment_top_domains` for LLM mention tracking across AI platforms.
## Error Handling
| Scenario | Action |
|----------|--------|
| URL unreachable (DNS failure, connection refused) | Report the error clearly. Do not guess site content. Suggest the user verify the URL and try again. |
| AI crawlers blocked by robots.txt | Report exactly which crawlers are blocked and which are allowed. Provide specific robots.txt directives to add for enabling AI search visibility. |
| No llms.txt found | Note the absence and provide a ready-to-use llms.txt template based on the site's content structure. |
| No structured data detected | Report the gap and provide specific schema recommendations (Article, Organization, Person) for improving AI discoverability. |
## Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.