Blog · Forecast and pipeline · Finance and FP&A teams
Exponential smoothing and moving average forecasts differ in how they weight past sales. Compare both methods on the same monthly rows, then check their errors against actual sales that were unavailable when each forecast was made.
Exponential smoothing and moving average forecasts differ in how much weight they give past sales. A simple moving average weights a fixed number of recent observations equally; simple exponential smoothing gradually reduces the influence of older observations. Compare their errors on the same later months before choosing approved settings for a business forecast.
Both methods estimate the current sales level from history. Neither simple version separately estimates a growth trend or a seasonal cycle. This comparison concerns a trailing simple moving average and simple exponential smoothing, rather than the wider families of methods with similar names.
NIST explains the weighting distinction: observations inside a simple moving-average window have equal weights, while exponential smoothing gives older observations decreasing weights. Our definitions of exponential smoothing and moving average cover those terms separately.
| Decision point | Simple moving average | Simple exponential smoothing |
|---|---|---|
| Main setting | Number of trailing observations, n | Smoothing weight, alpha |
| Weight on recent history | Equal within the window | Highest on the latest observation |
| Older observations | Drop out when the window moves | Retain declining influence through the prior estimate |
| Starting requirement | Enough observations to fill the window | A stated initial forecast or level |
| Response to a one-time sale | Remains until it leaves the window | Fades through successive updates |
| Business check | Is the window appropriate for the cadence? | Is the weight appropriate for the response needed? |
A larger alpha reacts more strongly to the latest actual. A longer moving-average window usually smooths more variation. Those settings must be specified before claims about which method responds faster have any meaning.
Trailing moving-average forecast for month t = Sum of actual sales in the previous n months / n
Exponential-smoothing forecast for month t = alpha × Actual sales in month t − 1 + (1 − alpha) × Forecast for month t − 1
The second formula uses the prior month's actual and forecast. It does not use the current month's actual to forecast that same month. NIST's single exponential smoothing formula also makes the initial value explicit; initialization is part of the method, not an invisible adjustment.
For the worked comparison, a US distributor approves a three-month window and alpha of 0.5 before the July test begins. Its February exponential forecast equals January actual sales. Settings remain unchanged through August. January through June provide the starting history; July and August are the held-out evaluation months.
This is a rolling one-month-ahead test. July's forecast uses information through June. After July closes, its actual becomes available for August's forecast. August actual never enters August's forecast. The two methods therefore receive the same information at each forecast date.
Use one monthly export with period, business unit, product scope, currency and net sales. Resolve duplicate periods and reconcile the net-sales total to the approved reporting file before forecasting. Retain the original period labels so a missing month cannot quietly become the previous month.
All figures below are USD. Forecasts display cents; calculations retain full precision. A dash means the method has not yet been initialized or lacks enough history.
| Month, 2026 | Actual net sales (USD) | Three-month forecast (USD) | Exponential forecast, alpha 0.5 (USD) |
|---|---|---|---|
| January | 100,000.00 | — | — |
| February | 110,000.00 | — | 100,000.00 |
| March | 105,000.00 | — | 105,000.00 |
| April | 120,000.00 | 105,000.00 | 105,000.00 |
| May | 125,000.00 | 111,666.67 | 112,500.00 |
| June | 130,000.00 | 116,666.67 | 118,750.00 |
| July: test | 128,000.00 | 125,000.00 | 124,375.00 |
| August: test | 135,000.00 | 127,666.67 | 126,187.50 |
July's moving-average forecast is (120,000 + 125,000 + 130,000) / 3 = $125,000. July's exponential forecast is 0.5 × 130,000 + 0.5 × 118,750 = $124,375.
For August, move the window forward: (125,000 + 130,000 + 128,000) / 3 = $127,666.67. The exponential update is 0.5 × 128,000 + 0.5 × 124,375 = $126,187.50. Both estimates trail the rising sales level, despite the exponential method giving more immediate weight to the latest month.
For the spreadsheet mechanics behind the first column, use the separate moving-average formula guide. The choice here depends on the comparison, rather than how either formula is entered.
Define signed error as actual minus forecast. Positive errors mean underforecasting. Mean absolute error, or MAE, averages the absolute errors without allowing an overforecast to cancel an underforecast.
MAE = Sum of absolute forecast errors / Number of evaluated forecasts
| Test month | Moving-average error (USD) | Exponential error (USD) |
|---|---|---|
| July | 3,000.00 | 3,625.00 |
| August | 7,333.33 | 8,812.50 |
| Sum of absolute errors | 10,333.33 | 12,437.50 |
| MAE: divide by 2 | 5,166.67 | 6,218.75 |
All errors happen to be positive, so the signed-error totals equal the absolute-error totals. The check for either month is forecast plus signed error equals actual. For July, $125,000 + $3,000 = $128,000, and $124,375 + $3,625 = $128,000.
The three-month moving average has the lower MAE in this small test. That result supports these settings on these two observations; it does not establish a general winner. Use a longer evaluation covering the conditions that matter to the decision, and retain a further untouched period if settings are tuned after reviewing errors.
Using the approved settings after August closes gives a September moving-average forecast of (130,000 + 128,000 + 135,000) / 3 = $131,000. Exponential smoothing gives 0.5 × 135,000 + 0.5 × 126,187.50 = $130,593.75. September actual is unknown, so neither number has a September error yet.
Use the comparison to discuss purchasing, staffing or revenue expectations with the business owner. Check whether a promotion, lost customer or price change explains why historical sales no longer represent the next period. Keep a separately approved business adjustment visible rather than changing history to make the forecast fit.
For significant trends or recurring seasonal patterns, reconsider the method itself. NIST's exponential-smoothing guidance cautions against applying simple exponential smoothing to series with significant trend or seasonality. A better setting cannot repair a method that omits the dominant sales pattern.
Upload your monthly sales file and approved comparison settings; Covirage maps the columns, and its tools compute both historical series and check the errors against the supplied actuals. The external AI model explains the differences, with every figure traced to its rows. Create a free Covirage account and bring a sample of your own export.
See forecast analysis for the supporting business workflow.
No. Response depends on the smoothing weight and the moving-average window. A large smoothing weight responds strongly to the latest observation, while a small weight retains more history. A short moving-average window can respond faster than heavily smoothed exponential estimates.
The simple versions do not explicitly estimate a seasonal pattern. They can smooth sales, but smoothing alone does not reproduce recurring holiday peaks or other calendar effects. Use an approved method that accounts for seasonality when that pattern matters to the business decision.
A centered moving average can describe historical patterns, but it uses observations on both sides of the period being smoothed. A forecast test must use a trailing window containing only observations available at the forecast date. Otherwise later information makes historical accuracy look better.
Distinguish missing data from a genuine month with no sales. Insert a complete calendar and resolve missing observations under a documented policy before comparing methods. Skipping a month silently changes the meaning of the moving-average window and the timing of smoothing updates.