Skip to content

Regional SERP Comparison: how RVAS works

Last updated:

Interpretation note

Regional SERP differences are normal. Google personalises results by location, language, device, and freshness, and third-party SERP providers sample from data-centre IPs that may not reflect every user. A strong regional anomaly indicates that your visibility differs materially between locations and deserves investigation (hreflang, geo-targeting, local competition, legal/regulatory content requirements, provider sampling). It is not proof of a manual action, a legal block, or a penalty.

1.What is RVAS?

The Regional Visibility Anomaly Score (RVAS) is a 0–100 score that says how much a domain's visibility for one keyword differs between a baseline location and a compared location on the same device. Visqio computes it from licensed SERP snapshots requested with explicit location and language codes — never from Google directly — together with metrics, a status and evidence, per keyword × device × location pair.

2.Inputs and validity

Inputs are the SERP snapshots for the keyword and device at both locations over the window (default 7 days), paired by UTC calendar day, plus the project's PRIMARY domains (and CONTROLLED hosts when enabled) as the target, and previous comparison rows for persistence and trend.

TEST_INVALID when either location has a FAILED or PARTIAL snapshot for more than 50 % of the window, the snapshot language codes differ from the keyword language, or the two snapshots of a pair are more than 36 hours apart. INSUFFICIENT_DATA with fewer than 3 paired days.

3.Metrics

MetricDefinitionAggregation
Position (baseline, compared)Best organic rank of the target; absent from top 100 = 101Median over window
Position deltacompared − baseline (positive = worse in compared)Median
Presence1 if the target appears in the top 100Share of days present
Presence gapbaseline share − compared share, in [−1, 1]
Top-N overlapJaccard similarity of hostnames in the top 10 / top 20 between locations (all results)Mean
PersistenceConsecutive paired days the presence-gap sign or a delta ≥ 5 has held
Churn1 − Jaccard(top 10 today, top 10 previous day) in the compared locationMean

4.Score (RVAS)

Five components, each normalised to 0–100 with higher meaning more anomalous, combined with weights that sum to 100: RVAS = round(Σ Cᵢ × wᵢ / 100).

ComponentFormulaWeight
C1 Presence gapclamp(presence_gap × 100, 0, 100) — only penalises absence in compared while present in baseline35
C2 Position deltaclamp(median delta × 5, 0, 100) — 20 positions worse → 10025
C3 SERP dissimilarity(1 − top-10 overlap) × 100, counted only when C1 or C2 > 015
C4 Persistencemin(persistence days / window days, 1) × 10015
C5 Stability(1 − churn) × 100 if C1 > 50, else 0 — a stable SERP in which the target is consistently missing is more anomalous than a volatile one10

5.Statuses

StatusRule (first match)
TEST_INVALIDValidity gates above
INSUFFICIENT_DATAFewer than 3 paired days, or target absent in both locations for the whole window
POSSIBLE_COUNTRY_SPECIFIC_RESTRICTIONpresence gap ≥ 0.85, persistence ≥ 5 days, top-10 overlap ≥ 0.4, churn ≤ 0.3, and the same pattern for ≥ 60 % of the project's keywords on this pair; requires two consecutive daily runs (hysteresis)
STRONG_REGIONAL_ANOMALYRVAS ≥ 70 and persistence ≥ 3 days
REGIONAL_DIFFERENCERVAS ≥ 35
NORMALOtherwise

The restriction status always renders as: "Possible country-specific restriction — the domain is consistently absent in {country} while present in {baseline} across {n} keywords. This can indicate geo-targeting, hreflang, regional legal requirements, or provider sampling. Verify with GSC country impressions before concluding." When available, Search Console impressions per country over 28 days are attached as evidence.

6.Alerts

Entering STRONG_REGIONAL_ANOMALY raises a WARNING; entering POSSIBLE_COUNTRY_SPECIFIC_RESTRICTION raises a project-level CRITICAL alert listing the keywords; 30 % or more of a project's keywords in STRONG_REGIONAL_ANOMALY for one pair raises a project-level CRITICAL; a return to NORMAL after 7 or more anomalous days raises an INFO "recovered" alert. Every alert body includes the disclaimer and a link to the comparison detail.

7.Limits

Providers sample from data-centre IPs and may not reflect every user in a region. Google personalises by location, language, device and freshness, so differences are expected; only persistent, keyword-wide patterns on otherwise similar SERPs reach the restriction status, and even then the wording is a hypothesis. Constants (window 7 days, absent rank 101, thresholds above) are versioned as RULESET_VERSION 2026.08 in every record.

Frequently asked questions

Does POSSIBLE_COUNTRY_SPECIFIC_RESTRICTION mean my site is blocked in that country?

No. It is the only status that hints at restriction, and it is deliberately hedged: the domain is consistently absent in the compared location while present in the baseline, across most tracked keywords, on a SERP that otherwise looks similar. Geo-targeting, hreflang, regional legal content requirements or provider sampling can all cause it. Verify with Search Console country impressions before concluding.

Why is a pair INSUFFICIENT_DATA?

Fewer than 3 paired days exist in the 7-day window, or the target is absent in both locations for the whole window — then there is nothing to compare and the eligibility engine covers the case.

What is a paired day?

Snapshots for the same keyword and device at both locations on the same UTC calendar day and no more than 36 hours apart. Unpaired days are ignored; a pair whose language codes differ from the keyword's language makes the comparison TEST_INVALID.

What does direction = compared_better mean?

The target is better in the compared location than in the baseline. The score is computed on the mirrored pair and flagged informational; no anomaly status is emitted.

Sources: Google's URL Inspection API, Search Console Search Analytics API and spam policies documentation.