Your Platforms Disagree Because Their Revenue Is Not Your Revenue
Meta counts gross, Shopify reports net of some things and not others, and the finance sheet has a fourth number. Defining revenue once, tax, shipping, discounts, refunds, is the unglamorous fix under every attribution fight.
The monthly meeting has four revenue numbers on the table and every one of them is defensible. The ad platform claims the most, because it counts the order value it touched, gross, on its own attribution window. Shopify reports less. The analytics tool reports a third figure. Finance, net of refunds and tax, reports the least and trusts only itself.
Teams try to fix this with a better attribution model. The prior problem is dumber: the word revenue names four different arithmetic definitions across the four systems, and until a store picks one definition for channel decisions, model arguments are theatre. This post itemises the differences that account for nearly all of the gap, and how to document a house definition.
The four usual suspects
Tax first. Ad platforms typically receive the order total the store sends them, which often includes tax, while Shopify's total sales figures and finance reporting treat tax as money collected for the state, not revenue. Shipping second: some feeds send shipping in the conversion value, some do not, and a store offering free shipping over a threshold will watch platform revenue wobble with its own shipping policy. Discounts third: whether the conversion value is pre or post discount code depends on the integration, and a heavy promo month widens the gap automatically. Refunds fourth: platforms rarely subtract them, or subtract on the refund date in a different period, while finance nets them against the original sale.
Add the timing difference, platforms counting on click or impression date, the store on order date, and a calendar month comparison that never reconciles is fully explained without anyone's tracking being broken. The overlap of claimed conversions across platforms then inflates the total further: add every platform's claimed revenue for a real store and a figure like 128 percent of actual sales is unremarkable, because the same order is being counted by everyone who touched it.
Write the house definition down
Pick the number channel decisions will use, for most stores that is Shopify order value net of discounts, excluding tax, with a stated shipping treatment and a stated refund window, and publish it in the same document as your attribution model and window. Then teach the reconciliation as a monthly ritual: platform claims on one side, house revenue on the other, and the expected gap explained by the four suspects rather than investigated as an anomaly each month.
The payoff is that arguments move to the question that matters. Whether paid social causes sales is worth a holdout. Whether its dashboard number matches finance is a definitions question that was settled in the document, and settled questions stop eating meetings.
Related reading: Glossary, About, Attribution Windows: Why 1 Day View and 7 Day Click Never Agree.
Frequently asked questions
Why do ad platforms claim more revenue than the store made?
Two reasons compound: each platform counts conversions on its own definitions, often gross of tax or refunds and on click date rather than order date, and multiple platforms claim the same order. Summed claims exceeding actual revenue, sometimes by a quarter or more, is structural, not evidence of a broken pixel.
What revenue definition should we use for channel decisions?
One, written down: typically order value net of discount codes, excluding tax, with an explicit choice on shipping and on how refunds within a set window are handled. The exact choice matters less than using it consistently across channels and months.
Does Shopify revenue match finance revenue?
Not automatically. Shopify's sales reports have their own treatments of tax, shipping, returns, and gift cards, and finance usually reports net of refunds and excluding tax collected. Reconcile the two once, document the bridge, and reuse it instead of rediscovering the differences monthly.
Should we send platforms net or gross conversion values?
Send the value that matches your house definition if your integration allows it, usually net of tax, so platform optimisation and your reporting at least argue about the same number. Where the integration sends a fixed definition, record what it sends in the attribution document.