SERP Volatility
SERP Volatility is Metricstab's portfolio-wide ranking-churn gauge. It answers a single question: did the SERP move more than usual today? When the gauge spikes, something happened — an algorithm update, a major competitor change, an indexing event, a manual action — and you should investigate before the click impact shows up in your trend chart.
What it is
A single daily number — the churn score — that summarises how much your ranking positions moved across the entire portfolio that day. It is paired with a 30-day baseline so you can tell at a glance whether today is Calm, Elevated, or a Spike.
This is intentionally not a per-query list. Per-query position standard deviation on GSC data is noisy: the underlying daily position is itself an aggregate across personalised SERPs, devices and locations. Aggregating across many queries cancels most of that noise and leaves you with a much cleaner signal.
How we compute it
- Pull the trailing 38 days of
gsc_query_day. - For every (query, day) with at least 10 impressions, compute the
impression-weighted average position (
SUM(sum_position) / SUM(impressions)). - Pair each day with the same query's prior day. If the query also had ≥10 impressions
yesterday, compute
|Δposition|— the absolute change in that query's position from yesterday to today. - Per day, the churn score is the impression-weighted mean of those
|Δposition|values across all qualifying queries:SUM(|Δposition| × impressions) / SUM(impressions). - Days with fewer than 5 qualifying queries are dropped (sample too small to be meaningful).
- The baseline is the mean and standard deviation of the prior 30 days (excluding today, so an ongoing event does not poison its own baseline).
- The z-score is
(today − baseline mean) / baseline std. The Calm/Elevated/Spike label is set from that z:z < 1→ Calm,1 ≤ z < 2→ Elevated,z ≥ 2→ Spike.
How to read each part
- Today's churn score — the average ranking move (in SERP positions) per
impression-weighted query for the latest available day. A score of
0.4means a typical query moved roughly 0.4 positions vs yesterday; a score of3.0means rankings churned by ~3 positions on average — a lot. - Calm — today is within 1σ of the baseline. Normal day-to-day SERP rotation.
- Elevated — 1–2σ above baseline. Worth a quick look at Winners/Losers but no immediate action needed.
- Spike — ≥2σ above baseline. The SERP itself moved meaningfully — investigate today.
- σ chip (e.g.
+1.4σ) — how many standard deviations away from the 30-day baseline today sits. - Sparkline — the last 30 daily churn scores. The dashed orange line is the baseline mean — an obvious pop above it is the signal.
What to do with it
- Open Winners/Losers for a date range that includes the spike day and look for big position changes.
- Cross-check against Annotations — was there a release, a deployment, a known SEO event?
- Check third-party SEO trackers (e.g. Semrush Sensor, MozCast) for confirmed Google updates that day.
- Look at Anomalies Snapshot: if clicks/impressions also moved that day, it's likely real impact rather than just SERP shuffle.
- No emergency — but make a note. If the next day is also Elevated or worse, it's the start of an event, not noise.
- Glance at Striking Distance and Content Decay — these reports surface the underlying queries/pages most likely to be affected.
Caveats & gotchas
- GSC's daily position is itself an aggregate of personalised SERP positions. The churn score captures relative change well but should not be read as a precise rank-tracker delta.
- For very small sites (few queries clearing the 10-impressions/day floor), the score can be choppy. The 5-query minimum filter cuts the worst of this; below that we drop the day entirely.
- The baseline is computed against the prior 30 days only. A sustained week-long event will eventually be absorbed into the baseline — the card flags change, not level.
- Search Console has a 2–3 day data lag, so "today" on this card is the latest day GSC has reported for your site, not the literal calendar today.
Related reports
- Anomalies Snapshot — complementary signal on clicks and impressions.
- Winners & Losers — the triage view to open after a spike.
- Striking Distance and Content Decay — surface the queries and pages most exposed when the SERP moves.