Skip to content

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

ScoreGradeStatusAction
90-100A+ExcellentMaintain and monitor
80-89AGoodMinor improvements needed
70-79BFairAddress top 3 gaps
60-69CPoorMajor improvements needed
<60DVery PoorComprehensive 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 category

Page-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