Media Buying Diagnostics · Worked Exercise
FAST Diagnostic — Why Performance Declined
A Meta ads account's performance dropped sharply between January and February. Applying the FAST framework (Funnel, Attention, Spend, Tracking) to find the real cause — not just the symptom.
What this is: ROAS dropping is a symptom, not a diagnosis — the same drop can come from creative fatigue, a broken funnel, a weaker offer, a stockout, rising auction costs, or a bad scaling decision, and each has a completely different fix. This exercise takes one account's real before/after numbers, walks the FAST framework stage by stage to rule causes in or out with data, and ends with one defended primary cause and a prioritized action plan.
Before the diagnosis
What changed between January and February
Five things happened at once — the job isn't to list them, it's to work out which ones the data actually implicates.
Jan 1–11
50% off promotion active
Jan 12 onward
Discount cut to 30% off
Feb 2
Best-selling products unpublished
February
Prices increased on most products
February
Manufacturers on Chinese New Year holiday (no restocking)
Tracking
Confirmed no tracking/pixel issues
The headline numbers
January vs February, daily rates
Jan is 31 days and Feb is 26, so totals alone would understate February's collapse — every row below is a per-day average.
| Metric | Jan (daily) | Feb (daily) | Change |
| Spend | $1,062.69 | $394.46 | −62.9% |
| Purchases | 24.9 | 4.4 | −82.2% |
| ROAS | 1.96x | 1.12x | −42.9% |
| Cost per purchase | $42.73 | $89.18 | +108.7% |
| AOV | $83.79 | $99.70 | +19.0% |
| CTR (link) | 4.09% | 4.28% | +4.6% |
| CPC | $0.61 | $0.65 | +6.6% |
| CPM | $24.95 | $28.03 | +12.3% |
| Impressions | 42,594 | 14,071 | −67.0% |
| Link clicks | 1,743 | 602 | −65.5% |
| Adds to cart | 208.8 | 34.6 | −83.4% |
| Click → ATC rate | 11.98% | 5.74% | −52.1% |
| ATC → purchase rate | 11.91% | 12.79% | +7.4% |
The one number that matters most: click-to-ATC rate is cut in half while ATC-to-purchase is flat-to-better. Checkout works. Attention works. The break sits in one specific place — between the click and the add-to-cart, which is the product page itself.
FAST Framework
F — Funnel Metrics
Primary breakpoint
ROAS −43%, cost per purchase +109%, purchases −82% — all far steeper than the −63% spend cut, so this isn't just "less spend bought less." AOV +19% tracks the stated price increases and the weaker discount.
Click → ATC
11.98% → 5.74%
ATC → Purchase
11.91% → 12.79%
Read
Post-click, pre-cart. A product/offer-page problem, not a checkout problem.
A — Attention Metrics
Ruled out
CTR: 4.09% → 4.28% (+4.6%) · Impressions/day: −67.0% · Link clicks/day: −65.5%
CTR improved, and clicks/impressions fell in line with the spend cut, not faster than it. The ads are still stopping the scroll — this rules out creative fatigue, which would show CTR eroding, not holding or improving.
S — Spend Efficiency
Minor factor
CPM: $24.95 → $28.03 (+12.3%) · CPC: $0.61 → $0.65 (+6.6%) · Spend/day: −62.9%
Auction costs rose modestly — real, but far too small to explain an 82% purchase decline on their own. Spend was cut, not increased, over this period, which rules out a scaling mistake and makes the spend cut look like a reaction to falling ROAS rather than a cause of it.
T — Tracking Health
Ruled out — business-driven
No tracking issues reported · ATC→purchase held steady · GPT went negative on 10 of 26 Feb days
A broken pixel typically drags every post-click stage down together and roughly uniformly. Here, ATC-to-purchase held fine while click-to-ATC specifically broke, and gross profit per transaction actually went negative on several individual days — a real margin signal, not a measurement gap.
Diagnosis
Primary cause
Offer/Promo shift, compounded by the inventory issue. The clearest evidence is inside January alone, before February starts: splitting Jan 1–11 (50% off) from Jan 12–31 (30% off) shows purchases/day falling from 35.4 to 19.1 (−46%) and ROAS falling from 2.18x to 1.81x (−17%) on the discount change by itself — an internal control proving this exact lever moves this account's numbers.
February stacks two more instances of the same mechanism on top of that baseline: unpublishing best-sellers on Feb 2 (removing the exact products people came to buy) and further price increases on an already-thinner discount. All three hit the same spot — what a shopper finds on the product page after clicking — which is exactly where the data shows the damage concentrated. Auction pressure and scaling don't fit the size of the drop; creative fatigue is contradicted by CTR improving.
| Window | Offer | Purchases/day | ROAS | AOV |
| Jan 1–11 | 50% off | 35.4 | 2.18x | $75.42 |
| Jan 12–31 | 30% off | 19.1 | 1.81x | $92.31 |
| Feb 1–26 | 30% off + price hikes + best-sellers unpublished | 4.4 | 1.12x | $99.70 |
Action plan
Five steps, in priority order
1
Republish or restock the Feb 2 best-sellers first. These were very likely the highest-AOV/CVR products in the account — every other fix underperforms while ads keep sending traffic to a catalog missing what people came for.
2
Re-test discount depth directly. Run a 40–50%-off offer on a subset of ad sets, creative held constant, and measure click-to-ATC rate against the current 30%-off ad sets over a matched week — the Jan internal split already proves this lever works; this just confirms the size of the effect now.
3
Roll back price increases on whatever's actively advertised. AOV up 19% against an 82% purchase collapse is a lopsided trade — the increase is very likely outrunning what demand will bear at the current offer strength.
4
Reallocate spend away from broken PDPs now — don't wait for the catalog fix. Move budget to SKUs that are still published, not repriced, and had proven ROAS in the January data.
5
Gate re-scaling on click-to-ATC rate, not ROAS. It's the leading indicator that the offer is compelling again (Jan baseline ≈12%, Feb ≈5.7%) and will recover before ROAS does, since ROAS also carries cost-side noise from the CPM/CPC creep.