How to Forecast Ets Stat Function in Excel
Learn multiple Excel methods to forecast ets stat function with step-by-step examples and practical applications.
How to Forecast Ets Stat Function in Excel
Why This Task Matters in Excel
In virtually every industry, decision-makers have to answer a deceptively simple question: “What will happen next?” Sales managers want to know next quarter’s revenue, supply-chain planners must anticipate inventory needs, and HR departments forecast staffing requirements. Excel’s modern Exponential Triple Smoothing (ETS) engine brings sophisticated forecasting power directly to the spreadsheet, letting you stay in your familiar tool while applying the same algorithmic muscle found in dedicated analytics platforms.
At the heart of that engine is the ability not only to produce a forecast with FORECAST.ETS, but also to evaluate and understand the quality of that forecast through statistical diagnostics. That is where FORECAST.ETS.STAT comes in. It lets you pull out performance metrics such as Mean Absolute Error (MAE), Mean Squared Error (MSE), Mean Absolute Percentage Error (MAPE), and Smooth factor parameters. These statistics enable you to answer critical questions:
- Which product line is forecasted most accurately?
- How does a 12-month rolling window compare with a 36-month window?
- Should you override the automated seasonality setting or leave it on “Detect automatically”?
Finance, operations, marketing, and data-driven startups all benefit when forecasting accuracy is measured, tracked, and improved. Without the ability to diagnose forecast accuracy, you risk stock-outs, wasted marketing spend, or strategic decisions built on unreliable numbers. By mastering FORECAST.ETS.STAT, you can iterate quickly, test alternate timelines, choose the best statistic for your business context, and embed those metrics into dashboards or executive reports.
Excel excels (pun intended) in this area for several reasons. First, it is universally available; stakeholders already know how to open a workbook. Second, formulas are transparent—anyone can audit the exact logic rather than treating forecasting as a black box. Third, Excel’s newer functions such as SEQUENCE, FILTER, LET, and LAMBDA integrate smoothly with ETS functions, allowing dynamic, real-time updates. Finally, results can be combined with charts, conditional formatting, and Power Query, connecting the entire analytics workflow end-to-end. In short, learning to use FORECAST.ETS.STAT equips you to build forecasts that are both sophisticated and understandable, a rare combination in the analytics world.
Best Excel Approach
The most efficient way to derive statistical diagnostics for an ETS forecast is to pair FORECAST.ETS (which produces the predicted values) with FORECAST.ETS.STAT (which returns a single statistic summarizing the overall model). This tandem approach is ideal because both functions run on the same ETS engine, guaranteeing that the statistic accurately reflects the forecast you generated.
When to use it:
- You already have a time-series of historical values and a corresponding timeline.
- You need a single numeric indicator to represent the model’s accuracy or characteristics.
- You want to compare multiple models quickly—for example, different seasonality settings or aggregation levels.
Prerequisites:
- Historical data must be equally spaced (daily, weekly, monthly, etc.) or convertible to an equal spacing using Power Query or formulas.
- A numeric timeline column that corresponds to each value point.
- Excel 2016 or later (or Microsoft 365) because ETS functions are not available in older versions.
Core syntax:
=FORECAST.ETS.STAT(target_data, values, timeline, statistic_type, [seasonality], [data_completion], [aggregation])
Key parts:
target_data– The future point(s) for which you created a forecast. In most diagnostic scenarios, set this equal to the existing timeline so that the algorithm can back-test itself.values– The historical numbers you are forecasting (sales, website visits, etc.).timeline– The dates or numbers marking each observation.statistic_type– An integer 1-8 representing the statistic you want (1 = Alpha, 2 = Beta, 3 = Gamma, 4 = MASE, 5 = SMAPE, 6 = MAE, 7 = RMSE, 8 = MAPE).- Optional arguments fine-tune seasonality detection, how Excel fills missing data, and how duplicate data points are aggregated.
Alternative quick method: If you need the raw forecast rather than statistics, use:
=FORECAST.ETS(forecast_date, values, timeline, [seasonality], [data_completion], [aggregation])
Parameters and Inputs
FORECAST.ETS.STAT expects:
target_data– A numeric or date array equal in size tovalues. Best practice is to reference the same timeline (e.g., [B2:B49]).values– Numeric data with no text cells. Non-numeric entries result in#VALUE!.timeline– Dates or monotonically increasing numbers with a uniform step. If gaps exist, handle with the optionaldata_completionargument or clean data beforehand.statistic_type– Whole numbers 1 through 8. Using anything else returns#NUM!.
1 = Alpha
2 = Beta
3 = Gamma
4 = MASE
5 = SMAPE
6 = MAE
7 = RMSE
8 = MAPE[seasonality]– 0 (no seasonality), 1 (auto detect), or any integer 2–8784. Leave blank to default to automatic detection.[data_completion]– 0 tells Excel not to fill missing points, 1 (default) fills by interpolation.[aggregation]– A number 1–7 dictating how duplicate timestamps are aggregated (1 = AVERAGE, 2 = COUNT, 3 = COUNTA, 4 = MAX, 5 = MEDIAN, 6 = MIN, 7 = SUM).
Data prep tips:
- Ensure timeline is sorted ascending.
- Convert all dates to Excel serials if importing from text.
- Check for hidden characters, blank rows, or mixed data types.
- Outliers can heavily skew statistics—consider trimming or winsorizing before forecasting.
- For sparse series, consider higher
aggregationto smooth noise.
Step-by-Step Examples
Example 1: Basic Scenario
Imagine a sheet named “MonthlySales” with columns:
| A | B |
|---|---|
| Date | Revenue |
| 2022-01-01 | 110,000 |
| 2022-02-01 | 123,000 |
| … | … |
| 2023-12-01 | 184,000 |
The range is [A2:B25]; we have 24 months of data. We want to understand how accurate an ETS model is before forecasting 2024.
- Create a helper column C labelled Forecast_2022-2023. In cell C2 enter:
=FORECAST.ETS(A2, $B$2:$B$25, $A$2:$A$25)
Drag down to C25. Now C contains the model’s prediction for each historical month, essentially performing back-testing.
- Compute the MAPE (stat_type 8). In D2:
=FORECAST.ETS.STAT($A$2:$A$25, $B$2:$B$25, $A$2:$A$25, 8)
The cell returns a single percentage value, e.g., 4.7%, representing average absolute percentage error across the 24 months.
-
Interpret the result: A MAPE below 5% suggests an excellent model, while above 15% might need tuning. Because we’re at 4.7%, confidence is high.
-
Forecast 12 months ahead. In E26 (date 2024-01-01):
=FORECAST.ETS(A26, $B$2:$B$25, $A$2:$A$25)
Extend to E37 (December 2024). Pair with a line chart layered over actuals to visually demonstrate performance.
Why this works: The same ETS engine drives both formulas, so the statistic precisely evaluates the algorithm used for forecasting. Troubleshooting: If you get #NUM!, check for missing dates, non-uniform spacing, or an invalid statistic type. If the forecast seems jagged, set seasonality explicitly to 12 to enforce yearly periodicity.
Variation: Compare MAPE with and without seasonality. In D3:
=FORECAST.ETS.STAT($A$2:$A$25, $B$2:$B$25, $A$2:$A$25, 8, 0)
If MAPE increases to 9%, keep auto-seasonality on.
Example 2: Real-World Application
A national retailer tracks weekly demand for three product categories (A, B, C). Data sits in a sheet “WeeklyDemand”:
| WeekEnd | CatA | CatB | CatC |
|---|---|---|---|
| 2021-W01 | 4,510 | 9,870 | 3,200 |
| … | … | … | … |
| 2023-W52 | 6,210 | 11,340 | 4,150 |
Management needs to decide safety stock levels for the next quarter and requests both forecasts and accompanying error metrics.
Steps:
- Unpivot data with Power Query so that the table has columns: Date, Category, Units.
- Load back to Excel Table TblDemand.
- Build a PivotTable with Date as Rows, Category as Filters, and Units as Values.
- Next to the PivotTable, dynamically compute forecast statistics for the selected category using
GETPIVOTDATAwrapped inLET:
=LET(
cat, Slicer_Category,
vals, FILTER(TblDemand[Units], TblDemand[Category]=cat),
dates, FILTER(TblDemand[Date], TblDemand[Category]=cat),
mape, FORECAST.ETS.STAT(dates, vals, dates, 8, 52),
mape)
Here, Slicer_Category is a single cell linked to a slicer showing the chosen category. The result instantly updates when users select a different category.
-
Display MAE and RMSE similarly by changing the statistic type to 6 and 7. Place these figures above a chart for executive visibility.
-
Decision-making: Category A shows MAPE 3.2%, Category B 7.5%, Category C 11.9%. Planners set narrower safety stock buffers for Category A and wider buffers for Category C.
Integration:
- Use conditional formatting to color the headline metric red when MAPE above 10%.
- Add a formula‐driven comment:
"MAPE " & TEXT(mape, "0.0%") & IF(mape greater than 0.1," – Review Seasonality"," – Good").
Performance considerations: Weekly data across three years means 156 rows per category, well within Excel’s limits. If you expand to hundreds of categories, consider using Power Pivot measures to push computation to the VertiPaq engine.
Example 3: Advanced Technique
You manage an e-commerce platform with hourly traffic records: 8,760 data points per year. You need a rolling dashboard that automatically shows the latest 30-day forecast accuracy statistic every morning.
Data layout: Table TblTraffic with columns TimeStamp, Sessions.
- Generate dynamic arrays using
SORTandTAKEto grab the last 30 days:
=LET(
last30, FILTER(TblTraffic, TblTraffic[TimeStamp] >= TODAY()-30),
vals, last30[Sessions],
times, last30[TimeStamp],
smape, FORECAST.ETS.STAT(times, vals, times, 5, 24),
smape)
Here we specify seasonality 24 because traffic has strong daily cycles.
- Wrap the entire logic in a LAMBDA named
TrafficSMAPEso you can call:
=TrafficSMAPE(TODAY(), 30)
The LAMBDA parameters allow you to pass the reference date and look-back window.
-
Use the result in a dashboard card with a gauge icon that turns red if SMAPE above 10%.
-
Optimize performance: Avoid recalculating on every change. In Formulas ➜ Calculation Options, set to Manual and trigger updates with a macro or Ctrl+Alt+F9 during off-peak hours.
Edge cases handled:
- If fewer than 336 points (24×14 days) are available, the function returns
N/Aand the card displays “Insufficient data.” - For daylight-saving hour gaps,
data_completiondefaults to 1, letting Excel interpolate the missing hour automatically.
Professional tip: Store the daily SMAPE results in a historical log using Power Automate or VBA so you can plot accuracy trends and detect model drift over time.
Tips and Best Practices
- Use the same timeline for evaluation – Always feed
target_datathe exact timeline you used to generate the forecast; otherwise statistics may not align. - Control seasonality deliberately – Start with automatic detection, compare against explicit settings (e.g., 12, 52, 24) using MAPE or SMAPE, and document your choice.
- Integrate with
LET– Capture arrays once, reuse them across multiple statistics to reduce recalculation overhead. - Visualize diagnostics – Pair numeric results with sparklines or conditional icons. Stakeholders absorb visuals faster than decimals.
- Automate recalculation windows – For large datasets, schedule heavy forecast refreshes during low-usage hours to keep workbooks responsive.
- Version your models – Store statistic values in a log sheet tagged with date, parameters, and notes so you can backtrack when a model degrades.
Common Mistakes to Avoid
- Non-uniform timeline spacing – Skipped weeks or duplicate timestamps cause
#NUM!. Validate spacing with=UNIQUEand=SEQUENCE. - Wrong statistic_type reference – Accidentally using 9 returns
#NUM!. Keep a small legend next to your formulas or use Data Validation with a drop-down. - Blending currencies and numbers – If your
valuescolumn contains text symbols like “$”, the function fails. Clean data withVALUEor Power Query. - Overfitting seasonality – Forcing a 365 daily seasonality on only a 200-day sample can inflate accuracy metrics, giving a false sense of confidence. Compare with and without seasonality.
- Ignoring scale when comparing products – MSE is scale-dependent. Use MAPE or SMAPE when benchmarking across differently sized series.
Alternative Methods
Although FORECAST.ETS.STAT is powerful, other pathways exist:
| Method | Pros | Cons | Best for |
|---|---|---|---|
FORECAST.LINEAR + manual error calc | Simple, backward compatible | Linear only; no seasonality | Straight-line trends |
| Data Analysis ToolPak ➜ Exponential Smoothing | GUI driven, quick | Limited stat outputs, no dynamic formulas | One-off reports |
Power BI / DAX FORECAST.ETS (preview) | Scalable, interactive visuals | Requires Power BI; formulas differ | Enterprise dashboards |
Python prophet via Power Query Run Python Script | Highly configurable | Needs Python install; harder for business users | Data science teams |
| VBA wrapper around R forecast package | Unlimited stats | Maintenance overhead | Specialist departments |
When to switch: If your data has complex multiple seasonal cycles (e.g., both hourly and weekly), Python’s prophet may outperform Excel. If you need real-time dashboarding for thousands of series, Power BI scales better. However, for the vast majority of single-series business cases, Excel’s built-in ETS remains the quickest path from question to insight.
FAQ
When should I use this approach?
Use FORECAST.ETS.STAT whenever you need a quantitative accuracy metric for an ETS forecast inside Excel. Typical scenarios: validating a forecast before presenting to management, comparing seasonal settings, or building self-monitoring dashboards that alert you when accuracy slips.
Can this work across multiple sheets?
Absolutely. Place your data on one sheet, timeline on another, and reference them directly. The function only needs valid ranges. Use Scope-named ranges or structured references like Sheet2!Sales[Units] to stay organized.
What are the limitations?
ETS assumes additive seasonality and may struggle with multiplicative patterns. The function does not output prediction intervals (use FORECAST.ETS.CONFINT for that). Excel caps seasonality at 8,784 (one year of hourly data). Very large ranges will calculate more slowly than Power BI or Python.
How do I handle errors?
#N/A – Mismatched array sizes; make sure values and timeline lengths are equal.
#NUM! – Invalid statistic_type, negative seasonality, or irregular timeline.
#VALUE! – Non-numeric text in values or statistic_type not an integer. Fix by cleaning data or wrapping text numbers in VALUE.
Does this work in older Excel versions?
No. ETS functions were introduced in Excel 2016 (Windows) and Excel 2019 (Mac). For earlier versions, use FORECAST.LINEAR, the Data Analysis ToolPak, or external tools.
What about performance with large datasets?
For tens of thousands of points, set calculation to Manual, use dynamic arrays sparingly, cache timeline arrays with LET, and close other heavy workbooks. If recalculation exceeds 5-10 seconds, consider pushing forecasting logic to Power Pivot or a scripting language and importing results.
Conclusion
Mastering FORECAST.ETS.STAT elevates you from simply generating numbers to measuring and managing forecasting accuracy. You can iterate models quickly, justify your choices with hard evidence, and embed diagnostics into slick dashboards that inspire confidence. This competency dovetails with broader Excel skills—data cleaning, charting, Power Query—and lays a foundation for advanced analytics conversations. Keep experimenting, log your results, and soon you’ll be the go-to forecasting expert in your organization.
Related Articles
How to Show the 10 Most Common Text Values in Excel
Learn multiple Excel methods to list the 10 most frequent text values—complete with step-by-step examples, business use cases, and expert tips.
How to Abbreviate Names Or Words in Excel
Learn multiple Excel methods to abbreviate names or words with step-by-step examples and practical applications.
How to Abbreviate State Names in Excel
Learn multiple Excel methods to abbreviate state names with step-by-step examples, professional tips, and real-world applications.