Chirayuthchai TraisaengsatheanStrategic Finance for Property Development

Frequent forecast errors: measure bias and MAPE before adjusting the numbers

Measure forecast accuracy by separating bias from volatility, and build credibility with banks and directors

Key takeaways

  • A forecast that banks and directors trust is one with a measured track record, not the one with the most attractive numbers
  • Split forecast error into bias and MAPE, because consistently over-forecasting needs a different fix from volatility
  • Explain which driver caused the error and then adjust the process, rather than just changing the numbers in the next cycle

In Q3 the company told the bank that sales would recover. In Q4 it said the same again. By year-end, the actual figures were below what had been stated in every cycle. The bank began discounting the forecast on its own, and directors asked every time whether this one could really be trusted. Even as the finance team worked harder, credibility fell.

A GPS that always shows an arrival time ten minutes later than reality is easy to fix, because you know the direction of the error. A GPS that is sometimes early and sometimes late, unpredictably, is a different problem. Measuring a forecast also means separating these two issues. How to build a 13-week forecast and a rolling forecast is already covered on the Cash Flow Forecasting page. This page is about measuring how useful a forecast is.

The two numbers to watch

Bias = sum of (Forecast − Actual) ÷ sum of Actual

MAPE = average of |Forecast − Actual| ÷ Actual

FormatMeaningHow to fix it
High bias, MAPE similarWrong in the same direction almost every periodFix incentives and assumptions
Low bias, high MAPESwings in both directionsAdjust drivers and data frequency
Low bias, low MAPEUsableMaintain discipline and adapt to the business

Example: six quarters that look only slightly different

Illustrative example. Sales, THB million

QuarterlyForecastActualDifference% of Actual
11009288.7%
2110991111.1%
31201081211.1%
41151041110.6%
51251101513.6%
61301181210.2%
Total7006316910.9%

Bias is 10.9% and MAPE is 10.9%, so the two are close because in every quarter the forecast was above actual. Actual sales came to 90.1% of forecast. If the next forecast is THB 140 million, the reference figure adjusted for history is about THB 126.2 million. Even if this figure is not used as the main plan, it should be used to test cash and Covenants.

Finding the cause through drivers

Do not conclude merely that sales were below target. Separate out whether volume, price, product mix or delivery timing was what went wrong. Each driver should have an owner: for example, the sales team is responsible for the pipeline, production or the project team for delivery dates, and finance for assembling the numbers and checking consistency.

Cause of biasSymptomFix
The forecast is the targetThe same number is used as both target and forecastSeparate Target, Forecast and Downside
IncentivesTeams fear delivering bad news, or set low targets to earn bonusesTrack accuracy as a separate measure
Pipeline is not weightedEvery deal is counted at full valueWeight by actual historical conversion at each stage
No lock dateThe forecast is revised retroactivelyKeep every version of every cycle

There is no single error threshold that works for every business. Project businesses whose revenue depends on transfer day swing with timing, so both value and date should be measured. In discussions with the bank, show the error history and a Downside case, which builds more credibility than guaranteeing a single number.

Setting a forecast cycle that allows learning

Measurement is only useful if the forecast that was actually submitted is kept. Many teams overwrite the original file every month, so when they want to look back there is nothing to compare against. Set a lock date, keep the version sent to the bank or directors, and state the horizon as well, because forecasting next month and forecasting six months ahead are of different difficulty. Error figures should therefore not be averaged together.

In the review meeting, separate the causes into three groups. The first is information that was already known but not included. The second is wrong assumptions, such as customers deciding more slowly than expected. The third is unforeseeable external events. The first two can be fixed through process, while the third should be handled with a Downside case and a reserve. This separation stops the team from blaming external factors every time, and from being blamed for what could not genuinely have been foreseen.

For executives, attitude matters as much as tools. If every time the team submits a lower number they are pushed to go back and redo it, the forecast becomes the number everyone thinks the boss wants to see. Ask instead what they have seen change, what assumptions they used, and when they would know if they were wrong. Then keep ambitious target-setting in a separate Target process. When the bank sees both the main figures and the error history, the conversation shifts from asking it to believe to showing evidence that the company knows the limits of its own numbers.

Next steps

  • Keep the forecasts actually submitted for the past 4-6 cycles, together with actuals
  • Calculate bias and MAPE by business unit
  • Clearly separate Target, Forecast and Downside
  • Set version lock dates and driver owners
  • Explain forecast errors in every cycle's report
  • Use the history-adjusted figures to test cash and Covenants