Notes

Why am I doing this, and did it work?

Two questions attach to every initiative. Teams answer the first one carefully and almost never answer the second, because the forecast was never built in a way that could be checked.

Two questions attach to anything a team decides to do.

Why am I doing this. And did it work.

The first gets a lot of attention. Business cases, forecasts, slides, alignment. The second is asked occasionally, answered rarely, and almost never answered in a way that changes the next decision.

This is not laziness. It is a structural consequence of how the first question gets answered.

A forecast with no named assumptions cannot be audited

Here is the normal shape of a plan. Someone builds a model, blends historical performance with a judgement about improvement, and produces a number. The number gets approved. Six months later the actual result is different.

Now try to answer whether it worked.

You cannot, in any useful sense. You know the outcome missed. You do not know which assumption was wrong, whether the others were right, or whether the plan was sound and something external moved. The forecast produced a single figure with twenty judgements compressed inside it, and no way to pull them apart afterwards.

So the honest answer to "did it work" is "revenue was lower than we said", and the honest follow-up is "we do not know why". Since that is not a useful thing to present, the question gets quietly dropped, and the next plan gets built the same way.

The problem is not the miss. Every model is wrong in some direction. The problem is that the model was not constructed as something that could be checked.

What a checkable forecast looks like

The change is small and it is entirely about form.

Instead of a number, produce a number plus the three or four assumptions that drive most of it, each stated as a value you will later be able to observe.

Not "we expect improved retention". That cannot be checked, because there is no threshold and no date. Something more like: D30 retention rises from its current level to a stated one by a stated month, eCPI stays within a stated band as spend scales to a stated level, conversion to payer holds at its current rate.

Now the forecast has joints. Six months later you can check each one independently. You find out that two assumptions held, one was optimistic by a specific amount, and the miss is almost entirely attributable to the third.

That is an answer to "did it work". It is also the only version of the question that improves the next forecast, because it tells you which part of your judgement to distrust.

Rank them before you commit

There is a step that makes this dramatically cheaper, and it belongs before the plan is signed rather than after it fails.

Run the model and rank the inputs by how much each one moves the answer.

Almost always, one or two assumptions account for most of the spread. And frequently they are not the ones the room has been arguing about. Teams will spend an hour on eCPI to two decimal places when the forecast turns almost entirely on D30 retention and the organic contribution.

You can see the shape of it in the calculator's own defaults. Open them and move cost per install by a cent, from $1.10 to $1.09: payback moves from day 207 to day 203. Put it back and move day 30 retention by a point instead, from 9% to 10%: payback moves to day 170. Only one of those is worth an hour of the meeting. Those are the calculator's published defaults, not a customer result.

Knowing which input owns the uncertainty does two things. It tells you what to measure first, because there is no point instrumenting twelve assumptions when two of them decide the outcome. And it tells you what to do next, because an input that owns the uncertainty and can be tested cheaply should be tested before the budget is committed, not after.

The cost of not doing it

A team that cannot answer "did it work" has no mechanism for getting better at forecasting. Every plan is built from the same instincts as the last one, adjusted by whatever the last miss felt like emotionally rather than what it was numerically.

It also has no defence. When a forecast misses and nobody can explain which assumption broke, the conclusion available to everyone else is that the team guessed. Sometimes that is unfair. Without named assumptions there is no way to demonstrate it was.

The reverse is the real prize. A team that can say "we said D30 would reach this, it reached that, and here is what we have changed as a result" is a team whose next forecast carries weight. Credibility in planning comes from a track record of explaining misses, not from a track record of hitting numbers, which nobody has.

Where the discipline usually breaks

Three failure points, all mundane.

The assumptions are recorded in the model and the model is not kept. Six months on, the file has been edited a dozen times and the original values are gone. Write them down outside the model, with the date.

Nobody owns the check. It needs a date in a calendar and a name against it, or it does not happen. The check is a fifteen-minute task that never feels urgent on any particular day.

The check happens and produces no action. Finding that retention was optimistic is only useful if the next forecast uses a different number. Close that loop explicitly or the audit becomes a ritual.

Running it

Kadar reports a ranked sensitivity on every run, showing which single assumption is driving your payback day, and will solve the inverse: what one input would have to change to hit a target you name.

Which gives you the two things a checkable forecast needs. The assumptions that matter, and the thresholds to check them against.

Run your own numbers in the free calculator. No sign up.