Here is what is happening right now on your Meta account. You open Events Manager. It shows a healthy purchase event count. Your campaign dashboard shows a ROAS you are broadly happy with. You assume your tracking is working. It is not.
What you are looking at is a fraction of your actual conversions. The ones Meta can see. The other 50-70% happened in browsers that blocked your pixel, on iOS devices where the user declined tracking, through Safari's Intelligent Tracking Prevention, or via ad blockers that silently stripped your event before it ever fired. Meta's algorithm is optimising on incomplete data and billing you at full price to do it.
This is not a minor reporting quirk. It is the reason your ROAS looks solid while your actual acquisition cost keeps rising. It is the reason your lookalike audiences have degraded. And it is fixable, without a developer, in an afternoon.
What Actually Happened to Your Pixel
When Apple released iOS 14.5 in April 2021, they required all apps to ask users for permission before tracking them. Around 75-85% of iOS users opted out. That single change removed a huge portion of Meta's attribution signal overnight.
Since then, it has only gotten worse. iOS 17 introduced link tracking protection that strips UTM parameters and click identifiers from URLs. Safari's ITP prevents third-party cookies from persisting beyond 24 hours on most devices. Chrome is moving toward deprecating third-party cookies. Ad blocker adoption has risen to around 31% of desktop users globally.
By 2026, the browser-based pixel that DTC brands built their entire acquisition infrastructure around captures only 40-60% of the conversions that actually happen. The attribution gap that sat at 30-40% right after iOS 14.5 has expanded to 50-70% for most ecommerce accounts.
Every conversion Meta cannot see is a data point its algorithm cannot learn from. Feed the algorithm bad data for long enough and it stops finding your best customers. Your ROAS declines. You increase budget to compensate. Costs go up further. Most brands diagnose this as a creative problem or a seasonality problem. It is a tracking problem.
What the Meta Conversions API Actually Does
The Meta Conversions API (CAPI) bypasses the browser entirely. Instead of waiting for a JavaScript tag to fire on a user's device (where it can be blocked), CAPI sends your conversion data directly from your server to Meta's servers. No browser. No ad blocker. No cookie expiry. No iOS permission required.
When a customer completes a purchase on your Shopify store, your server knows about it regardless of what the customer's browser did. CAPI takes that server-side event, enriches it with whatever identifiers you have (email address, phone number, name, location), hashes the personal data with SHA256, and sends it to Meta in real time.
Meta then attempts to match that hashed data against its user database. If it finds a match, the conversion gets attributed. This is how you recover the sales that your pixel missed.
One critical point operators miss
CAPI does not replace the pixel. You run both. The pixel catches browser-side events: page views, add to cart, initiate checkout. CAPI enriches and fills the gap on the purchase event where blocking happens most. Running both together, with event deduplication to prevent double-counting, is the standard setup in 2026.
Deduplication works by passing a matching event_id through both the pixel and CAPI for the same conversion. Meta sees the same ID from two sources and counts it once. Skip this step and you will inflate your reported conversions and corrupt the algorithm's training signal in the other direction.
Event Match Quality: The Score That Tells You If CAPI Is Actually Working
Inside Meta Events Manager, there is a score called Event Match Quality (EMQ). It runs from 0 to 10 and measures how well Meta can match your server-sent events to real user profiles. A higher score means more of your conversion data reaches Meta's optimisation system. This is the number you need to track.
EMQ Score Reference
Most brands that have CAPI turned on sit at an EMQ of 5 to 6. They think they have fixed the problem. They have not. An EMQ of 5 means roughly half your events are not matching. You are still flying partially blind.
The single biggest lever for improving EMQ is sending a hashed email address with every server-side purchase event. If your Shopify checkout captures an email (which it does for every completed order), and you are not passing that email through CAPI, you are leaving your best matching identifier on the table. Adding email alone can move an EMQ score from 5 to 7 or above. Brands that implement full identifier enrichment (email, phone, name, location) regularly hit 8 or 9.
How to Set Up CAPI on Shopify: Four Options, Ranked
The right setup depends on your monthly revenue and how much technical debt you want to carry. Here is the honest breakdown.
Meta's one-click CAPI (free, zero config)
In April 2026, Meta released a one-click CAPI option inside Events Manager. Zero configuration, no server, no technical knowledge required. It activates in under a minute. The catch: it relies on Meta's own matching infrastructure rather than your first-party data, so EMQ scores are typically lower than a properly configured server-side setup. If you have done nothing yet, start here while you build something better.
Shopify's native CAPI toggle (free, 15 minutes)
In your Shopify admin, go to Online Store, then Preferences, then connect your Meta pixel and toggle on the Conversions API. This sends server-side purchase events with whatever identifiers Shopify already has. It is solid for brands under 50k per month and handles deduplication automatically. Limitation: it only sends what Shopify collected at checkout and does not validate or enrich the identifiers before sending. EMQ scores typically sit at 6 to 7 with this method.
Third-party enrichment tools (paid, best performance)
Tools like Elevar, Littledata, and Attribuly sit between your Shopify store and Meta's API. They capture all available identifiers at checkout, validate and normalise them before sending, and typically achieve EMQ scores of 8 to 9. They also send to Google, TikTok, and other platforms simultaneously, which makes them a full tracking stack rather than a single-channel fix. Third-party tools recover 20-40% more conversions than native setups. For brands spending 10k or more per month on Meta, the improvement in algorithm performance pays for the tool within weeks.
Server-side Google Tag Manager (no monthly fee, requires setup)
GTM Server-Side gives you control without an ongoing subscription. You run a server-side container (typically on Google Cloud Run), configure your Shopify data layer, and push events to Meta, Google, and TikTok via server-side tags. The setup takes a day if you know what you are doing. If you are already running GTM for GA4 and have some technical resource, this is the most cost-effective path at scale. If you do not, start with a third-party tool.
What Happens to Your ROAS After You Fix This
The short answer: your reported ROAS may not change much. Your actual performance will improve.
What CAPI fixes is not the number on your dashboard. It fixes the signal Meta's algorithm uses to find buyers. Better signal means the algorithm can identify higher-intent audiences, reduce wasted spend on low-probability users, and learn faster which creatives drive actual purchases versus just clicks.
In practice, brands that go from a poor pixel-only setup to a properly configured Pixel plus CAPI setup with EMQ above 7 typically see one of two things: cost per purchase drops 15-38% within two to four weeks as the algorithm re-trains, or their spend efficiency stays flat while their scale ceiling rises, meaning they can push more budget without ROAS degrading at the same rate as before.
What almost never happens is nothing. If your CAPI is set up correctly and your EMQ moves from 4 to 8, you will see a real performance difference. The brands that say "we set up CAPI and saw no improvement" almost always either have duplicate events counting wrong, are sending CAPI but not passing email as an identifier, or have EMQ scores that remain in the 5 to 6 range because they stopped at Shopify native without verifying what was actually being sent.
The Three Checks to Run This Week
Before you do anything else, check where you actually stand. Most brands discover their tracking is in worse shape than they thought.
Open Meta Events Manager and find your Purchase event EMQ score.
If it is below 6, you have a tracking problem. If it is below 4, your CAPI is either not set up or sending without meaningful identifiers. If you do not see an EMQ score at all, your CAPI is not active.
Compare Meta-reported purchases to Shopify order count for the same period.
A gap above 20% suggests significant data loss. A gap above 40% means your algorithm is working with less than half the signal it needs. This gap is your tracking deficit. Closing it by 50% will move your performance more than most creative optimisations.
Check your deduplication setup.
In Events Manager, look at the event_id column for your Purchase events. If you see Purchase events without an event_id, or if your Pixel and CAPI are sending events with different IDs for the same order, you have a deduplication problem. This inflates your attribution and misleads the algorithm about what is actually converting.
If you are scaling Meta spend without fixing your tracking signal first, you are asking the algorithm to optimise a campaign with a broken compass. More budget does not fix bad signal. It accelerates bad decisions at higher cost.
What This Looks Like in Practice
A drinks brand I worked with was spending 18k per month on Meta with a reported 3.1x ROAS. Their Shopify showed 340 orders per month from Meta traffic. Their Events Manager showed 198 Purchase events. Their EMQ score was 4.2. They had CAPI turned on via Shopify native but were not passing email with the server-side events because a developer had set up a custom checkout flow that bypassed Shopify's standard data layer.
We switched to a third-party enrichment tool, fixed the email identifier pass-through, and added phone number from their Shopify customer profiles. Within three weeks, their EMQ moved from 4.2 to 8.1. Meta-attributed purchases in Events Manager climbed from 198 to 291 per month at the same spend level. Cost per purchase dropped from 91 to 62. Their actual order volume had not changed. What changed was how much of it Meta could see and learn from.
The reported ROAS went from 3.1x to 4.4x, but that is partly a tracking improvement, not just a performance improvement. The real metric that mattered was cost per purchase, which dropped 32%. That is real money.
Growth Audit
Find Out How Much Conversion Data You Are Losing
I will check your Events Manager, EMQ score, and pixel setup against your Shopify order data, identify your tracking gap, and give you a clear action plan to fix it. No pitch deck. No fluff. Just the numbers and what to do.
Book Your AuditFrequently asked questions
What is the Meta Conversions API and why do DTC brands need it?
The Meta Conversions API sends your conversion data directly from your server to Meta, bypassing the browser entirely. DTC brands need it because iOS privacy changes and ad blockers now prevent 50-70% of conversion events from reaching Meta via the standard browser pixel. Without CAPI, Meta's algorithm is optimising on incomplete data, which inflates your reported ROAS and degrades targeting over time.
What is a good Event Match Quality score on Meta?
Meta labels EMQ scores as Poor (under 4), OK (4-5.9), Good (6-7.9), and Great (8+). A score below 6 means your conversion data is not matching effectively to Meta user profiles. The target for DTC brands is 7 or above, with 8+ being the ceiling worth pursuing. Sending hashed email addresses from your server-side events is the single biggest lever for improving EMQ.
Does Shopify's native Meta CAPI integration work?
Shopify's native CAPI toggle works and is a solid starting point. It takes around 15 minutes to activate and handles deduplication automatically. However, it only sends what Shopify already has in its data layer, does not enrich or validate identifiers, and has no fraud filtering. EMQ scores typically sit at 6-7 with native. Third-party tools recover 20-40% more conversions and achieve EMQ of 9+. Native is fine under 50k per month. Above that, a dedicated tool pays for itself quickly.
Do I need to run both the Meta pixel and the Conversions API?
Yes. CAPI does not replace the pixel. The pixel captures browser-side events (page views, add to cart, begin checkout). CAPI enriches and fills the gap on the purchase event where browser blocking is worst. Running both with event deduplication is the standard setup. Brands running pixel plus CAPI see an average 13% improvement in cost per result compared to pixel alone.
How long does it take to see ROAS improvement after setting up CAPI?
Data quality improves within 48-72 hours. Performance improvements in ROAS and cost per purchase typically emerge within 1-2 weeks as Meta's algorithm re-trains on the enriched signal. One documented case showed a 38% drop in cost per purchase within two weeks of implementation, representing over 60% ROAS improvement.
What data should I send through Meta CAPI to maximise Event Match Quality?
The most impactful identifier is a hashed email address (SHA256). After email, the next most valuable are phone number, first name, last name, city, country, and zip code. Sending all available identifiers consistently can move an EMQ score from 5 to 8+ in a single implementation. Never send unhashed personally identifiable information.
About the author
Caner Veli built Liquiproof from zero to 3,000+ global retailers in under 6 years. He now helps DTC and CPG brands fix broken growth engines and scale 2x-15x in 90 days.