- Weight ratio
- 8 : 4 : 2 : 0
- Indexing gates
- 4
- Feature gates
- 3
- Arithmetic
- exact rationals
Rated against the best you could do
An audit that only grades what a site already has rewards doing little. A page with no structured data cannot have broken structured data; a site with no sitemap cannot have a malformed one. Scored that way, a bare site looks perfect and a site that has invested in its setup is punished for every slip. This scanner does the opposite: the denominator is the best setup the sources describe, and a documented practice the site has not adopted counts as unmet, exactly as a broken one does. The report then separates what to fix from what to add, so an owner sees both the defects and the distance still to cover.
What makes a practice count is still a primary source. A missing meta description counts because Google asks for one on the critical URLs; a missing sitemap counts because Bing calls its lastmod field a key signal; a missing favicon or site name counts because Google documents the feature. A practice no engine recommends never enters the denominator, so the score cannot be gamed by adding things the engines say they ignore.
What a finding can say
Every rule is evaluated per unit, which may be a page, a sitemap file, an origin, a pair of alternates or the site as a whole. Each unit gets one status. Pass and fail mean the rule applied and was met or not; a fail is something broken. Opportunity means a documented practice is absent on the unit and nothing is broken by its absence: no sitemap, no meta description, no favicon link, no WebSite item. It counts in the score like a fail and is reported as something to add, never as an error. Info is an observation from an informational rule and never affects the score. Not applicable means nothing on the site could trigger the rule: no localized versions, no Organization logo, an engine not selected. Not evaluated means the rule applied but the snapshot lacks the data it needs, such as a truncated crawl or rendering turned off, and the reason is stated. Manual means the question cannot be answered from outside the site; it goes to the manual review checklist with its source.
Evidence classes and weights
Each rule carries one class, taken from the strength of its strongest supporting source for that exact condition. When different conditions of one requirement have different strengths, they are separate rules, so that every finding carries exactly one class.
It must be done this way or it does not work, is ignored, or the page or feature is ineligible. The source is an engine, or the standard that defines the mechanism itself (robots.txt, sitemaps, canonical links) stating that non-conforming input is ignored, dropped or invalid.
Book badges: REQUIRED, ELIGIBILITY REQUIREMENT, documented engine behavior with an adverse effect
The engine recommends it, or documents it as used by its ranking systems.
Book badges: DOCUMENTED RECOMMENDATION, DOCUMENTED SIGNAL
A web standard requires or recommends it, without a documented consequence for crawling, indexing or display.
Book badges: STANDARD
It is supported, optional, a policy choice or a house convention.
Book badges: SUPPORTED, OPTIONAL, house convention
Never scored
The engines dismiss it, do not document it, or the record is silent. These claims live in the myth guard and can never produce a failure.
No search engine publishes ranking weights, and these numbers are not an attempt to guess them. They encode how strongly the documentation speaks, in a fixed 8:4:2 ratio, and every report prints them with that explanation: “Weights express the strength of the documentation, not ranking impact.”
House conventions, the rules whose ID ends in -HC, are off by default. A team may enable them, and may assign them a weight, but the report then labels the score “with house conventions” and lists each enabled convention.
An opportunity carries the weight of its rule's class, which comes from the quote that recommends the practice. The gap between the site and the best documented setup is the same whether a practice is missing or done wrong; what differs is the advice.
Gates
Some mechanism rules decide eligibility rather than quality, and they are handled separately so that the headline number cannot look healthy while pages are blocked.
- Indexing gates decide whether an intended page can be indexed at all: it returns 200, it is publicly accessible, search crawlers may fetch it, it carries no noindex. They do not enter the achieved share. They produce the eligibility factor.SEO-HTTP-01, SEO-HTTP-02, SEO-ROBOTS-05A, SEO-IDX-06
- Feature gatesdecide eligibility for one search feature: favicon, site name preference, breadcrumbs, Organization logo, vacation rentals. They enter the achieved share as ordinary C1 rules, and the report also lists each feature's eligibility on its own line. A feature the site has not adopted at all, such as a home page with no favicon link, is an opportunity rather than a failure.
The intended-indexable set
Eligibility only means something relative to what the site owner wants indexed. The scanner derives that set, called I, deterministically. It always contains the home page. If sitemaps were found, it adds every valid location on an in-scope origin; a sitemap is the site's own statement of what it wants discovered. Configured include patterns add URLs and exclude patterns remove them, though never the home page. Only when no sitemap exists and no include pattern is configured does the scanner fall back to inference: every in-scope URL discovered by link that returned 200 HTML, carries no effective noindex and is not disallowed for a selected engine's search crawler. In that case a noindex or a disallow is read as intent rather than as a blocker, the report says the intent was inferred, and it recommends a sitemap or include patterns for a stricter audit.
The formulas
All arithmetic uses exact rationals over integers. Floating point never touches a score. For each scored rule r with weight w, not an indexing gate, with at least one evaluated unit: n is the number of applicable units that were evaluated, meaning units that pass, fail or carry an opportunity (blocked pages and not-evaluated units are left out), and p is the number of those units that pass. An opportunity is a unit that does not pass.
Achieved A = Σ (w_r × p_r / n_r) / Σ w_r
Eligibility E = (|I| − |B|) / |I| where B = members of I failing at least one gate:indexing rule
Overall S = round_half_up(100 × E × A)
Category S_k = round_half_up(100 × A_k) (A restricted to rules in category k; no E factor)
round_half_up(x = a/b, b > 0) = floor((2a + b) / (2b))A is the share of the best documented setup the site has in place, weighted by evidence. Because an absent practice is an evaluated unit that does not pass, a site cannot raise A by having less: a site with no sitemap, no descriptions and no favicon is measured against the same denominator as one that has them.
Fractions in reports are reduced to lowest terms. If I is empty, no overall score is reported. If E is zero, the overall score is zero whatever A is, and the headline says every intended page is blocked. If no scored rule applies, A is reported as not measurable rather than as a perfect score.
The eligibility multiplier is a product decision, recorded as a house convention: practices in place on pages that cannot be indexed have no search value, so they should not dilute the warning that the pages are blocked.
A worked example
A site declares 40 URLs in its sitemap. Two carry noindex, so they fail the indexing gate and leave the page set, which therefore has 38 pages. Four scored rules apply. Eight pages have no meta description: those are opportunities, and they count as unmet units exactly as failures would.
| Rule | Class | w | Units | Pass | Contribution |
|---|---|---|---|---|---|
SEO-CANON-01 canonical in head | C1 | 8 | 38 pages | 38 | 8 × 38/38 = 8 |
SEO-META-02C meta description present | C2 | 4 | 38 pages | 30 | 4 × 30/38 = 60/19 |
SEO-HTTP-07 HTTPS | C2 | 4 | site | 1 | 4 |
SEO-HDG-02 heading ranks | C3 | 2 | 38 pages | 19 | 2 × 19/38 = 1 |
Σ w = 18
Σ contribution = 8 + 60/19 + 4 + 1 = 307/19
A = (307/19) / 18 = 307/342
E = 38/40 = 19/20
100 × E × A = 100 × 5833/6840 = 583300/6840
S = floor((2 × 583300 + 6840) / (2 × 6840)) = floor(1173440 / 13680) = 85The report prints: “Overall 85 = 100 × eligibility 19/20 × achieved 307/342. Two intended pages are blocked from indexing; see SEO-IDX-06.” The arithmetic string always has that shape, with both fractions reduced, so a reader can check the number by hand. The recommendations list the eight pages under “add a meta description”, after any rule of equal or higher weight that is broken rather than missing.
What the score is not
The headline block of every report carries the same statements: that the score is not a ranking prediction; Google's own sentence that meeting the requirements does not guarantee indexing; what the weights mean; and, only when performance data was evaluated, Google's statements on the scope of Core Web Vitals in ranking. A high score says that the site has most of the documented setup in place, nothing more, and the scanner would rather be precise about that than impressive.