The Excel FORECAST.ETS.SEASONALITY function returns the length in time of a seasonal pattern based on existing values and a timeline.


Get length of the seasonal pattern

Return value 

Season length in timeline units


  • values - Existing or historical values (y values).
  • timeline - Numeric timeline values (x values).
  • data_completion - [optional] Missing data treatment (0 = treat as zero, 1 = average). Default is 1.
  • aggregation - [optional] Aggregation behavior. Default is 1 (AVERAGE). See other options below.

How to use 

The FORECAST.ETS.SEASONALITY function returns the length in time of a seasonal pattern based on existing values and a timeline. FORECAST.ETS.SEASONALITY can be used to calculate the season length for numeric values like sales, inventory, expenses, etc. exhibit a seasonal pattern. If a pattern cannot be detected, FORECAST.ETS.SEASONALITY returns zero.


In the example shown, the formula in cell H16 is:


where C5:C16 contains existing values, and B5:B16 contains a timeline. With these inputs, the FORECAST.ETS.SEASONALITY function returns 4. The result is 4 because the values in C5:C16 represent quarterly sales data, and the length of the season is 1 year, which is 4 quarters. 

The chart to the right shows this data plotted in a scatter plot.

Argument notes

The values argument contains the dependent array or range of data, also called y values. These are existing historical values from which a season length will be calculated.

The timeline argument is the independent array or range of values, also called x values. The timeline, must consist of numeric values with a constant step interval. For example, the timeline could be yearly, quarterly, monthly, daily, etc. The timeline can also be a simple list of numeric periods, as in the example shown.

The data_completion argument is optional and specifies how FORECAST.ETS.SEASONALITY should handle missing data points. The options are 1 (default) and zero. By default, FORECAST.ETS.SEASONALITY will provide missing data points by averaging neighboring data points. If zero is provided for data_completion, FORECAST.ETS will treat missing data points as zero.

The aggregation argument is optional, and controls how the function should aggregate data points when the timeline contains duplicate timestamps. The default is 1, which specifies AVERAGE. Other options are given in the table below.

Note: It is better to perform aggregation before using FORECAST.ETS.SEASONALITY to make results as accurate as possible.

Value Behavior
1 (or omitted) AVERAGE


The FORECAST.ETS.SEASONALITY function will return errors as shown below.

Error Cause
  • seasonality is not numeric
  • data_completion is not numeric
  • aggregation  is not numeric
  • values and timeline are not the same size
  • Consistent step cannot be determined in timeline
  • All timeline values are the same
  • The value for data_completion is not 0 or 1
  • The value for aggregation is not within 1-7
Dave Bruns Profile Picture

AuthorMicrosoft Most Valuable Professional Award

Dave Bruns

Hi - I'm Dave Bruns, and I run Exceljet with my wife, Lisa. Our goal is to help you work faster in Excel. We create short videos, and clear examples of formulas, functions, pivot tables, conditional formatting, and charts.