Most ecom brands have Meta Conversion API "set up" — but in a way that recovers only 30-40% of attribution that iOS users would otherwise be missing. The proper setup recovers 80-90%. The difference is one of the highest-ROI configuration changes available to ecom brands in 2026.
Here's what Conversion API actually does, where most setups break, and the configuration that produces the results agencies promise.
What Conversion API actually does
The browser-based Meta pixel was the original way to send conversion data to Meta. It runs in the visitor's browser, fires events when actions happen, and sends data via the browser.
The problem since iOS 14.5 (2021): Apple's privacy framework blocks browser-based tracking for users who don't opt in. About 60-70% of iOS users (huge percentage of ecom traffic) don't opt in. The pixel can't see their conversions.
Conversion API (CAPI) solves this by sending events directly from your server to Meta. The server-side event isn't blocked by iOS privacy frameworks because it happens after the conversion is recorded, on your server, with first-party data.
When configured properly, the server-side event recovers the conversion that the pixel missed. Meta sees the data, attributes it correctly, and optimizes your ads against accurate data.
Why most setups are broken
The typical broken setup looks like this:
- Shopify connects to Meta via the built-in app
- Pixel fires on browser events
- Conversion API "enabled" via the app
- Both fire simultaneously for each event
Sounds fine, but here's what goes wrong:
Problem 1: No event deduplication. The pixel fires when the customer's browser loads the thank-you page. CAPI fires when Shopify processes the order on the server. Both events go to Meta with no way to know they're the same purchase. Meta counts the purchase twice.
Problem 2: Missing event IDs. Proper deduplication requires both events to carry the same unique event_id parameter. Most default setups don't include this, so Meta can't deduplicate even if it wants to.
Problem 3: Inconsistent conversion values. Pixel sends one value (maybe with tax/shipping), CAPI sends a different value (maybe net of those). Meta sees two events with different values and either deduplicates incorrectly or counts both.
Problem 4: Missing user identifiers. CAPI works best when both events carry the same user identifiers (email hash, phone hash, IP, user agent). Many default setups send pixel events with one set of identifiers and CAPI events with a different (smaller) set.
The result: instead of recovering 80% of lost iOS conversions, the setup recovers 30-40% AND introduces double-counting that distorts your data.
What proper setup looks like
The five things that need to be correct:
1. Server-side event deduplication
Every event must have a unique event_id that's identical in both the pixel event and the CAPI event for the same action. When Meta receives both with the same event_id, it knows they're duplicates and counts only one.
Implementation: your server generates an event_id when a conversion happens, sends it to both the browser (for the pixel event) and to Meta's server (via CAPI).
2. Consistent conversion values
The value and currency parameters must be identical between pixel and CAPI events. Pre-tax value, post-tax value, with or without shipping — pick one, use it consistently.
Most common error: pixel sends checkout value (with tax), CAPI sends order value (without tax). Meta sees these as different events.
3. Complete user identifier set
For best matching, every event should include hashed:
- Email address
- Phone number
- First name + last name
- Date of birth (if collected)
- City + state + ZIP
- Country
Plus non-hashed:
- IP address (Meta captures from server connection)
- User agent
- Click ID (fbclid parameter if present in URL)
- Browser ID (cookie value)
More identifiers = better matching = better attribution recovery.
4. Correct event timing
Pixel event fires when the browser loads the purchase confirmation page. CAPI event should fire close to the same time (within 1-2 minutes ideally).
Bad timing patterns:
- CAPI fires 24 hours after pixel (Shopify webhook delay) — Meta can't deduplicate
- CAPI fires only on completed orders (some platforms don't fire until shipping confirmation) — too late
5. Test events validation
Meta provides a Test Events tool that shows incoming events in real-time. After setup, run test purchases and verify:
- Both pixel and CAPI events arrive
- They have matching event_ids
- They have matching values
- Meta reports them as deduplicated
If Test Events shows two separate events for one purchase, deduplication is broken.
How to fix a broken setup
If you suspect your CAPI is configured incorrectly:
Audit step 1: Check Test Events tool
Meta Business Manager → Events Manager → Pixel → Test Events tab.
Make a test purchase on your store. Watch what arrives:
- ✓ One event with both "Browser" and "Server" badges = deduplicating correctly
- ✗ Two separate events (one Browser, one Server) = NOT deduplicating
- ✗ Only Browser event = CAPI not firing
- ✗ Only Server event = Pixel not firing
Audit step 2: Check event match quality
Events Manager → Diagnostics tab → Event Match Quality.
A score of 7+/10 means good identifier matching. Below 6 means you're missing identifiers that would improve attribution.
Audit step 3: Check overlap data
Events Manager → Overview → look at "Deduplication" stats.
A healthy CAPI setup shows 80%+ events deduplicated. Below 60% means many events aren't being recognized as duplicates.
Tools that handle this correctly
Setting up CAPI properly from scratch is technical. Tools that handle this well:
- Shopify Conversion API by Meta: improved significantly in 2024-2025, now better than the original integration. But still has the deduplication issues unless configured manually.
- TripleWhale: handles CAPI for ecom with proper deduplication built in
- Stape.io: server-side tagging solution that handles deduplication properly
- Gtag Server-Side Container: Google's server-side option, requires more setup
For most brands, paying €30-100/month for a proper tool is far cheaper than the lost attribution from a broken setup.
What changes when CAPI works properly
Brands that fix their CAPI setup typically see:
- Meta-reported conversion count increases 15-30% within 14 days
- Cost per conversion drops 15-25% (same actual conversions, more visible to Meta = better optimization)
- Ad scaling becomes easier (Meta has cleaner data to optimize against)
- Algorithm finds new audience segments (had been missing iOS users entirely)
The improvement is real and measurable. It's also one of the few setup changes that improves performance without changing creative, targeting, or budget.
What to do this week
- Audit your current CAPI setup using Meta's Test Events tool (15 min)
- Check your Event Match Quality score in Diagnostics
- Identify which of the 5 components are broken: dedup, values, identifiers, timing, testing
- Fix the most broken component first: typically deduplication or identifiers
- Re-test and verify: same Test Events workflow after each fix
For brands spending €5,000+/month on Meta, fixing CAPI typically improves ROAS by 10-20% with no other changes. The cost: 2-4 hours of technical work or €50/month for a proper tool. The benefit: ongoing for as long as you run Meta ads.
Prime Scale Media supports brands running agency ad accounts with proper Conversion API setup. We audit existing setups and identify the specific components that are broken. Discuss your CAPI setup on WhatsApp.