FORECAST.ETS.SEASONALITY Function in Microsoft Excel: Syntax, Examples & Troubleshooting
Identify the cycle length Excel detects with FORECAST.ETS.SEASONALITY. Reproduce Microsoft’s 12-month example and keep timeline units, aggregation and data completion consistent.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: FORECAST.ETS.SEASONALITY returns the number of observations in the recurring pattern detected by Excel’s forecasting algorithm. A result of 12 on monthly data means twelve months per pattern; it does not mean twelve days.
Syntax and arguments
=FORECAST.ETS.SEASONALITY(values, timeline, [data_completion], [aggregation])
Values and timeline are required, equally sized ranges of historical observations and numeric timestamps. There is no target-date argument and no optional seasonality argument: this function detects the period rather than taking a period as input. Unlike the forecast itself, it does not return a predicted passenger count or sales value.
The timeline must have a regular step and cannot contain zero timestamps. Excel can sort it internally. A monthly series dated on the first of each month is a documented regular timeline even though months contain different day counts.
The optional data_completion setting distinguishes missing observations from real zeros: 1 or omitted fills missing points using the neighboring average; 0 treats missing points as zero. Microsoft documents support for up to 30% missing data. A recorded zero already present in your dataset is a value, not an absent timestamp.
aggregation selects how equal timestamps are combined. The individual worksheet reference describes 0 as the default average. Microsoft’s forecast aggregation enumeration, checked October 17, 2026, lists 1 Average, 2 Count, 3 CountA, 4 Max, 5 Median, 6 Min, 7 Sum. These sources do not express the default consistently. The same worksheet page also mentions duplicate-timestamp #VALUE! errors while describing aggregation of duplicates. These documentation inconsistencies were not resolved by native testing. For predictable preparation, aggregate raw records yourself into one value per timestamp. The source workbook used here has unique timestamps, so its examples do not depend on choosing among duplicate-handling methods.
Reproducible source dataset
Download Microsoft’s original forecast sample workbook, linked from the official function reference and checked October 17, 2026. On Forecast.ets sample, use all 57 historical rows, with dates in A4:A60 and airport-passenger counts in B4:B60. The history runs from January 2009 through September 2013. A4 is January 1, 2009 (date serial 39814), B4 is 2644539; A60 is September 1, 2013 (41518), B60 is 3781168.
Keep the entire dataset. These endpoint values are an identity check, not enough data to reproduce the fit by themselves. The workbook contains actual stored formulas and cached outputs. Results below are Microsoft-workbook cached results, read without recalculation, not fresh tests in Excel or independently reconstructed ETS estimates.
Worked example: Microsoft’s annual seasonal pattern
- Open the source workbook and retain all data in A4:B60.
- Inspect cell I75 on Forecast.ets sample.
- Its worksheet formula is:
=FORECAST.ETS.SEASONALITY($B$4:$B$60,$A$4:$A$60,1,1)
The stored result is 12. The data is sampled monthly, so the detected period corresponds to one year of monthly observations. The first 1 sets neighboring-average missing-data completion; the second is the explicit aggregation setting used by the vendor’s workbook. It is not a manually supplied twelve-month period.
Because there are no repeated timestamps in the sample, its cached result does not adjudicate the aggregation-documentation discrepancy. Copying just two endpoint rows would discard the seasonal history and is not a valid reproduction.
Second example: use the detected period as a report label
With the vendor’s saved 12 in I75, enter:
=IF(I75=12,"12-month cycle","Review detected cycle")
Expected text is 12-month cycle. This label follows independently from the saved number and the known monthly sampling frequency. It would be misleading on weekly observations, where 12 would represent twelve weeks instead.
If you need to state how much history is available, =COUNT(B4:B60) is independently expected to return 57 because every row in that exact history range is numeric. Dividing 57 by the detected 12 gives 4.75 cycles’ worth of observations; it does not prove that all those cycles are identical or equally informative.
Advanced application: audit a forecast’s assumptions
Microsoft states that automatic seasonality detected here matches the automatic seasonality used by FORECAST.ETS when the relevant input and completion settings match. Use this function alongside an automatically seasonal forecast to make its assumed cycle visible to reviewers.
Keep the same historical ranges, missing-data treatment and aggregation policy in both formulas. If you later force a forecast to use a manually chosen period, this detector still reports its own automatically detected period; it does not become a report of your manual override. A mismatch can be useful evidence for a modeling discussion, rather than an Excel calculation error.
Do not use a detected period as proof of a business cause. Regular patterns may reflect calendar effects, reporting conventions or the history selected. If the sampling interval changes, rebuild a consistent timeline before comparing cycle lengths.
Troubleshooting
#N/A indicates a values/timeline size mismatch. #NUM! indicates that Excel cannot identify the required regular step. The documentation also lists #VALUE! for duplicated timeline entries while describing aggregation of duplicates elsewhere; avoid depending on that ambiguity by preparing unique timestamps first.
The function reference does not give a full table of output behavior for every flat, short or nonseasonal dataset. No arbitrary fixture or exact fallback value is asserted here. For an unexpected result, inspect the actual history, interval, missing points and preprocessing rather than forcing a preferred answer into the detector.
Compatibility and verification
Microsoft’s reference checked on October 17, 2026 lists: Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016. Microsoft’s alphabetical catalog, checked October 17, 2026, identifies Excel 2016 as the introduction-version marker for FORECAST.ETS.SEASONALITY. This perpetual-release marker does not establish an earlier Microsoft 365 preview or rollout date. Platform restrictions remain separate. The last functioning version is unverified; no retirement is asserted.
The individual reference explicitly excludes Excel for the web, iOS and Android. Use a supported desktop build. The sample workbook’s saved outputs do not establish which current build will reproduce every last decimal. Example verification: ETS fitted results are explicitly Microsoft-workbook cached results, not independently fitted predictions. Only identified arithmetic, reference substitution and display checks are independently derived. These examples have not been tested in Microsoft Excel. No screenshot or native execution is claimed.
Related guides and source
COUNT in Excel | IF in Excel | DATE in Excel | AVERAGE in Excel
- Microsoft FORECAST.ETS.SEASONALITY reference, retrieved October 17, 2026.