Forensic Guide
How to Investigate a Traffic Drop Without Panicking
The Slack message arrives from the VP of Growth: "Traffic is down 20% today. What broke?" Here is the exact playbook to find out.
Step 1: Verify the baseline (Is it a real drop?)
Don't immediately start digging into code. First, confirm the drop is mathematically significant. Compare the current traffic not just to yesterday, but to the same day last week, and the 30-day moving average.
Tool: Use our Z-Score Calculator. If the Z-score is greater than -2, tell the VP it's likely statistical noise. If it's less than -2, proceed to Step 2.
Step 2: Isolate by Acquisition Channel
Is the drop global, or localized to a specific source? Open your analytics platform and group traffic by Source/Medium.
| Channel | Baseline | Current | Status |
|---|---|---|---|
| Organic Search | 4,200 | 4,150 | Normal |
| Direct | 1,800 | 1,750 | Normal |
| Paid Social (Meta) | 3,500 | 800 | Anomalous |
In this example, the site isn't broken. The Meta Ads campaign stopped spending or was rejected. Issue routed to marketing.
Step 3: Isolate by Technology
If the drop is global across channels, it's a technical issue. Group by Device Category, then by Browser.
- Drop only on Mobile Safari: Frontend CSS/JS bug pushed in the latest release.
- Drop across all devices: Backend outage, CDN failure, or a broken tracking script.
Step 4: Check Tracking Scripts
Sometimes traffic didn't drop; the analytics tag just stopped firing. Check your tag manager for recent publishes, and check your server logs. If server logs show 10k requests but Google Analytics shows 2k, your tracking is broken.
Tired of doing this manually?
GraphDip runs this exact playbook automatically the second an anomaly is detected, returning the answer in less than 5 minutes.
Automate Investigations