Exponential Smoothing (ETS)
Rather than just chasing the latest value, it looks ahead by updating the patterns built up over time.
Suppose an aquarium operator wants to forecast next quarter’s visitor numbers. Visitors tend to rise during summer vacation and fall in winter, but total visitor numbers also grow a little every year. If you simply carry last month’s visitor count over to next month, you miss the seasonal changes, and if you use only the overall historical average, it is hard to reflect recent growth.
A classic time series forecasting method for this situation is exponential smoothing. It gradually incorporates recent observations and information accumulated in the past, and, depending on the data, models the level, trend, and seasonality. In particular, the ETS (Error, Trend, Seasonality) framework includes the form of the error as well, letting you compare many exponential smoothing models systematically.
In this article we use aquarium visitor numbers as an example to cover simple exponential smoothing, the Holt and Holt–Winters methods, ETS notation, what smoothing parameters mean, calculating forecasts, model selection, and forecast validation.
What does exponential smoothing forecast?
Exponential smoothing forecasts future values by giving relatively large weights to the most recent observations of a time series.
The influence of older observations decays exponentially over time, hence the name exponential smoothing. It does not use only the most recent values, though. Information from past observations also remains, accumulated in the updated level and trend states.
For example, if the aquarium’s monthly visitor count were perfectly constant, a simple model that estimates only the level might be enough. But if visitors increase over the long run, you need to add a trend, and if the summer peak season repeats every year, you need to add seasonality, so that the forecasts better reflect real operating conditions.
| Time series characteristics | Method to consider | Main use |
|---|---|---|
| No clear trend or seasonality | Simple exponential smoothing (SES) | Estimating a stable level |
| Trend but no seasonality | Holt linear trend | Captures an upward or downward trend |
| Both trend and seasonality | Holt–Winters / seasonal ETS | Captures seasonal patterns |
| Trend may not persist for long | Damped trend | Tempers long-run trend extrapolation |
Worked example: monthly aquarium visitors
Suppose an aquarium recorded its visitor numbers for the 48 months from January 2022 to December 2025.
This aquarium is crowded every summer vacation, and visitor numbers are relatively low the rest of the year. To plan staffing and facility operating costs, the operator wants to forecast visitor numbers for January through March 2026.
| Item | Setting |
|---|---|
| Unit of observation | Month |
| Observation period | Jan 2022 – Dec 2025 (48 months) |
| Target variable | Monthly visitors (people) |
| Seasonal period | 12 months |
| Forecast horizon | Jan–Mar 2026 |
| Main use | Planning staffing, facilities, and operating budget |
Below is a simplified example of the observations for the last few months.
| Month | Visitors |
|---|---|
| Jul 2025 | 28,500 |
| Aug 2025 | 31,200 |
| Sep 2025 | 18,800 |
| Oct 2025 | 17,600 |
| Nov 2025 | 14,900 |
| Dec 2025 | 16,200 |
Because the gap between summer and late fall is large, a model that captures a pattern repeating every year is likely to do better than a simple overall average. Even so, rather than settling on a seasonal model right away, you should first look at the time series plot and the seasonal variation.
How is simple exponential smoothing (SES) calculated?
Simple exponential smoothing is the basic form, suited to time series without a clear trend or seasonality.
It updates the current level estimate as a weighted average of the new observation and the previous level estimate.
ℓt = α yt + (1 − α) ℓt−1
Here yt is the observation at time t, ℓt is the updated level, and α is a smoothing parameter usually between 0 and 1. For example, if last month’s level estimate was 15,000 visitors, this month’s actual visitors were 16,000, and α = 0.30, we get the following.
ℓt = 0.30(16,000) + 0.70(15,000) = 15,300
So the new level estimate is 15,300 visitors. In simple exponential smoothing, the point forecasts for all future periods stay constant at this level. For strongly seasonal data like the aquarium’s, SES alone may not be enough.
How does Holt’s method capture trend?
Holt’s linear trend method updates the level and the trend separately.
It addresses the limitation of simple exponential smoothing, whose forecasts stay flat, by modeling a steady rise or fall in visitor numbers. A typical form with an additive trend is as follows.
ℓt = α yt + (1 − α)(ℓt−1 + bt−1)
bt = β*(ℓt − ℓt−1) + (1 − β*) bt−1
ŷt+h|t = ℓt + h bt
Here bt is the slope of the trend estimated at time t, and h is the number of periods ahead being forecast. For example, if the estimated level is 18,000 visitors and the monthly trend is +200 visitors, the point forecast for next month is 18,200 and for two months ahead it is 18,400.
But if monthly visitors rise every summer, the linear trend of Holt’s method alone has a hard time representing that movement. When seasonality is observed, consider a method that includes a seasonal component.
How does Holt–Winters capture seasonality?
The Holt–Winters method updates a seasonal component in addition to the level and trend.
If monthly data have a 12-month seasonal period, the seasonal characteristics of each month are set up to cycle. Additive seasonality fits when the size of seasonal increases and decreases is roughly constant. For example, about 8,000 more people visit in summer than in other months, and this stays about the same even when the overall number of visitors changes.
Multiplicative seasonality is useful when seasonal differences grow or shrink in proportion to the level. For example, if summer visitor numbers stay at about 1.5 times the usual level, multiplicative seasonality may be natural.
| Aspect | Additive seasonality | Multiplicative seasonality |
|---|---|---|
| Seasonal variation | Constant absolute size | Relative size proportional to the level |
| Example | +8,000 visitors in summer | ×1.5 the usual level in summer |
| Caution | Can produce negative forecasts | Usually requires positive data |
Whether additive or multiplicative fits better should be judged from the actual variation in the time series and the model diagnostics. In particular, when using a multiplicative structure on data where visitor numbers can be 0, look carefully at whether it is well defined and can be estimated.
What do the E, T, and S in ETS stand for?
ETS stands for Error, Trend, and Seasonality.
It is a state space model framework that distinguishes exponential smoothing models by specifying the form of each of the three components.
| Notation | Meaning | Example |
|---|---|---|
| A | Additive | Error, trend, and seasonality enter as absolute amounts |
| M | Multiplicative | Proportional errors or seasonal changes |
| N | None | That component is not used |
| Ad | Additive damped (damped additive trend) | The trend’s growth shrinks further into the future |
For example, ETS(A,N,N) is a model with additive errors and no trend or seasonality. ETS(A,A,A) uses additive errors, an additive trend, and additive seasonality, and ETS(M,Ad,M) uses multiplicative errors, a damped additive trend, and multiplicative seasonality.
The important point is that the traditional Holt–Winters forecasting method and the ETS notation for error-based state space models are related, but they are not exactly the same naming system. Because ETS also specifies the structure of the error distribution, it can be used for likelihood-based model comparison and for computing prediction intervals.
How are the smoothing parameters determined?
Exponential smoothing uses smoothing parameters such as α for the level, β for the trend, and γ for seasonality.
These values determine how quickly information from new observations is reflected in the state estimates. In general, a large α reacts more sensitively to recent observations, while a small one keeps the previously estimated level relatively stable. The smoothing parameters for trend and seasonality control the update speed in a similar way, but the exact formulas and allowed ranges depend on the ETS model you use.
In real analyses, rather than fixing the smoothing parameters arbitrarily, they are often estimated from the data based on the likelihood or forecast errors of the chosen model. The initial level and initial seasonal effects also affect the forecasts, so estimate them as well or use an appropriate initialization method.
| Setting | Main meaning | What to check |
|---|---|---|
| Level smoothing parameter | How quickly new level information is absorbed | Sensitivity to recent changes |
| Trend smoothing parameter | How quickly the trend slope is updated | Stability of the trend |
| Seasonal smoothing parameter | How quickly the seasonal pattern is updated | Year-to-year changes in the seasonal pattern |
| Damping parameter φ | How long the trend persists into the far future | Whether long-run extrapolation is unrealistic |
How do you choose an ETS model in practice?
With the aquarium data, first look at the 48-month time series plot and check the seasonal period and trend.
Then you can compare additive vs multiplicative seasonality, whether to include a trend, and whether a damped trend is needed. Below is a comparison of information criteria obtained by fitting several candidates to the same training data.
| Candidate model | AICc | Interpretation |
|---|---|---|
| ETS(A,N,A) | 812.4 | Seasonality only |
| ETS(A,A,A) | 797.8 | Trend and seasonality |
| ETS(A,Ad,A) | 790.6 | Damped trend and seasonality |
| ETS(M,Ad,M) | 793.2 | Multiplicative error and seasonality |
In this example, ETS(A,Ad,A) had the lowest AICc. AICc is an information criterion that includes a correction for sample size, and it can be used to compare the relative fit and complexity of likelihood-based candidate models fitted to the same data.
However, the lowest AICc does not mean the best future forecasting performance. If the actual purpose is forecasting, check that the errors are also stable in a validation that preserves time order. If several models have similar errors, you can also consider interpretability and the stability of the forecasts.
How do you forecast visitors for the next 3 months?
Suppose we forecast January–March 2026 with the selected ETS(A,Ad,A) model.
The point forecasts in the table below extend forward the level, trend, and seasonal states estimated from the previous 48 months.
| Forecast month | Point forecast | 95% prediction interval |
|---|---|---|
| Jan 2026 | 15,800 | 12,400–19,200 |
| Feb 2026 | 16,500 | 12,600–20,400 |
| Mar 2026 | 19,100 | 14,600–23,600 |
Expected visitors are estimated at 15,800 in January, 16,500 in February, and 19,100 in March. You can interpret this as the result of reflecting both a seasonal pattern in which demand rises toward spring and a gentle trend.
A point forecast is the most representative expected value, but it does not mean the actual observation will be exactly that number. The 95% prediction interval is a range computed by reflecting the model’s errors, state estimates, and future uncertainty, and it should be interpreted in terms of its long-run coverage rate under the model’s assumptions. You should not claim that, for an individual forecast, the actual number of visitors will definitely fall inside the interval with 95% probability.
Why do prediction intervals widen further into the future?
As the forecast horizon lengthens, shocks in the not-yet-observed future accumulate, so uncertainty often grows.
So prediction intervals for long-range forecasts are generally wider than for short-range ones. In the results above, the prediction interval is 6,800 visitors wide for January but wider, 9,000, for March. When making operating plans, it is better to examine both low-demand and high-demand scenarios rather than using only the point forecast.
For example, staffing can be based on the point forecast while securing extra staff to handle the peak season or unexpected surges in demand. However, the uncertainty included in ETS prediction intervals depends on the model and estimation method used, so they cannot be assumed to capture structural changes such as a new facility opening or a change in admission pricing.
How do you validate ETS forecasting performance?
In time series forecasting, the order of past and future must be preserved.
If you split the data randomly, you can get data leakage, using future information to predict the past. In this example, you could train the model on the 36 months of 2022–2024 and use the 12 months of 2025 as the validation period. Alternatively, you can run a rolling-origin evaluation, gradually extending the training period and forecasting the next 1 or 3 months at each point.
| Metric | Meaning | Caution |
|---|---|---|
| MAE | Mean of absolute forecast errors | Interpreted in the original units of visitors |
| RMSE | Gives more weight to large forecast errors | Sensitive to a few large errors |
| MASE | Scaled by the errors of a simple benchmark forecast | State the benchmark and seasonal period |
| sMAPE | Summarizes relative errors as a symmetric percentage | Interpret with care for values near 0 |
For example, if ETS(A,Ad,A) has a validation MAE of 1,650 visitors and the seasonal naive forecast (predicting the value from the same month last year) has an MAE of 2,250, ETS showed a smaller mean absolute error in that validation period. But this alone cannot guarantee that it will be better in every future period.
How do you diagnose residuals and seasonality?
After fitting the model, check whether any unexplained structure remains in the residuals.
If the residuals drift to one side over time or repeat at a certain interval, the model may not have captured the trend or seasonality adequately. Check the residual time series plot and the autocorrelation function (ACF), and if needed use the Ljung–Box test to assess whether the autocorrelations at several lags are jointly 0.
However, the test is affected by sample size, degrees-of-freedom corrections, and the model fitting process, so don’t judge forecast quality by a single p-value.
| Diagnostic finding | Possible interpretation | Further checks |
|---|---|---|
| Residuals repeat on a 12-month cycle | Seasonality may not be captured | Respecify the seasonal model |
| Residuals stay positive for a long time | Level or trend may be underestimated | Check for a structural change |
| Large residuals concentrated in certain months | External shocks such as events or closures | Check event records |
| Significant residual autocorrelation | Time series dependence remains | Compare alternative models |
Because ETS extends past patterns, it has trouble accurately forecasting external events such as a sudden closure, a new competing attraction, or an admission price increase without separate inputs. If such variables matter for the forecast, consider alternatives such as regression-based time series models.
How do ETS and ARIMA differ?
ETS and ARIMA are both widely used for time series forecasting, but they model the series in different ways.
ETS takes the view of updating level, trend, and seasonality as states, while ARIMA explains time series dependence mainly through lagged relationships among past observations and errors, and differencing.
| Aspect | ETS | ARIMA |
|---|---|---|
| Main structure | Error, level, trend, and seasonal states | Autoregression, differencing, moving average |
| Handling seasonality | Updates seasonal states directly | Can use seasonal AR, MA, and differencing terms |
| Suitable situations | Clear level, trend, and seasonal patterns | When lag-specific dependence matters |
| Exogenous variables | Not included directly in basic ETS | Can be extended, e.g., ARIMAX, SARIMAX |
Neither is better for all data. ETS can be strong for data with easily interpreted seasonal patterns, and ARIMA can be useful for modeling the autocorrelation structure of the residuals in detail. In practice, the most practical approach is to compare both models over the same validation period.
How do you report the results?
When reporting ETS results, it is good to state the observation period and frequency of the data, the seasonal period, the candidate models, the final ETS notation, the model selection criterion, validation performance, and the point forecasts and prediction intervals.
Sample report
To forecast monthly aquarium visitors, exponential smoothing was applied to 48 months of data from January 2022 to December 2025. The seasonal period was set to 12 months, and candidate ETS models with different trend and seasonal structures were compared. ETS(A,Ad,A), with a damped additive trend and additive seasonality, had the lowest AICc (790.6) among the models compared.
Forecast visitors were 15,800 for January 2026 (95% prediction interval: 12,400–19,200), 16,500 for February (12,600–20,400), and 19,100 for March (14,600–23,600). These forecasts reflect a gentle long-term trend and monthly seasonal variation; actual operational planning should also consider forecast uncertainty and changes in the external environment.
A real study should also report the results of validation that preserves time order and residual diagnostics.
ETS forecasts by updating the repeating patterns of a time series
Exponential smoothing is a time series forecasting method that combines recent observations with past information to continually update the level, trend, and seasonality.
Simple exponential smoothing handles a relatively constant level, Holt’s method adds a trend, and Holt–Winters additionally accounts for seasonality. ETS adds the form of the error to these structures, letting you compare candidate models systematically.
But a more complex model does not always produce better forecasts. Check whether seasonality really exists, whether an additive or multiplicative structure is appropriate, and whether a damped trend is needed, and evaluate forecasting performance with validation that preserves time order.
The key to ETS is not chasing only the most recent value, but forecasting the future by updating the series’ level, direction of change, and repeating seasonal pattern to fit the data.