Overview
An ecommerce brand came to Adslytics.io convinced its Meta Ads account was "burned out". After months of strong results, performance had suddenly fallen. Cost per purchase had almost doubled, and the agency's creative refreshes did not help. The brand suspected ad fatigue or algorithm changes. Our audit found a different cause: the problem was the data feeding the ads, not the ads.
The problem
The account showed the usual signs of a signal problem rather than a creative problem:
- Cost per purchase rose about 90% over roughly eight weeks, with no major changes to campaigns or offers.
- Events Manager showed inflated purchase counts on some days and missing purchases on others compared with the store's backend.
- The Event Match Quality (EMQ) score for the Purchase event had dropped to "Poor" after a recent website migration.
- Ads Manager attribution no longer matched actual revenue, so the team could not tell which campaigns were working.
What caused it
We audited the Pixel, the Conversion API and the Events Manager configuration, and found four problems:
- Deduplication broke after a site migration. The browser Pixel and the server-side CAPI events fired with different event IDs, so Meta counted many purchases twice and the algorithm optimized toward inflated, unreliable signals.
- Customer parameters were stripped. The CAPI purchase events were sent without hashed customer data (email, phone and name), which collapsed match quality. Meta could no longer connect conversions to the users who clicked the ads.
- A legacy Pixel was still firing. An old Pixel from a previous agency was still active in the theme code and sent conflicting events to a second dataset.
- The optimization event was wrong. The campaign optimized for a purchase event that fired only client-side, so every iOS user with tracking disabled was invisible.
What it cost the business
- Meta's delivery system learned from duplicated and anonymous conversions and showed ads to the wrong audiences.
- As signal quality fell, CPMs and cost per purchase climbed. The account was not fatigued. It was blind.
- The brand kept producing new creatives to fix a problem that creative could never solve.
- The marketing team could not scale anything with confidence because no number could be trusted.
The solution
We rebuilt the event infrastructure from the ground up:
- We unified event IDs across the Pixel and CAPI, so every purchase is sent once from the browser and once from the server and Meta deduplicates it correctly.
- We enriched server-side events with hashed customer parameters (email, phone, name and location), following Meta's data standards, to restore Event Match Quality.
- We removed the legacy Pixel and consolidated all tracking into one clean dataset.
- We reconfigured the optimization event to the deduplicated, server-backed Purchase event, so iOS and ad-blocked conversions were included in learning.
- We set up a weekly data health check that compares Meta-reported purchases with store backend orders to catch drift early.
Results
Within the first 30 days after the fix:
- Event Match Quality on the Purchase event improved from "Poor" to "Great".
- Duplicate purchase events stopped, and Meta-reported conversions came within about 5% of backend orders.
- Cost per purchase fell about 38% as the algorithm re-learned from clean, complete signals.
- The brand resumed scaling ad spend with confidence, because reported ROAS now reflected reality.
Conclusion
When Meta Ads performance drops suddenly, most advertisers blame creatives, audiences or the algorithm. In our experience the cause is often the conversion signal itself. This account did not need new ads. It needed accurate data, and once the Pixel and CAPI setup was fixed, the "burned out" account recovered on its own.
Key takeaways
- A sudden performance drop with no campaign changes is usually a tracking problem, not a creative problem.
- Deduplication (matching event IDs) between Pixel and CAPI is the most common CAPI mistake we see.
- CAPI without hashed customer parameters is nearly useless, because Event Match Quality determines how well Meta can optimize.
- Audit your Events Manager after every site migration, theme change or replatform, because that is when tracking silently breaks.
Seeing the same problem in your account?
Send us your site and we will review your tracking for free. You get a list of what is broken and what to fix first.
Get a free tracking review