Why Your Shopify Revenue Doesn't Match Your Ad Platform's Reported Sales

Shopify, Meta, and Google Ads will rarely report the same revenue number, and that's expected rather than broken. Shopify records every real order; ad platforms report conversions inside their own attribution windows, which can include view-through credit and windows up to 90 days, so the same sale can be legitimately claimed by more than one platform. Use Shopify as your revenue source of truth, each platform's own numbers for in-platform optimization, and blended MER for cross-channel decisions.

You open Meta Ads Manager. It says 142 purchases this week. You check Google Ads. It claims 90. You open Shopify. It shows 118 real orders. Three numbers, and the uncomfortable truth is that all three can be correct at once, because each one is measuring something slightly different.

Why Every Platform Reports a Different Number

Shopify records every actual order that happened, full stop. Meta and Google instead report conversions inside their own attribution window, using their own rules for which touchpoint gets credit. None of these are lying. They're answering different questions.

Attribution Windows Don't Match Between Platforms

Meta's default attribution window is 7-day click, 1-day view, meaning a purchase gets credited to Meta if it happens within seven days of a click, or within one day of someone merely seeing (not clicking) the ad. Google Ads commonly uses a data-driven attribution model with a window that can extend up to 90 days. A single customer who saw a Meta ad, later clicked a Google search ad, and purchased a week after that can get claimed as a conversion by both platforms at once, while Shopify only ever records the one real order.

This is the single biggest source of the mismatch: it isn't double-counting in the technical sense, it's two different accounting systems both taking legitimate credit for the same sale under their own rules.

View-Through Conversions Inflate Ad Platform Numbers

Meta counts a sale as attributable if the customer merely saw an ad and purchased within the view-through window, even without ever clicking it. Shopify has no equivalent concept. It only ever records the transaction itself, not which ad impressions a customer happened to scroll past beforehand. Switching Meta's attribution setting from the default 7-day click, 1-day view down to 1-day click only can drop reported conversions by a large margin overnight, not because anything about your store changed, but because you changed which touchpoints count.

Purchase Value Definitions Differ Too

Even when the conversion count roughly lines up, the dollar value often doesn't, because platforms differ in whether they include tax, shipping, and discounts in the reported value. A stable, permanent gap between Shopify's revenue and an ad platform's reported purchase value is very often just this: the platform's Purchase event is configured to pass a different number than Shopify's own net sales figure. Configuring the event value to match product subtotal minus discounts, excluding tax and shipping, is usually enough to close a gap that looks like a tracking problem but is actually a configuration mismatch.

Currency and Time Zone Settings Quietly Cause Mismatches

If your Shopify admin, ad accounts, and reporting spreadsheets aren't all standardized to the same time zone and base currency, day boundaries shift and totals stop lining up even when every individual order is tracked correctly. This is a common, easy-to-overlook cause worth ruling out before assuming anything is broken at the tracking layer.

Refunds and Cancellations Move at Different Speeds

Shopify updates an order's value immediately when a refund or cancellation happens. Ad platforms don't always reflect that retroactively in the same reporting period, which can leave a temporary gap between what Shopify shows as net revenue and what an ad platform reported at the time of the original purchase.

So Which Number Should You Actually Trust?

Use Shopify as your financial source of truth. It's the only one of the three recording actual transactions rather than modeled attribution. Use each ad platform's own numbers for optimizing within that platform, since that's the data its bidding algorithm is actually using. For the cross-channel question, the one that actually matters when deciding where to spend the next dollar, use blended MER: total Shopify revenue divided by total ad spend across every channel. It sidesteps the attribution overlap entirely, because it's built from numbers you control directly rather than any platform's self-reported credit-claiming.

A Simple Weekly Reconciliation Habit

Confirm your time zone and currency settings match across Shopify and your ad accounts. Spot-check five recent orders against what each platform reports for that same window. Re-check whether anyone recently changed an attribution window setting in Ads Manager. Document which baseline you're using (Shopify net revenue, blended MER) so the next person who asks "why don't these numbers match" has an answer ready instead of a fresh investigation.

The Short Version

Your Shopify revenue and your ad platforms' reported sales will never match exactly, and chasing an exact match is the wrong goal. The right goal is understanding why they differ well enough to explain the gap in one sentence, and having a single blended number you trust for cross-channel decisions instead of averaging three platforms that were never trying to agree with each other in the first place.

FAQ

Why does Shopify show different revenue than Meta or Google Ads?

Because each platform measures something different. Shopify records every actual order. Meta and Google report conversions inside their own attribution windows, which can include view-through credit and windows up to 90 days, so the same sale can be legitimately claimed by more than one platform at once.

Which number should I trust: Shopify, Meta, or Google Ads?

Use Shopify as your source of truth for actual revenue, since it's the only one recording real transactions rather than modeled attribution. Use each ad platform's own numbers for optimizing campaigns within that platform. For cross-channel budget decisions, use blended MER (total Shopify revenue divided by total ad spend) instead of trying to reconcile the platforms to one another.

Why does changing Meta's attribution window change my reported conversions so much?

Meta's default window (7-day click, 1-day view) counts purchases from people who merely saw an ad, not just those who clicked it, within a fairly wide window. Narrowing that to a 1-day click-only window removes view-through credit and multi-day click credit, which can cut reported conversions substantially without any actual change in sales.

How do I fix a Shopify to ad platform revenue gap caused by tax and shipping?

Check how each ad platform's Purchase event value is configured. Setting the value to match product subtotal minus discounts, excluding tax and shipping, so it aligns with Shopify's net sales definition usually closes a stable, dollar-for-dollar gap that isn't actually caused by a tracking failure.