Why your dashboards disagree
Brand owners need clarity when it comes to their numbers, not confusion. Here's the crux and how to fix it...
The first week inside a brand I’ve bought, I ask for one number. What did we do in revenue last month.
I’ve never once gotten one number.
I get two. Sometimes three, if someone thinks to mention the tax return.
And there’s always a pause first, while they decide which one to give me.
That pause is what I’m listening for.
None of those numbers is wrong. That’s the part worth understanding, and it’s why this never gets fixed on its own.
Take the simplest question in your business. Is shipping revenue?
A customer pays you $48 for product and $7 to ship it. Your store reports $55. Your P&L probably shows $48, with the $7 sitting against fulfilment cost. Both are defensible. But if your ad buyer is calculating return on $55 while your bookkeeper reports $48, two people are optimizing against different denominators and neither knows it.
Now do that four more times.
Sales tax is not yours. You collected it for the state and you owe it back. It sits as a liability, not income. It also lands inside plenty of marketplace and platform totals, so it inflates any total nobody has checked.
A gift card sale is not revenue. Money arrived, but you created an obligation. The revenue happens later, when someone redeems it. Count the sale and the redemption and you have booked the same dollar twice.
Discounts change the headline. Shopify will show you gross sales, then discounts, then returns, then net sales, then a total that adds shipping and tax back on. All of those are on the same screen. Most of us quote whichever one we happened to be looking at. And gross sales counts pending, cancelled and unpaid orders, so the biggest number on that screen includes money that was never going to arrive.
Returns move backwards. Some systems subtract a refund from the month it was issued. Others reach back and reduce the month of the original order. Same refund, two different Novembers, and last quarter’s number changes after you already reported it.
Amazon arrives net. Settlements come to you after Amazon has taken its cut, so revenue on that channel is a different animal from revenue on your store until you gross it back up. Put them side by side without doing that and your best channel looks like your worst.
It gets worse…
Not one of these systems is behaving badly. Each is correct for the job it was built to do. Shopify is a store. QuickBooks is a tax record. Meta is an ad platform.
You are the only one asking a question that crosses all three. And you are the only one who gets to decide what the answer should mean.
The new plan: decide the definitions once, write them down, and put them somewhere every number comes from.
That’s all a data warehouse is.
There’s nothing to log into. It’s a place your data lands from every system you run, where you say what a sale is, when it counts, whether shipping is revenue, and how a refund behaves. Every report downstream inherits those decisions, so your Monday number and your quarterly number and your margin math are finally the same number.
Ten years ago that was a six-figure project with a consultant attached. I run it now for under $50 a month.
I wrote the long version on the site: what BigQuery is and why it’s different from the database behind your store, what a semantic layer does, and how a definition turns into a number every report inherits.
Why don’t your ecommerce sales numbers match?
Here’s why this matters…
Brands get bought on numbers. When I’m looking at buying one, the first thing I do is try to reconcile exactly these sources against each other. What I find moves what I’m willing to pay.
Nobody lied to me. The definitions just never got settled, so a stranger settles them during diligence, and a stranger settles them conservatively.
If a buyer asked you for last month’s revenue tomorrow, which system would you open?
Reply and tell me which one. I’ll tell you what it’s including that you haven’t counted.
— Deacon Bradley
P.S. Both free skills I published do this in miniature. Each one states its definition of contribution in a single plain sentence, then uses that same definition in every number it hands back. Same idea, at the scale of one report: deaconbradley.com/tools

