---
title: "Content decay detector · gscdump"
canonical_url: "https://gscdump.com/tools/content-decay"
last_updated: "2026-10-03T04:31:35.310Z"
meta:
  description: "Pages in your Google Search Console record whose clicks fell 20% or more against the previous 28 days, with the clicks lost. Free with a Google sign-in."
  "og:description": "Pages in your Google Search Console record whose clicks fell 20% or more against the previous 28 days, with the clicks lost. Free with a Google sign-in."
  "og:title": "Content decay detector · gscdump"
---

Which pages lost clicks this month, and how many?

# Content decay

Pages whose clicks fell 20% or more between the last 28 days and the 28 days before, with the clicks lost per page.

## What it returns

Real rows, no sign-in

Pages with 10 or more clicks in the earlier window that fell 20% or more, sorted by clicks lost.

[nuxtseo.com](https://nuxtseo.com) · 2026-08-22 to 2026-09-18, 2 of 2 rows · captured 2026-09-22

Example Content decay rows from nuxtseo.com

| Page | Previous | Current | Lost | Change |
| --- | --- | --- | --- | --- |
| |
| /tools/schema-validator | 1,920 | 1,533 | 387 | 20.16% |
| /tools/meta-tag-checker | 642 | 398 | 244 | 38.01% |

These are nuxtseo.com's own rows, read from its Search Console record. Connect a Site below to run the same query over yours.

## Run it on your own record

[**Continue with Google **](https://gscdump.com/auth/google)

HostedRead-only Search Console scope. Free during beta.

or

```
gscdump analyze decay --site sc-domain:example.com --prev-start YYYY-MM-DD --prev-end YYYY-MM-DD
```

$ LocalMIT licensed, on npm.

Over MCP: `run-report { siteId: "<site-id>", reportId: "risks", comparison: "prev-period" }`

[Connect with MCP](https://gscdump.com/mcp) to reach it from ChatGPT, Claude, Cursor, or Copilot.

The risks report runs decay alongside the cannibalization, dark-traffic, and device-gap analyzers.

## **What the query compares**

Two windows of your Search Console record: the last 28 days and the 28 days before them. For every page with 10 or more clicks in the earlier window, the query takes clicks from each window and keeps the pages that fell by 20% or more.

A page rarely loses all its clicks at once. It slips a position or two, a newer page appears above it, the query's meaning shifts, and each window shows a little less than the last. The record catches the slope early, while the page still ranks.

## **What tends to cause a fall**

- **Stale facts.** Dates, numbers, screenshots, and tool versions age. A "2024 guide" reads as old in 2026, to readers and to Google.
- **A newer page above yours.** Someone published a fuller answer to the same query. Search the query and read what now ranks above you.
- **The query changed meaning.** What people want from the same words moves over time, from reading to buying, or from one product to another.
- **A Google update.** Core updates move many pages at once. Check Google's Search Status Dashboard for a date inside the window.

## **What to do with the rows**

- **Start at the top of the table.** Rows sort by clicks lost, so the first row is the largest loss in absolute terms, whatever its percentage.
- **Check the page's queries.** Open the page in your dashboard and compare its queries across the same two windows. One query falling and the rest holding is a different problem from all of them falling.
- **Re-run after a change.** After you update a page, it takes 2-8 weeks for the windows to reflect it. The row leaves the table when the fall drops under 20%.

## Common questions

A page losing clicks over time. The record shows it as the same URL with fewer clicks in each later window, with or without a drop in average position.

It compares clicks per page across the last 28 days and the 28 days before. A page with 10 or more clicks in the earlier window and a fall of 20% or more lands in the table, with a severity label from minor (20-30%) to critical (70% or more).

Pages with fewer than 10 clicks in the earlier window. A fall from 3 clicks to 1 is 67% and tells you nothing, so those rows are cut.

The record cannot say. Common causes in the window: a newer page from someone else, a Google update, a shift in what the query means, a lost link, or a slow page. The row tells you where to look.

Google reports with a 2-3 day delay, so the last days of the recent window may still be filling in. The query uses whatever the record holds at run time.

## **See also**

<dl>

<dt><a href="https://gscdump.com/tools/movers">Movers and shakers</a></dt>
<dd>Queries whose clicks changed 20% or more between the last 28 days and the 28 before.</dd>

<dt><a href="https://gscdump.com/tools/striking-distance">Striking distance keywords</a></dt>
<dd>Queries ranking 4-20 by impressions, with CTR and clicks for each.</dd>

<dt><a href="https://gscdump.com/tools/cannibalization">Keyword cannibalization</a></dt>
<dd>Queries where 2 or more of your pages each receive impressions, with the click split.</dd></dl>

Every day you're not syncing is data Google will delete.

Eligible Sites backfill available Search Console history. Data sources depend on the tool and account. Free during beta.

[**Join the waitlist **](https://gscdump.com/#get-access) [**Connect with MCP **](https://gscdump.com/mcp)

## Sitemap

See the full [sitemap](/sitemap.md) for all pages.
