Sep 28, 2026 · Germán Muñoz Moreno, Co-founder
The 10 pieces of an ecommerce measurement stack, and what each one answers

What tools do I actually need to measure my ecommerce marketing, and what does each one do?
Measurement stacks tend to grow by accident. Someone buys a dashboard, someone else adds a pixel manager, a third person exports to a spreadsheet, and two years later the company owns four tools that answer the same question and none that answer three others.
Here are the ten layers, each with the question it exists to answer. I build one of them, and I have marked which so you can discount accordingly. The useful exercise is not to buy ten things. It is to write down which of these ten questions is genuinely unanswered where you work.
1. The store's order table
The question: what did I actually sell?
This is the only layer in the whole stack with no attribution model inside it. It does not depend on a window, a consent choice, a browser event firing, or anyone's definition of a channel. It is simply the list of sales that happened, and it comes free with running a business.
It is also the layer people skip past fastest, because it feels too obvious to count as measurement. Everything else on this list is making a claim about this list, which makes it the anchor whether or not anyone treats it as one.
2. The ad platforms' own reporting
The question: did my ad get credit for this?
Ads Manager and Google Ads are measurement tools and good ones, on one specific question: what happened inside that platform's own auction and attribution window. They are authoritative about their own spend, impressions, clicks and optimisation.
What they cannot be is a shared basis, because each one sees only its own touch and reports on its own clock. Two of them will each claim the same order, correctly, and neither has the information that would reveal the overlap.
3. Tag governance
The question: does the code actually fire, everywhere it should, with the values it should?
A tag manager belongs here, but the layer is bigger than the tool. It is the discipline of knowing which events exist, what parameters they carry, whether the purchase event fires on a checkout that renders off-domain, and whether anyone broke it in last Thursday's theme update.
This is the cheapest layer and the one that most often invalidates everything above it. A missing parameter on a purchase event costs more accuracy than any model choice will ever recover.
4. Web analytics
The question: what happened on my own site?
Which landing pages convert, where people abandon a funnel, how site search behaves, what a returning visitor does differently. This is first-party behavioural data about your own property and no ad platform has a view of it.
The failure mode is not using it. It is using it as the ledger. Its purchase count depends on a browser event that the same blockers which break your ad pixel also break, and its acquisition reports use a winner-takes-all model, so it can never reconcile against either the store or the platforms.
5. Server-side event delivery
The question: does the platform know about the sales the browser could not tell it about?
A conversions API sends the purchase from your server instead of the shopper's browser, which recovers the population the browser loses: ad blockers, tracking protection, an off-domain checkout, a tab closed on the confirmation screen.
It genuinely fixes those. It does not make any platform's claim verifiable, and reported conversions rising the week you install it is recovered reporting rather than new revenue. That distinction is where most of the disappointment with this layer comes from.
6. Identity resolution
The question: is this the same person?
A customer data platform lives here, and so does whatever logic decides that the guest checkout under one email and the account order under another belong to one buyer.
Skipping this layer does not remove the problem. It distributes it: every layer above resolves identity its own way, which is how three tools produce three different new-customer counts from one set of orders. It is the least visible layer and it silently sets the accuracy ceiling for the two most expensive ones.
7. Attribution and reconciliation
The question: which part of what the platforms claim can I verify against the sales I made?
This is the layer I build, so read the rest of this entry with that in mind.
Its job is to anchor on the order table, stitch each order back to the session and the click that produced it, and put every platform claim next to what the store actually recorded, including the part that cannot be reconciled and why. Done properly it produces a number you can defend in a budget meeting. Done badly it is a fifth opinion with better typography, which is a real risk in this category and the reason the questions worth asking a vendor are mostly about what they do when they cannot attribute something.
8. Incrementality testing
The question: did this spend actually cause these sales?
A holdout test withholds ads from a randomised group and compares outcomes. It is the only layer on this list that answers causation, and that includes mine: no attribution model of any kind can prove a sale would not have happened anyway.
The cost is real revenue, because a holdout group is customers you deliberately did not advertise to, and the output is one answer per experiment rather than a continuous read. Which is exactly why it complements attribution rather than replacing it: use the test for the large budget decision and attribution for the daily ones.
9. Media mix modeling
The question: what is the whole portfolio doing at a budget level?
MMM works top-down on aggregate spend and outcome time series rather than on individual events, which means it never needed user-level tracking and therefore survives signal loss and privacy changes better than anything else here.
It also cannot tell you a single thing about one order, and it needs a lot of history to say anything at all. Buying MMM expecting per-order answers, or attribution expecting portfolio answers, is the most common expensive mistake in this whole list.
10. Session replay and qualitative diagnosis
The question: why did this person leave?
Every numeric layer above can tell you that 60% of shoppers abandon at the shipping step. None of them can tell you it is because the shipping estimate appears below the address form on mobile, so the shopper sees a total they did not expect after typing for a minute.
This is diagnosis rather than measurement, and it is the layer that turns a number into a change someone can actually make.
What none of the ten answer
Worth stating plainly, because a stack map that implies full coverage is the dishonest kind.
None of these can attribute a purchase influenced by an ad that produced no click and no visit; the influence is real and the evidence does not exist. None can resolve a buyer who used a different email, a different device and paid with someone else's phone number. And none except the holdout test can separate the sales your ads caused from the sales that were going to happen anyway.
The measurable version of the goal is narrower than the marketing version, and knowing where the line is worth more than owning one more tool. A platform can legitimately resolve a buyer you never saw, but no platform can resolve an order that does not exist, and that asymmetry is the one thing in this entire stack you can check without buying anything.
Common questions
Do I need all ten layers?
No, and most companies should not buy all ten. The order table and the ad platforms' own reporting come free with the business. Tag governance and web analytics are cheap and non-negotiable. Everything above that depends on how much money is moving: at low spend, the honest answer is that a careful spreadsheet against your order table beats an expensive dashboard, and at high spend the reverse becomes true because nobody can keep the spreadsheet current.
What is the difference between attribution and media mix modeling?
Attribution works bottom-up from individual events and answers where a specific sale came from. Media mix modeling works top-down from aggregate spend and outcome time series and answers what the whole portfolio does at a budget level. MMM survives signal loss better because it never needed user-level data, and it cannot tell you anything about one order. They are complements and the common mistake is buying one expecting the other's output.
Is session replay part of measurement?
It answers a question none of the numeric layers can: why someone left. A funnel report tells you that 60% drop at shipping, and replay tells you it is because the shipping estimate appears after the address form on mobile. It is diagnosis rather than measurement, which is exactly why it belongs in the stack and why it cannot substitute for any layer above it.
Where does a customer data platform fit?
In the identity layer, and it is the layer most stacks skip. Its job is deciding that the guest checkout and the account order belong to the same person. Skipping it does not make identity go away, it just means every layer above resolves identity its own way, which is how three tools end up reporting three different new-customer counts from the same orders.
What order should I build this in?
Order table first, because it is the only anchor. Then tag governance, because everything above it depends on events firing correctly and this is where the cheapest wins live. Then server-side event delivery, since it recovers real sales the browser lost. Then reconciliation, once there is something worth reconciling. Incrementality testing last, because it costs real revenue to run a holdout and it is only worth that at meaningful spend.
