Forecast accuracy is measured by comparing predicted values against actual outcomes using error metrics. The right metric depends on what you’re forecasting, whether your data contains zeros, and whether you need to compare across different products or series. Most teams start with a handful of core metrics and layer in more specialized ones as their forecasting matures.
Start With Mean Absolute Error
Mean Absolute Error (MAE) is the most intuitive accuracy metric. You take each forecast, subtract it from the actual value, ignore the sign (so negatives become positive), and average those differences. If you forecasted sales of 11, 13, 14, 14, 15, 16, and 18 units across seven periods, and actual sales were 12, 13, 14, 15, 15, 22, and 27, your MAE would be about 2.43 units. That tells you your forecast was off by roughly 2.4 units per period on average.
MAE is easy to explain to stakeholders because it’s expressed in the same units as your data. If you’re forecasting revenue in dollars, the MAE is in dollars. If you’re forecasting demand in cases, the MAE is in cases. The limitation is that it doesn’t tell you whether your errors are large relative to the values you’re forecasting. Being off by 10 units means something very different when actual demand is 50 versus 5,000.
MAPE: Errors as a Percentage
Mean Absolute Percentage Error (MAPE) solves the scale problem by expressing each error as a percentage of the actual value, then averaging those percentages. A MAPE of 15% means your forecasts are off by about 15% on average, which is immediately meaningful regardless of whether you’re forecasting thousands or millions.
MAPE has two well-known problems. First, it breaks when actual values are zero, since you’d be dividing by zero. Second, it penalizes over-forecasting more heavily than under-forecasting. A forecast of 200 against an actual of 100 produces a 100% error, but a forecast of 0 against an actual of 100 also produces a 100% error. Meanwhile, there’s no upper limit on percentage errors when actuals are small. This asymmetry means MAPE quietly favors models that tend to underpredict.
WMAPE for Products With Zero Demand
If your data includes periods with zero demand (common in retail, spare parts, and seasonal products), Weighted Mean Absolute Percentage Error (WMAPE) is a practical alternative. Instead of averaging individual percentage errors, you sum all the absolute errors across every period and divide by the total actual demand. This sidesteps the division-by-zero issue entirely because a single zero in one period doesn’t blow up the calculation.
WMAPE also gives more weight to high-volume periods, which is usually what you want. A 50-unit error during a period with 500 units of demand matters more to your business than a 5-unit error during a period with 10 units. Research published in Nature’s Scientific Reports confirmed that WMAPE is effective for normalizing results across datasets with varying demand patterns, particularly when zero-demand periods are common.
RMSE: Penalizing Large Errors
Root Mean Square Error (RMSE) squares each error before averaging, then takes the square root to bring the result back into the original units. The squaring step means large errors get disproportionately penalized. If most of your forecasts are close but one period is wildly off, RMSE will reflect that much more than MAE will.
Use RMSE when big misses are significantly more costly than small ones. In supply chain contexts, a single period where you’re off by 1,000 units might cause a stockout or a warehouse overflow, making it far worse than ten periods where you’re off by 100 units each. RMSE captures that asymmetric cost. Because RMSE is measured in the same units as your forecasted variable (dollars, units, kilograms), it’s straightforward to communicate across teams.
Detecting Forecast Bias
Accuracy metrics like MAE and MAPE tell you how far off your forecasts are, but they strip away direction. You could have a “good” MAPE while consistently over-forecasting or under-forecasting, because positive and negative errors cancel out before being made absolute. That directional tendency is called bias, and it’s one of the most damaging forecast problems because it compounds over time into excess inventory or chronic shortages.
To detect bias, calculate the Mean Percentage Error (MPE) without taking the absolute value. Subtract each forecast from the actual, divide by the actual, and average those signed percentages. A negative MPE means you’re consistently over-forecasting (predicting more than what materializes). A positive MPE means you’re under-forecasting. A well-calibrated forecast should have an MPE hovering near zero.
You can also monitor bias with a tracking signal, which is the running sum of forecast errors divided by the mean absolute deviation. As long as the tracking signal stays between negative 4 and positive 4, the model is generally performing as expected. When it drifts outside that range, your forecast has developed a systematic lean in one direction, and the underlying model likely needs adjustment.
MASE: Comparing Across Different Series
Comparing forecast accuracy across products or time series with different scales is tricky. A MAPE of 20% on one product isn’t directly comparable to 20% on another if demand patterns differ. The Mean Absolute Scaled Error (MASE), proposed by forecasting researcher Rob Hyndman, addresses this by scaling your errors against a baseline: specifically, how well a naive forecast (just using last period’s actual as next period’s prediction) would have performed on the same data.
A MASE below 1.0 means your forecast is doing better than the naive approach. A MASE above 1.0 means you’d have been better off just repeating the last actual value. This makes it easy to compare wildly different products. You can average MASE values across a group of series to get an overall accuracy score, then compare that against other product groups to identify which ones are hardest to forecast.
MASE also never produces infinite or undefined values, even with zero demand periods, making it the most versatile single metric available. It works for seasonal data, intermittent demand, and standard time series alike.
Measuring at the Right Time Horizon
When you measure matters as much as what you measure. Forecasts naturally become more accurate closer to the sales period, so evaluating a forecast made one week out tells you something very different from evaluating one made three months out. If you only measure the most recent forecast before each period, you’ll get an inflated picture of accuracy that doesn’t reflect the forecast quality that actually drove purchasing and production decisions weeks or months earlier.
For products sourced overseas with long lead times, the forecast that triggered the order might have been made 12 or 16 weeks in advance. That’s the version you should evaluate. Measure accuracy at each relevant lead time: the point when procurement decisions were locked, when production schedules were set, and when short-term adjustments were made. This gives you a clear view of where in the planning timeline your forecasts are strong and where they fall apart.
Building a Spreadsheet to Track Accuracy
You don’t need specialized software to start measuring. A basic spreadsheet with columns for period, actual value, and forecast value can calculate every metric discussed here. For MAE, create a column that computes the absolute difference between actual and forecast for each row, then average that column. For MAPE, divide each absolute error by the actual value, then average those percentages. For RMSE, square each error, average the squared values, and take the square root.
In Excel or Google Sheets, the key functions are ABS() for absolute values (used in MAE and MAPE), SQRT() for the square root step in RMSE, and basic SUM and COUNT operations. WMAPE is even simpler: sum the absolute error column and divide by the sum of the actuals column.
Track these metrics over time, not just as a single snapshot. Plot your MAE or MAPE by month to see whether accuracy is improving, degrading, or stable. Break results down by product category, region, or customer segment to find pockets where the forecast is weakest. A single aggregate number can hide the fact that 80% of your products forecast well while 20% are wildly inaccurate.
Choosing the Right Metric
- MAE when you want a simple, interpretable number in the same units as your data and don’t need to compare across different scales.
- MAPE when you need a percentage-based view and your data doesn’t contain zeros or very small values.
- WMAPE when your data includes zero-demand periods or you want high-volume periods to carry more weight.
- RMSE when large errors are disproportionately costly and you want to penalize big misses more than small ones.
- MASE when you need to compare accuracy across multiple products or series with different scales, or when dealing with intermittent demand.
- MPE and tracking signal when you need to detect whether forecasts are systematically too high or too low.
Most mature forecasting teams use at least two or three of these together. A single metric always hides something. MAPE can look great while bias quietly builds. MAE can look stable while a few enormous misses go unnoticed. Pairing an accuracy metric (like WMAPE or MASE) with a bias metric (like MPE or tracking signal) gives you the clearest picture of forecast health.

