Why your ad numbers don't match your bank account

Mizan Guide

Why your ad numbers don't match your bank account

Open your Meta Ads Manager right now. Look at the purchase count for the last 7 days. Now open Google Ads and look at the same period. Now open Shopify and check your actual orders.

Three different numbers. Possibly wildly different. Your bank account — the one that actually receives the money — agrees with Shopify, not with Meta or Google.

This isn't a glitch. It's how attribution works, and understanding it is the single most important thing you can do for your advertising.


What "attribution" actually means

Attribution is the process each ad platform uses to claim credit for a sale. When someone buys from your store, both Meta and Google ask: "Did this person interact with one of our ads before buying?" If the answer is yes, they count it as their conversion.

The problem is that both platforms ask this question independently. They don't talk to each other. So if a customer saw your Meta ad on Monday, searched your brand on Google on Wednesday, and bought on Thursday — both Meta and Google claim that sale. Your store recorded one order. The platforms recorded two.

This is called double-counting, and it's not a bug. It's a feature of how each platform's attribution model works. Meta takes credit because the person saw their ad. Google takes credit because the person clicked their search result. Neither platform is lying, exactly. But neither is telling you the whole truth.


Why the numbers are always inflated

Three structural reasons your platforms will always overclaim:

Each platform gives itself a generous credit window. Meta's default attribution window is 7-day click and 1-day view. That means if someone sees your ad (even without clicking) and buys within 24 hours, Meta claims credit. If someone clicks your ad and buys within 7 days, Meta claims credit — even if they came back through a Google search, a direct visit, or a WhatsApp link from a friend. Google has similar windows. Both platforms are taking credit for sales that may have happened anyway.

View-through conversions inflate Meta's numbers significantly. A "view-through conversion" means someone saw your ad in their feed, didn't click it, but bought later. Meta counts these by default. On a busy store, this can inflate Meta's reported conversions by 30-50% compared to click-only attribution. Most merchants don't realize these are included in their numbers.

Neither platform accounts for the other. Meta doesn't know the person also clicked a Google ad. Google doesn't know the person also saw a Meta ad. Each platform attributes the full sale to itself. On stores running both Meta and Google ads, this overlap typically adds 10-40% phantom conversions to your combined platform numbers.


The only number you can trust

Your Shopify orders. Specifically: the number of orders Shopify recorded, multiplied by the actual revenue those orders generated, minus refunds and chargebacks.

Shopify doesn't have an attribution model. It doesn't try to figure out which ad caused a sale. It records what happened: someone placed an order, they paid this amount, the money arrived. That's the number that hits your bank account.

The gap between what your ad platforms claim and what Shopify recorded is the single most important metric in your advertising. It's what Mizan's dashboard shows you.


How to check this yourself right now

You don't need any tool to see the gap. Here's how to check:

Step 1: Open Meta Ads Manager. Set the date range to "Last 7 days." Look at the "Purchase" column and the "Purchase Conversion Value" column. Write both numbers down.

Step 2: Open Google Ads. Set the same date range. Look at "Conversions" and "Conversion value." Write both numbers down.

Step 3: Open Shopify Admin. Go to Analytics → Reports → Sales over time. Set the same 7-day period. Note the total orders and total sales.

Step 4: Add up the platform numbers. Meta's claimed purchases + Google's claimed conversions = total platform-claimed sales. Compare that to Shopify's actual order count.

If the platform total is higher than Shopify — and it almost always is — that's your attribution gap. The bigger the gap, the more phantom conversions your platforms are claiming, and the more distorted your marketing decisions are.


Why your agency won't tell you this

Most agencies report on platform metrics because that's where the numbers look good. A 4x ROAS in Meta Ads Manager is an easy story to tell a client. The reconciled number — actual Shopify revenue divided by actual ad spend — is lower, and that's a harder conversation.

Some agencies genuinely don't know about the attribution gap. The technical understanding required to explain cross-platform double-counting isn't common in the GCC freelancer market, where the barrier to entry for calling yourself a digital marketing agency is essentially zero.

Others know and don't mention it. If you're paying an agency based on "results" and the results are measured by platform-reported numbers, the agency has no incentive to show you the real numbers.

This doesn't make all agencies bad. But it means you need to ask: "Are you reporting Meta's numbers or Shopify's numbers?" If the answer is Meta's, ask why.


What correct measurement looks like

You don't need sophisticated measurement to make better decisions. Here's the framework:

Daily decisions: Use platform metrics for what they're good at — relative comparisons within a single platform. If Creative A has twice the click-through rate of Creative B in Meta, Creative A is probably better. Platform metrics are useful for direction, not for magnitude.

Weekly decisions: Compare platform-reported revenue to Shopify-recorded revenue every week. Track the gap over time. If the gap is growing, something in your tracking or attribution settings has changed and needs investigation.

Monthly decisions: Calculate your real ROAS: actual Shopify revenue attributed to ad-driven orders divided by total ad spend across both platforms. This is the number that tells you whether your advertising is profitable. Everything else is a proxy.

Quarterly: If you're spending enough (generally AED 20,000+/month across both platforms), consider running a holdout test: turn off one platform in one market for 4-6 weeks and measure what happens to total revenue. This is the only way to measure true incrementality — what each platform actually adds that wouldn't have happened otherwise.


What Mizan does about this

Mizan automates the reconciliation. The dashboard pulls data from your Meta and Google ad accounts and from your Shopify store, and shows them side by side: platform-claimed conversions vs. Shopify-recorded orders, platform-claimed revenue vs. actual revenue.

You don't have to build spreadsheets or log into three dashboards. The truth is on one screen, updated automatically.

But reconciliation alone isn't enough. Mizan also audits the tracking infrastructure that produces these numbers — because if your Meta Conversions API is misconfigured, or your Google Merchant Center feed is incomplete, or your event deduplication isn't working, the numbers are even more wrong than they need to be. Fixing the plumbing doesn't eliminate the attribution gap (that's structural to how platforms work), but it makes the gap smaller and the numbers more reliable.