BLOG · METHOD

How we score GEO: the method

By Alexandros Palma · Published · Last updated

The Bizaura GEO Score is a 0–100 weighted composite of five measured signals: content quality (25%), AI crawlability (20%), structured data (20%), freshness (20%) and semantic HTML (15%). Performance is reported but not scored. This post explains exactly what each signal measures, where the weights come from, and the rules we follow so the number stays honest.

Where the weights come from

We did not invent the categories. They are anchored in published GEO research, most directly Aggarwal et al., “GEO: Generative Engine Optimization”, which measured what actually changes a page's odds of being used in an AI answer: answer-first structure, fact density, citable statements, machine-readable structure and freshness. We turned those findings into checks a machine can run the same way every time, and we re-validate the weights against known sites as we learn more. When the research moves, the weights move: in the changelog, not silently.

The five signals

Content quality

25%

Does the page answer the question in its first lines, and does it carry checkable facts (numbers, specs, dates) instead of filler? Scored by one AI pass over sampled pages.

AI crawlability

20%

Can the six major AI crawlers (GPTBot, ClaudeBot, Google-Extended, PerplexityBot, OAI-SearchBot, anthropic-ai) actually read the site, per robots.txt? Blocking them all caps the whole score, invisible is invisible.

Structured data

20%

Which of the eight schema.org types that matter for GEO (Organization, WebSite, Product, BreadcrumbList, LocalBusiness, FAQPage, Article, HowTo) exist as valid JSON-LD, anywhere on the sampled pages.

Freshness

20%

Machine-readable dateModified and visible “last updated” signals. If neither exists anywhere, this sub-score is hard-capped low: engines can't trust undated content.

Semantic HTML

15%

One h1 per page, h2s present, no skipped heading levels. Deterministic, no model involved.

Performance

0% (reported)

PageSpeed / LCP is shown for context (preferring real-user field data over lab runs) but does not move the score: the research doesn't support weighting it for AI answers.

How we look at your site

The audit reads at most nine pages (the homepage, up to three category pages and up to five product pages) with a plain HTTP fetch and an HTML parser. No headless browser, no rendering farm. That constraint is deliberate: it approximates what most AI crawlers themselves see. If a site only exists after JavaScript runs, the report says so openly instead of pretending the signals were readable.

The honesty rules

Three rules keep the score trustworthy. First, every finding is tied to a measured signal: the AI that writes the summary is only allowed to talk about what the deterministic checks actually found. Second, hard gates are real: a site that blocks every AI crawler is capped low no matter how good the content is, and content with no dates anywhere is capped on freshness. Third, a 21/100 looks like a 21/100. We don't round up, and we'd rather tell you the uncomfortable number with the exact evidence than sell you a pretty one.

What the score is not

It is not a ranking guarantee, and it is not a measure of how often AI assistants recommend you today. That is what monitoring measures, with metrics like Visibility and Share of Voice taken from real assistant answers. The score measures whether your site gives engines what they need to cite you. Fix what it flags, then watch the monitoring trend to see it land.

See your own number, free, about 40 seconds.Run free audit →