Jump to

Skill · SEO traffic diagnosis

SEO traffic diagnosis.

Diagnose why organic traffic moved: down, flat, or unexpectedly up.

Work out why organic traffic moved and what to do about it. A traffic change has one or more root causes, so the diagnosis moves through five layers in order: confirm the change is real, localize it, analyze the affected pages, check the technical layer, and look outward. Stop when the evidence is enough.

It combines Ahrefs with Search Console and analytics. The output is a single root-cause hypothesis with the evidence behind it, not an exhaustive analysis, because stakeholders want clarity fast.

Audience: SEO teams facing a sharp traffic drop, a months-long stall, post-migration loss, or an algorithm update, who need an evidence-backed explanation quickly.

The framework

Five layers, worked in order.

Move through the layers in order and stop when the evidence is enough. The first rules out a non-event; the last looks outward.

  1. 01Confirm the change is real: rule out tracking gaps, bot shifts, comparison errors, seasonality (year-over-year, not month-over-month), and holiday effects. Cross-check Search Console clicks against analytics sessions.
  2. 02Localize the change: segment by country, device, section, query type, and landing page. A change in one segment needs a different diagnosis than a change everywhere.
  3. 03Page-level analysis: for affected pages, check position changes, SERP composition shifts, CTR, index status, crawl errors, and recent content, link, and backlink changes. A page can lose traffic without losing rank.
  4. 04Technical analysis: check robots.txt, canonicals, accidental noindex, redirect chains, render issues, speed regressions, hreflang, sitemap freshness, and status-code spikes. Recent deploys are the prime suspect.
  5. 05External analysis: if the first four do not explain it, cross-reference the algorithm-update calendar, competitor moves, declining demand, manual actions, and negative SEO.

Pairs with these platforms

Position, clicks, and the competitive context.

Diagnosis combines Ahrefs (position and SERP movement) with Search Console clicks and analytics behavior. For the external layer, Similarweb shows whether competitors held steady while the property dropped (which points to an algorithm-specific issue) or the whole vertical lost ground (which points to a demand shift).

How to diagnose

Eliminate the boring causes before the exciting ones.

Move through the five layers in order and stop when the evidence is enough. The first layer is confirming the change is even real: rule out tracking gaps, bot shifts, comparison errors, and seasonality before diagnosing anything, because a year-over-year comparison often dissolves a panic that a month-over-month one created.

Do not jump to the algorithm. 'It must be an update' is the lazy answer and frequently wrong, so eliminate technical and page-level causes first, because a drop blamed on content quality is often an accidental noindex shipped in a deploy. Recent deploys are the prime suspect, so line their dates up against the change date, and remember that a correlation is not the mechanism.

Each data source sees a different slice: Ahrefs sees position, Search Console sees clicks and queries, analytics sees behavior, and logs see crawl, so triangulate rather than diagnosing from one. And resist premature reassurance: telling stakeholders 'it is just an algorithm update, it will recover' without evidence only sets up a worse conversation later.

Reference files

The reference that goes alongside the SKILL.md.

  • references/diagnosis-checklist.md

    A layer-by-layer diagnostic checklist with the specific data to pull at each layer and how to interpret each signal.

Browse all reference files on GitHub

Bridges to other skills

What raises the alarm, and what it rules in.

Diagnosis is a focused investigation into a change that already happened. These cover the monitoring that flags it and the audits its layers reach into.

  • Raises the alarm

    seo-rank-tracking

    Monitoring flags the drop and the date; diagnosis explains the cause. Tracking is the smoke alarm, this skill is the investigation.

  • The technical layer

    seo-site-health-audit

    When the technical layer is the culprit, triaging the crawl findings is a site-health job. Diagnosis localizes the cause; that skill prioritizes the fixes.

  • Link-loss cause

    seo-backlink-audit

    When the drop correlates with lost links, the profile audit confirms it. Diagnosis points at the link layer; that audit reads it in depth.

  • Post-migration drops

    content-migration

    A post-migration loss usually traces to the redirect map. Diagnosis names migration as the cause; the migration skill owns the recovery.

  • Routine reporting

    analytics-strategy

    Routine performance reporting is a measurement job, not a diagnosis. Reach for diagnosis only when something changed and the question is why.

Open source under MIT

Read the SKILL.md on GitHub.

The skill source lives in the rampstackco/claude-skills repository alongside dozens of other skills covering the full lifecycle of brand and product work. This page is a structured overview; the SKILL.md is the source. MIT licensed.

Frequently asked questions.

What are the five layers of diagnosis?
Confirm the change is real, localize the change (by country, device, section, query type, and landing page), page-level analysis (positions, SERP composition, CTR, index status, content and link changes), technical analysis (robots, canonicals, noindex, redirects, rendering, speed, hreflang, status codes), and external analysis (algorithm updates, competitor moves, demand shifts, manual actions, negative SEO). Work through them in order and stop when you have enough evidence; most changes are explained well before the external layer.
What is the first thing to check?
That the change is real. Before diagnosing, rule out tracking gaps (analytics outages, tag manager issues), bot traffic shifts, reporting comparison errors (wrong date ranges or segments), seasonality, and holiday or weekday effects. Cross-check Search Console clicks against analytics organic sessions, because a significant divergence between them often points to a tracking issue rather than a real traffic change. Without a baseline for normal noise, every fluctuation looks alarming.
Why shouldn't I jump to the algorithm?
Because 'it must be the algorithm' is the lazy answer and often wrong, and jumping to it skips the causes you can actually fix. Eliminate technical and page-level explanations first: a drop diagnosed as content quality is frequently an accidental noindex shipped in a recent deploy, which is the prime suspect to check against the change date. Validate the hypothesis with evidence before fixing anything, because solving the wrong problem wastes the recovery window.
How do I tell which kind of problem it is?
Localize it. A drop in branded queries is a brand-level problem (a site outage, a reputation issue, or a manual action); a drop in non-branded queries is an algorithmic SEO problem, and different teams own those. One country dropping points to a local algorithm update or an hreflang issue; mobile dropping while desktop holds points to a mobile usability or speed regression; a single page is a page-level issue; and a sitewide drop is a penalty, technical, migration, or algorithm issue. Segment until the pattern is clear before diagnosing the cause.
Why use multiple data sources?
Because each sees a different slice of the truth: Ahrefs sees position and SERP movement, Search Console sees clicks and queries, analytics sees on-site behavior, and server logs see crawl behavior. Diagnosing from a single source misses the mechanism. A deploy and a drop on the same day is a strong correlation but not proof, so use the sources together to find the actual cause, and for the external layer pair Ahrefs (competitor SERP movement) with Similarweb (competitor traffic trends) to see whether the issue is yours alone or the whole category's.