Case study 03 / Decision-ready dashboards
North-star KPI command centre
Most dashboards fail by measuring everything. This one starts from a single north-star KPI, decomposes it into an exact driver tree, and attributes every change to the factor that caused it — so the number comes with an action.
Anonymised for confidentiality — no dashboard screenshots, figures or client data are shown.
01 / The question
Which number should the business actually manage?
A dashboard with fifty metrics does not create clarity. It creates choices. Teams optimise whatever is easiest to move — traffic, revenue, units, a local efficiency — and the headline can still get worse. The business loses itself in the trivial and misses the grand picture.
The design question was therefore not "what can we measure?" but "what is the one number that represents the outcome, and what exactly moves it?" Everything else should be a drill-down from that.
02 / The North Star
Pick one metric that can't be gamed by a side door.
The North Star chosen was gross profit per active account. It blends customer value and profitability in one number: it cannot be improved by chasing low-margin revenue, and it cannot be improved by growing the account base with accounts that never buy.
Critically, it is not a slogan metric. It decomposes exactly:
GP per active account = Orders / account × Avg order value × Gross margin %
And at the level of total profit:
Total gross profit = Active accounts × Orders / account × Avg order value × Gross margin %
Because the identity is multiplicative, any movement in the headline is attributable to a specific factor. There is no residual "other" bucket to hide in.
03 / From change to cause
A headline move is decomposed into effects that add exactly.
When the North Star moves, the dashboard does not just show a red or green arrow. A waterfall attributes the change to three effects — frequency, basket and margin — which sum exactly to the movement. If frequency rose but margin thinned and baskets shrank, the dashboard can say which drag outweighed which lift.
That is the difference between reporting and diagnosis. The leadership conversation shifts from "the number is down" to "the number is down because of this factor, and that factor has an owner and a next action."
04 / Drill-down and action
Every driver has a filter set, a breakdown and an owner.
Each factor in the tree has its own page with the same Channel / Region filters, plus a break-down dimension: member or store, customer segment, category, supplier, or promo vs full price. The point is to move from "margin fell" to "margin fell in this category, in this channel, for this reason" — and then to an action plan.
- Active accounts — split into New + Reactivated − Churned, because the count lags and the flow leads.
- Orders / account — an early churn signal when accounts start drifting.
- Average order value — separates cross-sell breadth from price movement.
- Gross margin % — decomposed into price, volume, cost and mix.
Supporting views followed the same logic: retention and risk, campaign pre/during/post/prior-year windows, and pricing recommendations with margin-floor guardrails. Same filters, same dimensions, same story.
05 / What changed
Reporting became a conversation about causes and actions.
- One north-star number replaced a wall of unrelated metrics.
- Driver changes were attributable rather than anecdotal.
- Every factor had a drill-down path to the segment causing it.
- The dashboard pointed to the culprit KPI and the action plan, not just the result.
06 / Limitations
What this framework is — and isn't.
The driver tree is only as good as the underlying data model: margin decomposition depends on accurate cost allocation, and account activity depends on clean identity matching. The North Star is a lagging outcome — the flow metrics lead it. Multiplicative identities explain what moved, not why people behaved that way, so the drill-down still needs judgement. No client figures, screenshots or data are published here.