Why Meta and Shopify never agree
How to read two contradictory sales numbers without believing either one, and the monthly reconciliation that tells you which to trust.
Every month, somebody opens two tabs and finds two different businesses. The ad platform says it drove ninety sales. The store says it took fifty orders in total. Nobody is lying, and the difference is not a bug you can file.
This matters more than it sounds. Almost every bad budget decision we see starts with somebody treating one of these numbers as fact and cutting or scaling against it. Understanding the mechanism takes about ten minutes and it permanently changes how you argue about spend.
Why do the two numbers differ at all?
Because they are answering different questions. The ad platform is answering “of the people I showed this ad to, how many bought something afterwards?” Your store is answering “what was the last thing this person clicked before they paid?” Those questions have different answers for the same customer, and the same customer can be counted by both, by one, or by neither.
Consider one buyer. She sees a reel on Tuesday, does not tap, searches your brand name on Friday, clicks the top result and buys. The ad platform sees an impression followed by a purchase and claims it. Your store sees a search engine and credits that. One sale, two claims, and both systems are working exactly as designed.
| The ad platform | Your store | |
|---|---|---|
| Question it answers | Did someone I advertised to buy? | What did they click last? |
| Evidence it uses | Its own record of who saw the ad, plus a signal from your site | The referring link on the visit that converted |
| Counts views with no click | Yes, inside its view window | Never |
| Credit for one sale | Can be claimed by several campaigns at once | Goes to exactly one source |
| Blind to | Anyone it could not match back | Everything that happened before the final click |
What is an attribution window, in plain English?
A window is how long a platform is willing to take credit for something after the person saw or clicked an ad. Jon Loomer’s 2026 guide to Meta ads attribution notes that Meta’s default is a seven-day click and a one-day view — so a click today and a purchase six days from now is still a Meta sale in Meta’s report.
Your store keeps a longer memory but a stricter rule. Shopify’s own marketing reports documentation describes crediting an order to the most recent non-direct click within the past thirty days, with no setting to change that period. So the store looks back further and still hands the whole sale to one link.
Read those two rules together and the overlap gets ugly. A person who clicks an ad, leaves, and returns eleven days later through an email is a Meta sale for six of those days and an email sale in your store forever. Same money. Two owners.
Does a view really count as a sale?
It counts as a claim, which is not the same thing. A view-through conversion means someone was shown your ad, did not touch it, and bought within a day. Sometimes the ad genuinely did the work — a reminder is a real thing. Sometimes the person was going to buy anyway and the platform happened to be in the room.
The practical rule: view-through credit is most believable when you are advertising to strangers who had never heard of you, and least believable on retargeting, where you are showing ads to people already halfway to the checkout. If your reported sales collapse when you switch the report to clicks only, most of your credit was proximity rather than persuasion.
What does blended measurement actually fix?
Blended measurement stops the argument by refusing to have it. You take total revenue for the period, divide by total advertising spend for the period, and ignore who claimed what. No windows, no matching, no per-campaign credit. One number, checkable against your bank.
It fixes the thing that matters — whether the business made money — and it is deliberately useless at the thing everyone wants, which is knowing which advert did it. That trade is correct at the level where budget decisions actually happen. You do not need to know which of five creatives earned a specific order. You need to know whether last month’s spend produced more money than the month before at a similar cost.
Then you use the platform for what it is genuinely good at: comparing its own things against each other. Within one account, over one week, one creative beating another is real information, because both were measured by the same instrument. Comparing across instruments is where people go wrong.
How do I run a monthly reconciliation?
This takes about twenty minutes and it is the single most useful recurring habit we install with a new client. Do it on the same day every month, in a sheet you keep, so the trend is visible.
- Write down total revenue for the calendar month from your store’s own orders report. Not the ad platform. The store.
- Write down total advertising spend across every platform, including anything paid to creators, and any fee you pay us or anyone else to run it.
- Divide revenue by spend. That ratio is your blended return. Compare it only to your own previous months.
- Now write down what each ad platform claimed for the month, added together.
- Divide the total claimed by the actual revenue. Call that the overclaim ratio. It will be above one.
- Track the overclaim ratio month to month. Its level does not matter. Its stability does.
A stable overclaim ratio means your measurement is behaving consistently, so month-on-month comparisons inside the platform are trustworthy even though the absolute numbers are not. A ratio that lurches means something structural changed — a tracking break, a new channel, a checkout change, a consent banner — and you should find out what before you act on any campaign report.
One more habit worth the trouble: ask new customers, at checkout, where they heard about you. The answers are messy and people misremember. They are still the only evidence in your business that comes from a human rather than from a company with an interest in the answer.
When is the gap fraud rather than attribution?
Attribution explains a gap. It does not explain every gap, and there is a point where the honest answer is that somebody is stealing from you. The pattern to watch for is not size, it is shape.
- Claimed sales rise smoothly while store revenue is flat or falling, month after month, with no seasonal explanation.
- A single placement or publisher accounts for most of the claimed sales and almost none of the sessions your store recorded.
- Clicks arrive in even quantities across every hour including the middle of the night, which real shopping never does.
- Sessions from the traffic last a second or two, at scale, with a bounce rate close to total.
- The claimed sales are overwhelmingly view-through, from a partner network rather than the main feed.
One of those is noise. Three together, holding for a month, is a spend problem rather than a measurement problem. Exclude the placement, watch whether real revenue changes, and take the answer seriously either way. If revenue does not move when you cut it, you were paying for a report.
What we cannot fix, and will not pretend to
Our own reporting carries this gap too. When we tell a client what came back per pound, that figure is measured where the sale actually closes and reported against the target we agreed — and it is still an estimate built on instruments that disagree with each other. Anybody selling you exact, sale-by-sale attribution across platforms is selling you a feeling.
What is available is discipline: one number you can check against your bank, a platform used only to compare its own things, a reconciliation you actually run, and a rule agreed in advance about what makes you cut. That is less satisfying than a dashboard. It is considerably harder to be wrong with.
Neither tab is the truth. The bank is the truth. Everything else is a hypothesis with a logo on it.