How our diagnostic scores work

Model: 2026-09-25-context-1

GeoSEO inspects fetched pages and declared access rules. A public scan does not measure actual rankings, Google indexation, consumer AI mentions, citation probability, traffic or leads.

Our weights and deductions are internal prioritization heuristics, not scientifically calibrated against business outcomes and not Google's formula. Research can motivate a check; it does not validate our exact weights or promise an uplift.

Two different audit paths

Single-page SEO: scored checks map pass/info/warning/critical to 1/0.8/0.5/0. Each category is their mean × 100; categories are combined with the weights below. Review-only observations are excluded. Categories without scored checks are excluded from the weighted mean.

Full-site SEO: each retrieved page starts at 100 minus its deductions, floored at zero. SEO is the mean page score minus the curved site-wide penalty, again floored at zero. These two audit paths are not interchangeable.

Health = round(SEO × 0.70 + GEO × 0.30). This blend is an internal product choice, not a measured causal relationship. No retrieved pages means not measured, not zero. Old stored scores are not recalculated. Different scoring versions must not be read as website improvement.

Single-page SEO category weights

Relative weights, normalized over measured categories, read from the running engine.

CategoryWeight
Content Quality22
Meta & Social Tags12
Technical12
Headings Structure10
Links10
Robots.txt & Crawlability8
Images6
Performance (Core Web Vitals)5
Security4
URL & Keywords3
HTML Validation2
Schema / Structured Data3
Indexation & Authority4

Full-site page deductions

Internal diagnostic points, not ranking penalties. Count-scaled overrides below take precedence; otherwise the first matching prefix wins. Zero means a retired or review-only deduction retained for compatibility. Unknown issue strings currently deduct 3 points.

Issue prefixPoints
missing title15
title too short0
title too long0
missing description12
description too short0
description too long0
missing H112
multiple H1s0
image controls without accessible name5
no schema6
no canonical8
canonical mismatch10
noindex set15
very thin0
thin content0
missing OG5
heading skip3
redirect chain5
broken URL slug5
URL slug has double hyphen5
slow5
FAQ schema3
H1 repeated3

Count-scaled overrides

base + (count − 1) × increment, limited to the ceiling, replaces the flat deduction. Contributions are summed and the total is rounded once. Image deductions apply to absent alt attributes, not every empty alt value. Empty alt needs purpose review; image controls with no detected accessible name are flagged separately.

IssueBaseIncrementCeiling
images without alt30.4512
images missing alt30.4512
heading skip22.06
missing OG31.56

Page purpose and editorial observations

URL patterns and limited HTML signals identify contact, legal, gallery, utility, listing and article pages. This is a conservative hint, not verified intent. Ambiguous pages stay generic.

Word count alone no longer deducts full-site page points or single-page content points. Functional pages do not need article-length prose; their paragraph count is review-only, and the full-site crawler does not require schema on them. Short text on other pages prompts review, not a low-quality finding.

Titles outside 20–60 characters and descriptions outside 80–160 trigger editorial review without a length penalty. These are our review thresholds, not Google's limits. Missing metadata, headings and other checks can still affect the diagnostic score.

Legal aliases and editorial archives share a purpose policy across SEO and GEO. Article-specific author/date rules do not apply to recognized listings. Full GEO's internal word-count penalties also exempt functional pages.

Multiple H1 elements are review-only: the raw HTML count is retained but CSS visibility is not measured. Empty alt is not automatically a defect. Decorative intent is not inferred from an image's filename or its location in a navigation/footer area; accessible-control names are checked using limited source signals, not a complete browser accessibility tree.

Not every remaining rule is purpose-aware: full GEO categories, heading-level skips, canonical intent, image semantics and duplicate-content heuristics still need review and further calibration. Scores do not authorize deletion, consolidation or publication.

Site-wide penalty curve

Raw penalties count in full up to 25. Above that: round(25 + (raw − 25) × 0.45), capped at 55.

  • Confirmed broken links: 3 each, maximum 15; blocked/time-out responses are not confirmed broken links.
  • Duplicate titles/descriptions: affected-page share × 25/20, rounded, minimum 1 when present, capped at 10/8.
  • Site-level canonical conflicts or failing targets: 2 each, maximum 10. Duplicate H1 groups: 2 each, maximum 8.
  • FAQ questions repeated on at least 3 pages: 1 per question, maximum 5. Internal relevance heuristic, not a Google FAQ rich-result penalty.
  • Orphans: 2 each, maximum 8, assessed with at least 80% known-URL coverage. Known-URL coverage does not prove every URL was discovered.
  • Missing social links: 5 only with complete reported coverage. Absence does not prove ranking loss.
  • A www-redirect warning contributes 5 points.
  • Near-duplicate main-content groups: 3–5 affected pages → 10, 6–15 → 20, at least 16 → 30. Similarity is heuristic, not proof of a Google penalty; inspect purpose and usefulness before acting.
  • URL inventory: No score penalty. Index bloat not assessed by this count.

GEO diagnostic weights and sampling

CategoryWeight
Brand & Entity Clarity16
Content Structure & Citability16
Evidence, Data & Citations15
E-E-A-T & Trust Signals12
Answer-First Content11
Content Freshness9
Technical AI Access14
Competitive Context7

Single-page GEO uses the weighted category mean with reported gates/caps. Full-site GEO analyzes a limited page sample and averages final page scores, not the entire site. Category breakdowns are averaged separately. Sample and fallback source are recorded in the result.

If all checked citation and search agents are restricted for the URL, diagnostic GEO is zero. This does not prove absence from indexes or answers. Googlebot alone does not close every AI platform; training-only opt-outs do not activate this gate.

Fetched HTML with no headings, fewer than 100 words and script/text ratio above 5 may be capped at 50 as a rendering heuristic. Non-functional pages below 50/100 visible words may be capped at 35/60; these are evidence-availability heuristics, not universal content minimums. Word-count-only caps do not apply to recognized functional pages. Their lightweight structural fallback is not used. Other GEO categories remain heuristic and require review.

When sampled GEO fails, generic pages can fall back to a lightweight structural score. Some unavailable submeasurements still use legacy defaults; a successful report does not prove every category was measured. The complete-failure guard is not complete measurement-state coverage.

citation: OAI-SearchBot, Claude-SearchBot, PerplexityBot

training: GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, Bytespider, Meta-ExternalAgent, FacebookBot, cohere-ai, Amazonbot, anthropic-ai, CCBot

user triggered: ChatGPT-User, Claude-User

search: Googlebot, Bingbot, Applebot, DuckDuckBot, YandexBot

Coverage, safety and verification limits

The public full-site route requests up to 200 pages. Sitemap discovery has host, cycle, depth, document/URL and time limits. Cutoffs reduce reported coverage. JavaScript rendering is attempted when detected, not guaranteed for every application or bot challenge.

A fetched noindex directive or robots restriction is evidence of a declared rule, not a live Google index check. Response time is not field Core Web Vitals. Schema presence is not validation, rich-result eligibility or a ranking guarantee. No approved-keyword rank query or consumer ChatGPT/Gemini answer test runs in this public scan.

Proposals quote page observations or contain unverified AI drafts, not source-verified business facts. They must not be autonomously published. Historical payloads and scores are preserved; comparisons across model versions are not attributed to site changes.

Primary references and limits