What being wrong costs
- Cost of being short
- Cost of being over
Expected cost per month of missing, at every headcount you could pick. Not the payroll, which you owe either way. Just the waste. The curve is lopsided because the two mistakes are not priced the same, and its low point is almost never where the forecast lands.
What moves this answer most
If each input were 10% off, this is how far the recommendation would move. Spend your evidence on the top of the list. The rest you can estimate.
Holding the number
How it works
Effective hours per person are paid hours less shrinkage, times occupancy. Divide the month's work by that and you get the headcount the forecast implies. Your spreadsheet already does that part.
The rest is the newsvendor problem, which is a hundred years old and still the right
tool. If being short costs r times what being over costs, the
cost-minimizing plan covers demand r / (r + 1) of the time. At 3×
that is the 75th percentile, not the 50th. Treating the forecast as the target
quietly chooses a coin flip, and prices the two sides of it as though they matched.
This does not assume demand is random. It assumes your forecast is good and misses anyway, which is a different claim. Whatever you built the forecast from, history, seasonality, market signal, third-party data, some error is left over, and that leftover is what the error field describes. Build a better forecast and it shrinks, and so does the buffer this recommends. Set it to zero and the model tells you to staff to the forecast, which is the right answer for a forecast that never misses.
That residual is treated as normal around the forecast, and expected shortfall and overage come from the standard normal loss function, so the curve is exact rather than simulated.
Where it will mislead you: forecast error in operations is often skewed rather than symmetric, because surges run further above plan than lulls run below it, and a normal residual will understate the upside tail. It is a single month in steady state, so a sharp ramp or a seasonal peak needs its own run. It assumes your people are interchangeable, which they stop being once skills specialize. And the short-versus-over ratio is a judgment call carrying most of the weight, which is why it sits at the top of the sensitivity list rather than buried down here.
Take it. One file, no build step, no dependencies, no analytics, nothing sent anywhere. Save the page and it works offline. Change the numbers, copy the link, and the model travels with it.