Sign in

Blog · Forecast and pipeline · Finance and FP&A teams

Exponential smoothing vs moving average

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.

The short answerExponential smoothing and moving average methods both use historical observations to estimate the next period. A simple moving average gives equal weight to observations inside a fixed window. Simple exponential smoothing gives progressively less weight to older observations. Choose between approved settings by comparing forecast errors over the same later periods, using only information available before each forecast.

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.

What the two methods measure

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.

State the formulas and the forecast date

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.

Work the same sales rows both ways

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.

Compare errors over the identical test months

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.

Decide what the next forecast should inform

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.

Where the comparison goes wrong

  • Future information enters the forecast. A centered window or same-month actual makes the test unavailable in real time.
  • Evaluation periods differ. Comparing one method on quiet months and another on peak months confuses method performance with business conditions.
  • Settings change after seeing test results. A revised weight or window needs another untouched evaluation; the old test has become selection data.
  • Missing months become zeros. A reporting gap and a real zero-sales month have different meanings and require different treatment.
  • Aggregate accuracy hides offsetting errors. Check the business units where decisions are made before accepting a company-level error measure.

Compare your own sales history in Covirage

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.

Questions people ask

Does exponential smoothing always respond faster than a moving average?

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.

Can either method handle seasonal sales?

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.

Is a centered moving average suitable for forecasting?

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.

How should missing months be treated?

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.