Meta Conversions API on Shopify: a setup checklist
Last updated 3 November 2026
I go through the same checklist on every new account before I touch a single ad. The Conversions API (CAPI) is what keeps your purchase tracking working when ad blockers and browser privacy settings take out the Pixel, but it has a handful of settings that are easy to get wrong, and a wrong one can sit there unnoticed for months. Here’s what I check, in order.
Turn on Maximum data sharing in the Facebook & Instagram app
In Shopify, open the Facebook & Instagram app and find its data sharing setting. There are usually two or three levels; pick Maximum. This is what sends full order and customer details server-side through the Conversions API, rather than relying only on the browser Pixel. If this is set to a lower level, you’re missing data on every order, not just the ones blocked in the browser.
Confirm which dataset is linked to which ad account
This is the mistake I find most often, and it’s invisible until someone checks for it: the Conversions API is sending events correctly, but to a pixel or dataset that isn’t connected to the ad account actually running your ads. Everything looks like it’s working — Test Events shows purchases arriving — but Ads Manager never sees them, because it’s reading from a different ad account than the one the data is landing in. In Events Manager, open the dataset and check its connected ad accounts under settings; in Ads Manager, check which pixel/dataset is attached to your campaigns. They need to be the same one.
Verify your domain
In Business Manager, under Brand Safety > Domains, verify your store’s domain. Domain verification affects how Meta handles your events for iOS users and is required for some of the aggregated event controls below. If you’ve changed domains, moved to a custom domain from a myshopify.com one, or switched Business Manager accounts, it’s worth confirming this wasn’t missed.
Set up aggregated event measurement
Aggregated Event Measurement lets you configure up to eight events per domain, in priority order, for cases where Meta can’t fully observe a user’s journey. Make sure Purchase is included and ranked appropriately against events like Add to Cart and Initiate Checkout, since this directly affects which conversions get reported back for ad optimization when visibility is limited.
Check your event match quality score
In Events Manager, open the Purchase event and look at its Event Match Quality (EMQ) score. This reflects how much customer data — hashed email, phone, name, address — is being sent alongside each event. A low score usually means the Conversions API call is going out without enough customer data attached, which weakens both deduplication and Meta’s ability to match the event to a real person for optimization. Shopify’s own app should pass this automatically at Maximum data sharing; if your EMQ score is still low, something in the setup is dropping fields.
Run one test order
Use the Test Events tool in Events Manager and place a test order. Confirm a Purchase event arrives, that it's marked as server-side (or deduplicated against the browser event), and that the order value and currency match what you actually charged.
What to check every month
- Open the Overview tab and compare that month’s Purchase count against your Shopify order count, to catch drift early.
- Glance at the EMQ score again — it can drop if a theme update changes checkout fields or a new app interferes with the data being passed.
- Check Diagnostics in Events Manager for any new warnings Meta has started flagging.
- If you've added a new app that touches checkout or tracking, re-check that it isn’t firing its own competing Purchase event.
If you would rather have someone check it for you, the $150 audit covers this.