28th May, 2026
A KPI moves. Contribution margin is down 12% week-on-week, and the instinct is immediate: open the acquisition report. Then the channel breakdown. Then email performance. Then a quick look at the AOV trend, the discount report, last week's creative, the GA4 funnel. An hour later the dashboard is still open across six tabs, you've found four things that look slightly off, and you haven't made a single decision.
This is analysis paralysis, and it is not a data problem. The brands it happens to usually have plenty of data, often more than they can use (a growing problem today). What they're missing is a method. A repeatable way of deciding, when something moves, which report to open first and which to ignore entirely. Without that method, every performance question turns into an open-ended search across everything you track, and open-ended searches don't end in decisions. They end when you run out of time.
The fix is a framework that does the opposite of scattering. One equation that defines what you're actually trying to grow, three pillars that everything maps back to, and one workflow you run every single time a number moves. This article walks through it. It's the same framework we build into the reporting layer for the brands we work with, and it's the difference between a twenty-minute analysis that ends in an action and an hour that ends in a shrug.
Start with one equation, not forty metrics
Most reporting has no hierarchy. Forty-plus metrics sit side by side on a dashboard with nothing telling you which one is the destination and which ones are just inputs. So when something moves, you have no structured place to start, and you start everywhere.
The framework begins by collapsing all of that into a single equation. Ecommerce performance is the product of three things, multiplied together:
new customers × order frequency × order value (profit) = contribution margin
Contribution margin is the primary KPI to improve, because it's the only number that combines acquisition, retention and unit economics into a single output. Revenue alone hides discounting. ROAS alone hides repeat behaviour. Contribution margin is what's actually left at the end, and it's the number every other metric should ultimately ladder up to.
The power of framing performance this way is that it reframes every question. No matter how a problem is phrased, "why is margin down", "why did last week feel soft", "what's going on with the numbers", it becomes the same question: which of the three pillars is moving, and why? That single reframe is what stops the scatter before it starts.
The three pillars
Everything in your reporting maps to one of three pillars, and each answers a different question about the business.
Customers is how many new customers you acquire and how efficiently you convert traffic. This is the acquisition pillar, and it's where channel, campaign and creative performance live.
Frequency is how often customers come back, measured in cohorts over time. This is the retention pillar, and it's where the real economics of a DTC brand at the £2M to £20M stage are usually won or lost.
Order value is the value and profitability of each order, driven by product mix and discounting. This is the unit economics pillar, and it's the one most likely to move quietly without anyone noticing until margin slips.
Three pillars is a deliberate constraint. It's few enough to hold in your head while you're looking at a moving number, which means you can always answer "which pillar is this?" before you decide where to look. The discipline isn't in knowing the pillars exist. It's in refusing to investigate anything until you've worked out which one is responsible.
The workflow: four steps, every time
When a KPI moves, you run the same four steps in the same order. Start broad, narrow down, and recommend an action. The order is the whole point.
Observe the change. A KPI has moved. Note the direction and the magnitude before you do anything else. "Margin is down" is not the same as "margin is down 12%", and the magnitude tells you whether this is worth an analysis at all.
Identify the dominant pillar. Compare new customers, frequency and order value across the same period. There's almost always a single pillar responsible for the bulk of the change. That's your scope. Resist the urge to investigate the others until you've finished with the one that matters most.
Slice within the pillar. Once you've picked a pillar, narrow down through its hierarchy of dimensions, broad to narrow. For Customers that's channel, then campaign, then landing page, ad group, ad. The same logic applies to the other two. You're working down a metric tree, not scattering a search across it.
Recommend an action. A finding without a next step isn't an insight, it's trivia. Every analysis should end with a hypothesis to go away and validate. The action is the output. The chart is just the working out.
The principles that prevent paralysis
The workflow is the process. These are the rules that keep it honest, worth re-reading any time the data starts getting away from you.
Identify the driver. For any meaningful performance shift, one to two metrics and dimensions will typically account for around 80% of the movement. Investigating secondary drivers before you've found the primary one is the single most common cause of analysis paralysis.
Start broad, narrow down. Always start at the growth equation level. Then the dominant pillar. Then the dimension within it. Treat it like a metric tree you work down, not a search you scatter across.
Weight by volume, not by percentage change. A segment with 20 orders at £45 AOV is not a comparable signal to one with 1,500 orders at £40. Big percentage swings in low-volume segments are usually noise. When in doubt, lean towards the segments with more data behind them.
Every insight needs a recommended action. If you can't articulate what you'd do differently as a result, you haven't finished. The action is the output.
Match the metric to the question. Acquisition questions need new orders, not total orders. Retention questions need cohort metrics, not topline revenue. AOV questions need order-level data, not channel summaries. Picking the wrong metric is the second most common cause of bad conclusions, after weighting noise as signal.
A worked example
Suppose contribution margin has dropped 12% week-on-week. The temptation is to jump into every report and see what turns up. The framework says don't.
Compare across the equation. New customers are down 4%, repeat orders are flat, AOV is down 9%. The dominant driver is order value. Customers and frequency are in noise territory. Stop looking at acquisition reports entirely.
Slice within order value. Open the orders deep dive. Is this a product mix shift or a discount problem? Discount rate has jumped from 22% to 38%, and discount depth has gone from 14% to 19%. The mix of discounted versus full-price orders has shifted significantly.
Find the cause. Cross-check against campaign activity. A 25% off promo went out to a non-segmented email list on Tuesday. It pulled forward demand from full-price buyers who would have paid full price anyway.
Form a hypothesis. "If we exclude active subscribers from the next promo, we limit the hit to AOV, because those customers buy full-price on a regular cadence regardless." Then test it.
That's the whole loop. Twenty minutes, one driver, one action. No scatter, no six open tabs, no hour lost.
What success looks like
When you're operating this way, three things change.
Analysis gets faster, and it actually ends. Instead of opening every report and hoping something jumps out, you start at the equation, find the dominant pillar, and work down a single branch. Most analyses resolve in twenty minutes because you stopped giving yourself permission to investigate everything at once.
Decisions replace observations. Because every analysis is required to end in a recommended action, your reporting stops being a thing you look at and becomes a thing you act on. A dashboard full of metrics nobody acts on is just a screensaver. This framework turns it back into a decision tool.
And the conversations change. "I think something's off with the numbers" becomes "AOV is down 9%, it's discount-driven, the Tuesday promo is the cause, and here's what we change next time". The same data, the same dashboards, but a method on top of them that turns movement into meaning.
This framework underpins how we build reporting for the Shopify brands we work with, structured around the growth equation rather than dumping every available metric onto a screen. If you want to go deeper, the Crux analysis framework documentation breaks down the full metric tree for each pillar. And if your team is spending more time finding the signal than acting on it, drop me a message at matt@gocrux.io and I'll happily talk through how we'd approach it for your brand.
Analytics and Reporting

