Forecast accuracy formula: 7 Checks for Useful Demand Planning
A forecast accuracy formula measures the gap between a forecast and the actual result. There is no single formula that works best for every business. MAE shows the typical error in units, RMSE gives more weight to large misses, and percentage measures help compare some series on a shared scale.
For a service business, the choice affects staffing and parts planning. A small percentage error can still mean many missed visits or excess parts. This article explains seven checks for demand forecasting accuracy, provides a worked example, and shows how to choose a measure without hiding important errors.
The main forecast error formulas
Define forecast error as actual demand minus forecast demand. With that convention, a positive error means the forecast was too low. Some systems reverse the sign, so check the definition before reading a bias chart.
For each period, let A mean actual demand and F mean forecast demand. Let n mean the number of periods in the test.
| Measure | Formula in words | Use |
|---|---|---|
| MAE | Sum of absolute errors ÷ n | Typical miss in demand units |
| RMSE | Square root of the mean squared error | Give larger misses more weight |
| MAPE | Mean of absolute error ÷ absolute actual, × 100 | Percentage comparison when actuals suit it |
| WAPE | Sum of absolute errors ÷ sum of absolute actuals, × 100 | Aggregate percentage error |
| Mean error | Sum of signed errors ÷ n | Direction of systematic error |
The forecast accuracy discussion in Forecasting: Principles and Practice explains common error measures and their limits. The key lesson is to match the measure to the question rather than seek one universal accuracy score.
1. Define the decision and forecast horizon
First, decide what the forecast supports. Weekly staffing, daily stock replenishment, and annual capacity planning need different views. A model can work well for one horizon and poorly for another.
If a supplier needs four weeks to deliver, evaluate the forecast available four weeks before demand. A forecast revised the day before the sale would not reflect the buying decision you actually faced.
Keep forecast versions. Store the issue date, target period, horizon, item, location, and forecast value. Then compare the frozen version with actual results after the target period ends.
For example, a plumbing firm may plan next month’s pump stock today. Its report should not replace today’s forecast with a later revision and then claim better planning accuracy. That would measure a different decision.
Also define the demand unit. Visits, labor hours, parts, and revenue are not interchangeable. A shift in job mix may leave visit counts stable while changing the hours the business needs.
2. Check what the actual data represents
Sales are not always the same as demand. If stock runs out, recorded sales can understate what customers wanted. Likewise, a full booking schedule may hide customers who could not get an appointment.
Flag stockouts, closures, lost enquiries, returns, and unusual events where the data supports it. Do not quietly adjust actuals until the model looks accurate. Keep the observed figure and any demand adjustment separate.
Check date rules as well. A job booked in one week and completed in another should follow the definition that matches the forecast. Mixing booking date and completion date creates noise.
For parts records, verify stock movements before judging the model. Anomoz’s guide to inventory reconciliation explains how incorrect stock records can mislead later decisions.
Finally, keep missing values distinct from true zeros. A day with no demand differs from a day when the import failed. The formulas cannot make that distinction for you.
3. Use MAE for a clear view in units
MAE stands for mean absolute error. Take the size of each miss without its sign, add those values, and divide by the number of observations. This prevents overforecasts and underforecasts from canceling each other.
Suppose actual weekly demand is 100, 120, and 80 units. The forecast is 90, 130, and 100. The signed errors are 10, minus 10, and minus 20. Their absolute values are 10, 10, and 20.
MAE is therefore 40 ÷ 3, or about 13.3 units. That gives a planner a plain-language result: the forecast missed by about 13 units per week in this small fictional example.
However, MAE depends on scale. A 13-unit error means something different for a product selling 20 units than for one selling 20,000. Use it within a series or alongside another suitable comparison.
MAE also treats the same-sized miss equally in either direction. If shortages and excess stock have different costs, add an operating measure that reflects those consequences.
4. Use RMSE when large misses matter
RMSE stands for root mean squared error. Square each error, average the squared values, and take the square root. The result returns to the same unit as demand.
For the example above, the squared errors are 100, 100, and 400. Their mean is 200. The square root is about 14.1 units.
Large misses have more influence on RMSE than on MAE. This can help when a few major errors create serious planning problems. However, it can also make the score sensitive to unusual events.
The Amazon Forecast documentation on evaluation metrics provides another technical reference for error measures. Use the formulas as measurement tools without assuming that a particular software service is necessary.
Review the largest misses alongside the score. One shutdown or data error may deserve a separate note. Keep the event visible rather than removing it solely because it makes performance look worse.
5. Treat percentage formulas with care
MAPE averages each period’s absolute percentage error. In the example, the errors are 10%, about 8.3%, and 25%. MAPE is about 14.4%.
However, MAPE is undefined when an actual value is zero. Very small actuals can also create huge percentages. This makes it awkward for spare parts with many zero-demand periods.
WAPE uses total absolute error divided by total absolute actual demand. In the example, 40 ÷ 300 × 100 gives about 13.3%. It differs from MAPE because the aggregation differs.
WAPE is undefined when the denominator totals zero. It also lets higher-volume series dominate an aggregate result. A good overall score may therefore hide poor performance on a critical low-volume part.
Do not assume “accuracy equals 100 minus error” produces a universal score. Some error measures can exceed 100%, and a derived accuracy score may become negative. Explain the chosen convention rather than clipping the number without notice.
6. Check bias and performance by group
Mean signed error shows whether forecasts tend to run high or low. In the example, total signed error is minus 20. Dividing by three gives about minus 6.7 units, using actual minus forecast.
That suggests an overall overforecast in this small sample. Yet the signed mean alone hides the size of individual misses. Always pair bias with an absolute error measure.
Break results down by item, location, job type, and forecast horizon where useful. A company total can hide one team that consistently lacks capacity and another with excess cover.
For stock decisions, compare errors with service outcomes. Anomoz’s guide to fill rate shows why forecast error and the ability to meet orders answer different questions.
Likewise, use safety stock as a separate planning topic. Better average forecasts do not remove all uncertainty in demand or lead time.
7. Test against a simple benchmark
A complex model should earn its place by beating a useful baseline. Compare it with a simple method such as the last observed value or the same period last season, where that method fits the data.
Use data the model could genuinely have known at the time. Training and testing on the same observations can give an overly optimistic result. Preserve time order when testing forecasts.
A rolling test repeats the exercise from several past dates. At each date, train only on earlier information and forecast the relevant horizon. This gives a broader view than one convenient test period.
Keep the evaluation horizon and rules consistent across models. Then compare operating impact as well as the score. A small error reduction may not justify a much harder system to maintain.
Finally, review results after deployment. Demand patterns, service areas, and customer mix can change. A model that worked last year may need a new fit or a different method.
A practical spreadsheet layout
Use one row per item, location, target period, and forecast issue date. Include actual, forecast, signed error, absolute error, squared error, and an eligibility flag for percentage measures.
Calculate summaries from the underlying values. For WAPE, divide the sum of absolute errors by the sum of absolute actuals. Do not take a simple average of item-level WAPE values unless you intend that different measure.
Show the number of observations, excluded rows, and reasons. A report based on five complete periods should not look as well supported as one based on several stable years.
If planning data spans customer, job, and stock systems, custom crm development may connect the records. Define the forecast version and actual-data rules before automating the dashboard.
Turn the measure into a planning action
Set a review rule for large misses and repeated bias. Ask whether the cause was missing demand, a price change, a new service area, or a model limit. Assign an action rather than simply publishing the number.
For instance, a sudden rise in callouts may need a short-term staffing response before anyone changes the model. Meanwhile, repeated overforecasting of one part may call for a review of the input history and replenishment rule.
Keep the review proportionate. Not every small miss needs an investigation. Focus on errors that affect customers, cash tied up in stock, or the team’s ability to deliver work.
Keep a frozen forecast for each review
A forecast accuracy report needs the forecast that planners actually had when they made the decision. If a spreadsheet replaces last month’s estimate with today’s revision, the comparison can look better without any improvement in planning.
Therefore, keep a dated copy for each forecast cycle. Store the item, location, target period, forecast date, and predicted quantity. Next, add actual demand only when the agreed period closes. Separate later corrections from the original snapshot so reviewers can trace both.
For example, a buyer may place an order using a four-week forecast. Evaluate that saved forecast against the demand it was meant to cover, rather than using a one-week revision produced after most orders arrived. Both horizons may be useful, but they answer different questions.
Also label preliminary actuals. Late returns or delayed sales imports can change the apparent error after a review. An agreed close date and correction policy help the team distinguish data changes from real gains in forecasting.
Frequently Asked Questions
Which forecast accuracy formula is best?
It depends on the decision and data. MAE gives a clear error in units, RMSE emphasizes large misses, and percentage measures offer different comparisons. Use bias and operating outcomes alongside the main score.
Can I use MAPE for zero-demand parts?
MAPE cannot divide by a zero actual. Consider a measure that suits intermittent demand and state how you handle zeros. Do not silently remove those periods from the evaluation.
Is a lower error always better for the business?
Lower error can help, but the cost and direction of misses also matter. Compare shortages, excess stock, service levels, and the effort needed to maintain the model.
Choose a measure that supports the decision
A useful forecast accuracy formula has clear data, timing, and aggregation rules. Start with MAE and bias, add a suitable scale or percentage measure, and compare a genuine forecast with a simple baseline. Then use the findings to improve a specific planning decision.