"The worst part isn't that performance dropped. It's that I have no idea WHY and can't get a straight answer from anyone."
— Source: r/ecommerce (278 upvotes)
Your ads were working. Now they're not. ROAS crashed. Conversions disappeared. CPC spiked. And the platform's explanation—if you can even get one—is useless: "learning phase," "auction dynamics," "try increasing budget."
The standard advice is equally unhelpful: test more creatives, expand audiences, throw more money at it. But that's guessing, not diagnosing.
This playbook takes a different approach. Instead of randomly changing things, we'll systematically find the actual root cause of your performance problem. Because the fix for "creative fatigue" is completely different from "tracking broke" or "competitor entered the auction."
This Guide: Covers the systematic diagnosis process that applies across platforms (Meta, Google, TikTok). For platform-specific deep dives, see the linked guides for Meta, Google Ads, and Performance Max.
The 5-Step Diagnosis Framework
When ads stop working, most people immediately start changing things—new creatives, different audiences, higher bids. This makes diagnosis nearly impossible because you're introducing new variables while trying to find the problem.
Instead, follow this diagnostic sequence:
| Step | Question | Purpose |
|---|---|---|
| 1. Confirm | Is the problem real? | Rule out noise, data delays, attribution |
| 2. Isolate | Where is the problem? | Platform, campaign, or ad set level |
| 3. External | Is it outside my control? | Outages, updates, market events |
| 4. Funnel | Where is it breaking? | Impressions, clicks, or conversions |
| 5. Cross-reference | What's actually true? | Platform vs. analytics vs. sales |
Golden rule: Don't change anything until you've completed the diagnosis. Every change you make makes it harder to find the root cause.
Step 1: Confirm the Problem Is Real
Before panicking, rule out false alarms:
- Meta: Conversion data can lag 24-72 hours, especially with iOS 14.5+ delays
- Google: Same-day data is incomplete; wait 48-72 hours for accuracy
- Attribution window: Conversions from previous clicks still count for old campaigns
Action: Compare yesterday's "today" data with today's "yesterday" data. If there's a big difference, you're looking at lag, not decline.
- Small samples show high variance (50 conversions/day has huge swings)
- Day-of-week patterns (Monday vs. Saturday performance differs)
- Paycheck cycles (1st and 15th often perform differently)
- Weather and news events affect behavior
Action: Compare 7-day rolling average to previous 7-day average. Single-day drops are often noise.
If you recently changed attribution settings (7-day vs. 28-day click, view-through), your "ROAS" will look different even if nothing changed.
The Test: If your bank deposits are unchanged but platform ROAS dropped, you probably have an attribution or tracking issue, not a performance issue.
Step 2: Isolate the Scope
Once you've confirmed the problem is real, determine its scope:
All campaigns on the platform are affected.
- Likely causes: Algorithm update, platform outage, tracking break
- Check: Are other advertisers reporting similar issues? (r/PPC, r/FacebookAds)
- Verify: Is your pixel/conversion tracking still working?
Only certain campaigns are affected.
- Likely causes: Audience fatigue, creative exhaustion, competitor
- Check: What changed in the affected campaigns recently?
- Verify: Are ad sets within the campaign performing uniformly or is it specific ones?
Multiple platforms (Meta + Google) dropped simultaneously.
- Likely causes: Website issue, checkout problem, product/inventory issue
- Check: Did something change on your site?
- Verify: Test your own checkout flow, check site speed, verify product availability
Diagnostic question: "Is this happening everywhere, or just here?" If everywhere—look at your site. If specific to one platform—look at that platform. If specific to one campaign—look at that campaign.
Step 3: Check External Factors
Many performance drops aren't your fault—they're platform or market issues.
- Meta Status: status.fb.com (check Ads Manager status)
- Google Ads Status: ads.google.com/status
- Downdetector: Real-time user reports of issues
- Reddit: r/FacebookAds, r/PPC, r/googleads for real-time reports
Platform outages often show as zero conversions with normal spend—spend continues but tracking breaks.
- Meta and Google roll out algorithm changes regularly
- These cause widespread performance shifts across advertisers
- Check industry Twitter/X accounts and ad communities for reports
- Algorithm changes usually normalize within 1-2 weeks
- Competitor launched: New entrant in auction raises CPCs
- Seasonal shift: Post-holiday drop, back-to-school, etc.
- Economic news: Major events affect consumer behavior
- Prime Day / major sales: Other retailers pull attention
Deep dive: For distinguishing platform issues from your issues, see our guide on Platform Outages vs. Campaign Problems.
Step 4: Analyze the Funnel Stage
Once you've ruled out external factors, identify WHERE in the funnel the breakdown is happening:
| Symptom | Likely Cause | Fix |
|---|---|---|
| Sudden impression drop | Budget exhausted, bid too low | Check budget and bid strategy |
| Gradual impression decline | Audience saturation | Expand or refresh audiences |
| Impressions with high frequency | Audience exhausted | Exclude recent purchasers, expand |
| Low impression share | Competition increased | Review auction insights, adjust bids |
| Symptom | Likely Cause | Fix |
|---|---|---|
| Sudden CTR drop, same ads | Creative fatigue | Refresh creatives |
| CTR drop after creative change | New creative underperforming | Revert or iterate |
| CTR drop, new audience | Audience mismatch | Review targeting |
| CTR stable but low | Weak creative/offer | Test new angles |
| Symptom | Likely Cause | Fix |
|---|---|---|
| Conversions stopped suddenly | Tracking broke | Check pixel, verify events firing |
| Gradual conversion decline | Landing page issue, price sensitivity | Test landing page, check competitors |
| High clicks, zero conversions | Traffic quality issue | Check placement breakdown, exclude bad placements |
| Conversions at checkout only | Cart/checkout broken | Test checkout flow immediately |
The Key Question: "Where is the funnel breaking?" Impressions → Clicks → Conversions. Find the stage that changed, and you've found the problem category.
Step 5: Cross-Reference Data Sources
"Meta says one thing. Google says another. Shopify says something else. Which is true?"
— Source: r/ecommerce (312 upvotes)
Platforms lie. Not intentionally, but their attribution models overcount conversions (everyone takes credit for the same sale). Here's how to find the truth:
| Data Source | What It Shows | Bias |
|---|---|---|
| Ad Platform (Meta, Google) | Attributed conversions | Overcounts (takes credit for organic) |
| Analytics (GA4) | Last-click attribution | Undercounts Meta, overcounts Google |
| Shopify/Cart | Actual orders | Truth, but no attribution |
The test: If Shopify orders are stable but Meta ROAS "dropped," Meta probably just lost attribution visibility—not actual performance.
| Scenario | What It Means | Action |
|---|---|---|
| Platform shows drop, revenue stable | Tracking/attribution issue | Check pixel, don't panic |
| Platform shows stable, revenue dropped | Real problem, platform not seeing it | Check site, inventory, pricing |
| Both platform and revenue dropped | Real performance issue | Full diagnosis needed |
| Platform and GA4 disagree | Attribution model difference | Use Shopify as tiebreaker |
How Niblin Helps: This is exactly what an AI analytics agent solves. Instead of comparing three dashboards manually, ask Niblin "why don't my platform numbers match my sales?" and the agent cross-references your data across all sources in seconds—surfacing discrepancies automatically with deterministic, computed answers.
Platform-Specific Diagnosis Guides
Each platform has unique issues and diagnostic approaches:
- Common issues: iOS attribution gaps, learning phase resets, audience fatigue
- Unique factor: Aggregated Event Measurement limits data visibility
- Diagnostic priority: Check Events Manager for pixel health first
- Deep dive: Meta Ads Performance Drop: Is It You or the Platform?
- Common issues: Click fraud, Quality Score drops, competitor bidding
- Unique factor: Search intent changes affect performance seasonally
- Diagnostic priority: Check Search Terms report for traffic quality
- Deep dive: Google Ads Click Fraud: How to Detect and Prevent
- Common issues: Black box makes diagnosis hard, asset group issues
- Unique factor: Can't see where spend goes without insights reports
- Diagnostic priority: Check Insights tab, review asset group performance
- Deep dive: Performance Max Not Performing: Root Cause Analysis
- Common issues: Creative burnout (faster than Meta), audience mismatch
- Unique factor: Native-looking content performs best; polished ads fail
- Diagnostic priority: Check video completion rates and hook performance
When to Reset vs. When to Fix
Sometimes fixing a broken campaign isn't worth it. Here's when to reset:
- Problem is clearly identifiable (tracking, landing page, creative)
- Campaign has valuable historical data and learnings
- Only specific ad sets/ads are affected
- Issue is external (platform, will resolve)
- Performance drop is <30% from baseline
- Campaign is in a "death spiral" (every fix makes it worse)
- Performance drop is >50% and sustained for 2+ weeks
- Learning phase keeps resetting
- Account-level issues suspected (shadow penalties)
- Multiple major changes needed anyway
- Don't duplicate: Create fresh campaign, don't copy the broken one
- Pause, don't delete: Keep old campaign for data reference
- Start conservative: Lower budget than usual, let it learn
- One variable: Change one thing from the old setup, not everything
- Document: Note what you're testing so you can learn from it
From Guessing to Diagnosing
"ROAS crashed from 5.0 to 0.8 overnight. No changes on my end. Platform "learning" is the worst non-answer."
— Source: r/PPC (234 upvotes)
The hardest part of ad performance problems isn't fixing them—it's finding them. Once you know the actual root cause, the fix is usually straightforward.
The 5-step framework (Confirm → Isolate → External → Funnel → Cross-reference) transforms random troubleshooting into systematic diagnosis. Use it every time before making changes.
Stop comparing three dashboards to find the truth.
Ask your data anything. Niblin's AI agent answers questions like "why did my ROAS drop?" by analyzing your Meta, Google, Amazon, Shopify, TikTok, and GA4 data together—computed answers in seconds, same every time. One agent with 50+ commerce skills. $299/mo to start.
Ask Your Data Anything — 15 Minute Setup
Key Takeaways
- Before changing anything, confirm the problem is real (rule out data lag, normal variance)
- Isolate scope first: platform-wide, campaign-specific, or cross-platform
- Check external factors before blaming yourself—outages, algorithm updates, market events
- Find the funnel stage where breakdown occurs: impressions, clicks, or conversions
- Cross-reference platform data with analytics and actual sales—platforms overcount
- If platform shows drop but revenue is stable, you have a tracking issue, not a performance issue
- Reset campaigns when fixing isn't working; don't let death spirals continue
Frequently Asked Questions
Why did my ROAS suddenly crash?
Sudden ROAS drops are usually caused by: algorithm/auction changes, audience fatigue, competitor entry, tracking issues, or platform bugs. The key is systematic diagnosis—check if the drop is platform-wide, verify tracking is working, and analyze where in the funnel conversions stopped.
How do I know if the problem is the ad platform or my website?
Compare click-through rate (CTR) with conversion rate. If CTR is stable but conversions dropped, the problem is on-site (landing page, checkout, inventory). If CTR also dropped, the issue is creative fatigue, targeting, or platform-side. Check site speed and functionality separately.
How long should I wait before investigating a performance drop?
Wait 48-72 hours before full investigation—platform data has significant lag. But check immediately for obvious issues: tracking breaks, site down, inventory out. If the problem persists after 72 hours with complete data, it's real and needs diagnosis.
Should I increase budget when ROAS drops?
Usually no—this is throwing money at a problem you don't understand. First diagnose the root cause. Increasing budget only makes sense if the issue is limited scale (you're winning every auction you enter but not entering enough).
Why do Meta and Google show different numbers than Shopify?
Each platform uses different attribution models. Meta credits view-through and click-through conversions. Google uses last-click by default. Both take credit for conversions they influenced but didn't cause alone. Shopify shows actual orders but no attribution. Truth is usually between platform claims and actual sales.
When should I reset a campaign vs. try to fix it?
Fix when the problem is identifiable and the campaign has valuable learnings. Reset when performance dropped >50% for 2+ weeks, every fix makes it worse (death spiral), or learning phase keeps resetting. Resetting means creating a fresh campaign, not duplicating the broken one.