GEO Scoring Model
GEO (Generative Engine Optimization) measures how well your content is positioned and discoverable across AI engines like ChatGPT, Claude, and Perplexity. The scoring model evaluates 12 audit dimensions.
GEO Score Breakdown
Overall Score = Crawlability × 0.30 + Content Quality × 0.45 + Structured Data × 0.25
Crawlability (30% weight)
Measures how easily AI engines can discover and access your content:
- Robots.txt Accessibility: AI bot access allowed
- Sitemap Presence: XML sitemap exists and is valid
- URL Structure: Clean, semantic URLs without parameters
- Page Load Speed: <3s load time
- Mobile Responsiveness: Mobile-friendly design
Score: 0-100 per dimension, averaged.
Content Quality (45% weight)
Evaluates content that AI uses to answer user queries:
- Factual Density: Information-to-filler ratio (higher is better)
- Heading Hierarchy: Proper H1, H2, H3 structure
- Answer Blocks: Direct answers to common questions (featured snippets)
- Internal Linking: Cross-references between related content
- Content Freshness: Regular updates (currency of information)
- Citation Friendliness: Quotes, statistics, sources that AI cites
Score: 0-100, weighted by importance.
Structured Data (25% weight)
Markup that helps AI engines understand content:
- Schema.org Markup: Organization, product, article schema
- Open Graph Meta Tags: Title, description, image for sharing
- Rich Snippets: Reviews, ratings, pricing, availability
- JSON-LD Structured Data: Machine-readable content format
Score: 0-100, percentage of pages with proper markup.
Per-Page vs Site-Wide Checks
Per-Page Checks (applied to each page)
- Heading hierarchy
- Answer blocks
- Citation friendliness
- Content freshness
- Internal linking
- Content density
- Content renderability
Scoring: Average across all pages, then weighted.
Site-Wide Checks (best-of scoring)
- FAQ presence (any page has FAQ?)
- Comparison tables (any page has comparison?)
Scoring: Binary or presence-based, not averaged.
Calculation Example
Homepage Audit:
- Factual Density: 82/100
- Heading Hierarchy: 90/100
- Answer Blocks: 75/100
- Internal Linking: 88/100
- Content Freshness: 85/100
- Citation Friendliness: 80/100
- Structured Data: 92/100
Per-Page Score = Average: (82+90+75+88+85+80)/6 = 83.3/100
Site-Level Score:
- Crawlability: 88/100 (robots.txt, sitemap, speed, mobile)
- Content Quality: 83.3/100 (per-page average)
- Structured Data: 92/100 (schema.org coverage)
GEO Score = 88×0.30 + 83.3×0.45 + 92×0.25 = 26.4 + 37.5 + 23 = 87/100
Scoring Tiers
| Score | Grade | Status | Action |
|---|---|---|---|
| 90-100 | A+ | Excellent | Maintain and monitor |
| 80-89 | A | Good | Minor improvements needed |
| 70-79 | B | Fair | Address top 3 gaps |
| 60-69 | C | Poor | Major improvements needed |
| <60 | D | Very Poor | Comprehensive audit required |
Recommendations Engine
GEO audit generates ranked recommendations:
Quick Wins (0-2 weeks to implement)
- Add missing H2 headers
- Optimize for mobile responsiveness
- Add FAQ section
- Include answer blocks
- Add internal links between related pages
Medium-Term (2-8 weeks)
- Implement structured data (schema.org)
- Improve content freshness (update dates)
- Create comparison tables
- Expand citation coverage
- Optimize page speed
Long-Term (8+ weeks)
- Content strategy overhaul
- Topic cluster creation
- Authority building (backlinks)
- Comprehensive SEO audit
- Competitive analysis and repositioning
Competitive Benchmarking
Compare your GEO score to competitors:
benchmark = client.brand_intel.get_geo_benchmark( your_domain="truthvouch.com", competitors=["competitor1.com", "competitor2.com"], category="software")
print(f"Your Score: {benchmark.your_score}")print(f"Category Average: {benchmark.category_avg}")print(f"Competitor 1: {benchmark.competitors[0].score}")print(f"Percentile: {benchmark.percentile}%") # Top 15% in categoryPage-Level Audit
Detailed breakdown for individual pages:
page_audit = client.brand_intel.audit_page( url="https://truthvouch.com/pricing")
print(f"Page Score: {page_audit.score}/100")print(f"Factual Density: {page_audit.factual_density}/100")print(f"Answer Blocks: {page_audit.answer_blocks}")print(f"Internal Links: {page_audit.internal_link_count}")print(f"Last Updated: {page_audit.last_updated}")print(f"Recommendations:")for rec in page_audit.recommendations: print(f" - {rec.title}: {rec.impact}")Monitoring & Alerts
Continuous GEO monitoring:
- Weekly score updates
- Alerts when score drops >5 points
- Competitor score tracking
- Trend analysis and forecasting
client.brand_intel.subscribe_to_geo_alerts( domain="truthvouch.com", alert_threshold_change=5, # Alert if score changes >5 points email="marketing@company.com")Next Steps
- Page Audit: Run detailed audit on key pages
- Quick Wins: Implement highest-impact recommendations first
- Monitoring: Set up weekly GEO score tracking
- Benchmarking: Compare against competitors