Replaying last year’s inputs
A re-run doesn’t just produce a new number. It runs last year’s answers through today’s engine first, so every dollar of change can be traced to its cause.
Why a second number isn’t enough
A year after your first run, you get a second number. On its own it can’t tell you what your work was worth, because three things changed at once: your business, the market around it, and possibly the method itself. The replay pulls them apart.
Four steps, in a fixed order
- Today’s engine, last year’s inputsYour old answers are run through the current engine. Any change here is the method’s, not yours.
- Operating inputs, one at a timeEach operating answer is swapped to this year’s value, one at a time and then together.
- Cash, debt and debt-like itemsThe balance sheet follows: cash built up, debt paid down.
- Everything elseOther answers and corrections, so nothing goes unnamed.
Because the order is fixed and every step is a full re-run of the model, each dollar of change lands in exactly one place.
Reproducing last year’s rules
Step one is itemized. The engine first reproduces last year’s value by emulating each rule that was in force then and has since been superseded. It then switches each rule to the current one, one at a time, so a method change carries the name of the rule that caused it.
| Rule switched on | Policy | Effect |
|---|---|---|
| Headline weights: the gate state keeps its prior; the upside state’s share is spread over the operating states only | 1.1 | +$13k |
| Long-run margin: owner-specific normalizations enter the structural margin at the persistence rate | 1.1 | +$163k |
| Step one in total | +$176k |
Each answer, then and now
The operating inputs that moved between the sample’s two runs, with the effect of each on the value and the cause it is credited to.
| Input | Last run | This run | Effect on value | Attributed to |
|---|---|---|---|---|
| Revenue, last twelve months | $2.48M | $2.65M | +$182k | management |
| Customer churn | 5.7% a year | 4.7% a year | +$109k | competition |
| Reported EBITDA | $392k | $448k | +$77k | execution |
| Seat growth | 6.5% a year | 7.6% a year | +$76k | management |
| Overhead | 34% | 33% | +$71k | execution |
| Service gross margin | 61% | 62% | +$63k | execution |
| One-time items added back | $0 | $22k | +$30k | assumptions |
| Net revenue retention | 100% | 98% | −$3k | execution |
- Interactions. Inputs are swapped one at a time and then together; the difference between the sum of single swaps and the joint swap is spread across the inputs in proportion
- Attribution. Each operating input belongs to one cause: management (volume, mix, spend), execution (margin, cost, collections), competition (price, churn), the market (concentration, rates) or assumptions (normalizations)
- Reproducibility. Each run is stamped with its engine version, policy version and a fingerprint of its inputs, so the prior run can be reproduced exactly
See it on a real report, or see it on yours.Download a sample reportSchedule demo