--- title: "Use DOUBLE_EXPONENTIAL_SMOOTHING for Double Exponential Smoothed Value" slug: "double-exponential-smoothing-function" description: "Learn to use DOUBLE_EXPONENTIAL_SMOOTHING to compute double exponentially smoothed values across a ranking Dimension in Pigment." updated: 2025-05-28T10:26:32Z published: 2025-08-22T12:00:18Z canonical: "kb.pigment.com/double-exponential-smoothing-function" --- > ## Documentation Index > Fetch the complete documentation index at: https://kb.pigment.com/llms.txt > Use this file to discover all available pages before exploring further. # DOUBLE_EXPONENTIAL_SMOOTHING function ## Description Computes a double exponentially smoothed version of the input Block over the ranking Dimension. ## Syntax `DOUBLE_EXPONENTIAL_SMOOTHING(Input Block [, Ranking Dimension [, alpha, beta])` ## Arguments | Argument | Type | Dimensions | Description | | --- | --- | --- | --- | | *Input Block* (required) | Number | Any Dimensions | This is the data source which will be smoothed. The Metric must be defined at least on the `Ranking Dimension` Dimension. | | *Ranking Dimension* (optional) | Dimension | NA | This is a Dimension applied to the time series taken in the `Input Block`. This is optional if it’s a datetime Dimension from the calendar. If this is not the case, then this is mandatory. It’s also mandatory if the Metric is defined on several time Dimensions. | | *alpha* (optional) | Number | no Dimension | Data smoothing factor, with a value between 0 and 1. The default value is 0.25 . | | *beta* (optional) | Number | no Dimension | Trend smoothing factor, with a value between 0 and 1. The default value is 0.1 . | ## Returns | Type | Dimensions | | --- | --- | | Number | Dimensions of *Input Block* | - Before the first non-blank value of the input Block, the function returns blank. - Between the first and the last non-blank value of the input Block, the function returns the value of the F series computed with the following process: ![](https://cdn.document360.io/e47cfe35-dc28-40c7-a083-6cf003073d8e/Images/Documentation/22e54b65-8bb6-424c-9f04-6a4e2fe9e12c.png) - After the last non-blank value of the input Block, the function returns the linear function result using the last slope and intercept computed. ![](https://cdn.document360.io/e47cfe35-dc28-40c7-a083-6cf003073d8e/Images/Documentation/b2343e29-8a4f-431b-adfc-1833eb34b403.png) > Blank observations (in the input Block) between the first non-blank value and the last non-blank values are considered as 0. ## Examples | Formula | Description | | --- | --- | | `DOUBLE_EXPONENTIAL_SMOOTHING(Actuals)` | Returned values are explained in the Returns section above. | | `DOUBLE_EXPONENTIAL_SMOOTHING(Actuals, Month, 0.2, 0.2)` | Example: ![](https://cdn.document360.io/e47cfe35-dc28-40c7-a083-6cf003073d8e/Images/Documentation/a4d35453-6a87-444d-8a1b-990b3d17c2a8.png) ## Using Exponential Smoothing as Forecasting Function A common use case for using the DOUBLE_EXPONENTIAL_SMOOTHING function is to prepare a forecast. It’s a good method when your observation series shows a trend and no specific seasonality. In that case the last smoothed value of the series is a good estimation of the next forecasted value. To do so you just need to offset the result by 1 period with this syntax: `DOUBLE_EXPONENTIAL_SMOOTHING(Observations)[SELECT: Month -1]` ![](https://cdn.document360.io/e47cfe35-dc28-40c7-a083-6cf003073d8e/Images/Documentation/55f92640-de9a-468f-960b-4ac619c2b002.png) ## See also Excel: no equivalent Related articles: [SIMPLE_EXPONENTIAL_SMOOTHING](/v1/docs/simple-exponential-smoothing-function) References: [Wikipedia Exponential Smoothing](https://en.wikipedia.org/wiki/Exponential_smoothing)