Meta Ads
This is a sharper problem than Meta and Shopify simply disagreeing on revenue. If Ads Manager shows Purchase events for a period where Shopify shows zero orders, that's almost always a measurement configuration issue, not evidence of fake or stolen sales. Work through the checks below in order — the cause is usually one of a short, specific list.
Open Events Manager and look at exactly which event is being counted as a “sale” in the report you're reading. It's common to have a custom conversion or a differently-named event (sometimes left over from an old setup or a previous agency) that's reporting under a column labeled “Purchases” in a custom report, without actually being Meta's standard Purchase event tied to real order value. Click into the individual events and check what they're actually firing on, not just what the report column is called.
Stores that have gone through a rebuild, a new agency, or a platform migration sometimes end up with more than one Pixel installed — an old one still embedded in a legacy theme section, or a test Pixel from development that never got removed. If a test Pixel fires on a staging or duplicate version of the store, or a leftover Pixel fires on pages that don't actually process real orders, it can report purchases that have nothing to do with the live store's Shopify order data.
If you recently enabled the Conversions API, reconnected the Pixel, or fixed a broken integration, Meta can sometimes attribute a batch of older, real orders back into the current reporting window depending on how the events were timestamped and sent. This can look like new sales appearing out of nowhere. Cross-check the order IDs or timestamps in the event data against Shopify's actual order dates before assuming the sales are fabricated.
Meta Ads Manager and Shopify use different default attribution windows and time zones. Ads Manager may be crediting a purchase to the date the ad was clicked rather than the date the order happened, while Shopify records the order on the date it was placed. A purchase that's a day or two apart between the two systems isn't missing — it's sitting in a different bucket. Widen the Shopify date range by a few days on each side before concluding the order genuinely doesn't exist.
If the same Meta Pixel ID is installed on more than one domain — a staging site, a regional storefront, a wholesale site, or an old domain that still resolves — purchases from any of those can land in the same ad account's reporting. From inside Ads Manager this looks like one number. From inside a single Shopify store, it can look like sales that don't exist, because they happened on a different store entirely.
If the Pixel or CAPI event fires from a page that isn't actually Shopify's checkout — a landing page builder, a separate funnel tool, an upsell app with its own hosted checkout, or a payment link sent manually — the purchase can be real, but it never creates a Shopify order at all, because the transaction didn't route through Shopify. This is worth ruling out on stores running third-party funnel or upsell tools alongside the main Shopify checkout.
If Meta, Google and Shopify are telling you different things, send us an inquiry — we can review the setup and help determine whether it's advertising performance, your website, tracking, or attribution.