Meta Ads · Analytics · Conversions API

Meta Pixel + CAPI After iOS 14: How to Stop Losing Conversion Data

Your ads are performing better than Ads Manager shows — part of your conversions simply never reach it. Here is how to get that data back: a step-by-step Conversions API setup, deduplication, and quality checks instead of blind faith that "events are arriving".

0/0
Attribution window days click / view
0
Events per domain in AEM
$0
Meta CPL PureDrive case
August 29, 2026·~11 min read·Meta Ads · CAPI · Analytics

01 — Problem

What Exactly Broke After iOS 14

April 2021 split advertising analytics into "before" and "after". App Tracking Transparency gave users the right to refuse tracking — and most of them took it. Every account that relies on the browser Pixel alone still feels the consequences.

✕

Some conversions simply vanished

After ATT, an iOS user can refuse tracking — and the browser Pixel no longer sees what they did. The conversion happened, the sale exists, but Ads Manager has no record of it. You optimise campaigns on incomplete data.

✕

Attribution windows shrank

The standard window dropped to 7 days after a click and 1 day after a view. Anything that converts later does not exist for the system — painful wherever a decision takes weeks to ripen.

✕

Blockers and ITP finish the job

Browser restrictions on third-party cookies and scripts cut away another slice of events before they ever reach Meta.

✕

The algorithm learns from a skewed sample

The worst consequence: the losses are uneven. iOS audiences usually have more money to spend, and they are exactly the ones you see least — so the algorithm concludes they convert worse and shows them fewer ads.

The key point: the problem is not that you see fewer conversions. The problem is that the algorithm optimises against a distorted picture — and makes worse decisions on its own, every single day.

02 — Setup

Five Steps to Implementing the Conversions API

CAPI sends events from your server straight to Meta, bypassing the browser entirely. That is something neither blockers nor ATT restrictions can see. But sending events on its own achieves nothing — the sequence and the verification at each step are what matter.

01

Choose your integration method

Three workable options: a ready-made integration for your CMS (Shopify, WooCommerce), a server-side Google Tag Manager container, or a direct Conversions API call from your backend. The first is fastest, the third is most precise. For most projects server-side GTM strikes the best balance.

02

Set up deduplication via event_id

This is the step people skip most often — and it is the one that breaks everything else. Pixel and CAPI send the same event twice. If both do not carry an identical event_id, Meta counts two conversions, and your reported ROAS looks twice as good as reality.

03

Send as many matching parameters as possible

Email, phone, name, city, IP, User Agent, fbc and fbp — all hashed. The more parameters you send, the higher your Event Match Quality and the more reliably Meta ties the event to a real person. Below 6.0 should be treated as a problem.

04

Set your AEM priorities

A domain gets only 8 events, and the order matters: for iOS traffic only the highest-priority event is counted. Purchase belongs at the top and content view at the bottom, not the other way round.

05

Verify quality, not just delivery

In Events Manager, do not look at "events are arriving". Look at three things: Pixel and CAPI matching without duplication, the Event Match Quality score, and the share of events received through the server only. That last number shows how much data you were losing before.

03 — Event ladder

What to Send Besides the Purchase Itself

The most common mistake is wiring CAPI to the final conversion only. Purchases are rare, so the algorithm takes months to learn. Micro-events happen many times more often and give it a signal within weeks.

Level 1

Micro-events before the purchase

A quality page view, a certificate opened, a catalogue downloaded — on the PureDrive account the entire ladder was tracked, not just the final sale.

Level 2

Intent to get in touch

Phone clicks and form submissions — events that happen far more often than payments and give the algorithm many more signals to learn from.

Level 3

Cart and checkout

Add to cart and initiate checkout — the classic pair that shows exactly where the funnel leaks: at product choice or already at payment.

Level 4

Purchase with real value

Not just the fact of a purchase, but the order total in the value parameter. Without it, Meta optimises for order count rather than revenue.

04 — Proof

Why Tracking Discipline Pays Off

On the PureDrive account the whole micro-event ladder was tracked — from reading the quality page and opening the certificate to downloading the catalogue, clicking the phone number and buying. That completeness is what made it possible to keep Meta in the cheap top-of-funnel role and Google on high purchase intent, without confusing the two.

Meta · top of funnel
$17.6
cost per lead
Nine months total
0
leads, 383 new customers
Sales per month
43→0
roughly three times

The same logic played out at SumSum: analytics was rebuilt from scratch there — GA4, Enhanced Ecommerce, form and sale tracking. The result was steady growth of around 20% in monthly sales. In both cases the first move was not new creative or new bids, but making the numbers trustworthy again.

Read the full PureDrive case →

05 — Mistakes

Four Mistakes That Cancel Out CAPI

✕ Turning CAPI on and Pixel off

They do not replace each other, they complement each other: the Pixel supplies browser signals (fbp, fbc) without which CAPI matching degrades sharply. The right setup keeps both, with deduplication.

✕ Sending data without hashing

Email and phone must be hashed with SHA-256 before sending. That is both a Meta requirement and a GDPR question.

✕ Ignoring Event Match Quality

CAPI without matching parameters runs at half strength. Sending the bare event with no email, phone or fbp is technically working and practically useless.

✕ Celebrating a jump in reported conversions

If conversions suddenly doubled after CAPI went live, deduplication is almost certainly broken rather than results improved. A realistic lift is tens of percent, not a multiple.

06 — Checklist

Setup Checklist — Save It

Pixel and CAPI run in parallel, not one instead of the other
event_id is identical in both sources — deduplication verified
Email, phone and other parameters hashed with SHA-256
fbp, fbc, IP and User Agent are being passed
Event Match Quality above 6.0 on key events
AEM priorities set with purchase first
Purchase events carry value and currency
The micro-event ladder is tracked, not just the final conversion
Verified through Test Events after every change

07 — Questions

Frequently Asked Questions

Can you get by with the Pixel alone, without CAPI, in 2026?
Technically yes, but you are knowingly agreeing to work on incomplete data. It hurts most in e-commerce with a large share of iOS traffic: the audience with the most money to spend becomes the one the algorithm sees least clearly.
How much do conversions increase after implementing CAPI?
A realistic benchmark is tens of percent in additional events, depending on your share of iOS traffic and the quality of the setup. If the number doubled, that is almost always broken deduplication rather than a genuine lift.
What is deduplication and why is it critical?
Pixel and CAPI send the same event twice. An identical event_id lets Meta understand it is one event. Without it, reports overstate results, you make decisions on false numbers and scale things that do not actually work.
Do you need a separate server for the Conversions API?
Not necessarily. For Shopify or WooCommerce a ready-made integration is enough. A server-side GTM container is the best option for most other sites. A custom backend integration is only needed when you have specific logic or data coming from a CRM.
Is this GDPR compliant?
Yes, under two conditions: all personal data is sent hashed only, and no event is sent if the user has not given consent. Consent Mode has to govern server-side delivery the same way it governs the browser — that part is often forgotten.
What is Event Match Quality and what score is normal?
It is a 0 to 10 score of how reliably Meta matches your event to a specific person. Below 6.0 is a reason to add parameters. Above 8.0 is a good result for most projects.

Free check

How Many Conversions Is Your Account Missing?

I will review your tracking — deduplication, Event Match Quality and event priorities — and show you how much data is being lost. Free, with no obligations.

Free audit · 1 business day · No pitch, no obligation