RUNNINGPROD
RUNNINGPROD('Node')
The RUNNINGPROD function calculates the cumulative product of a node along the time axis. Each value is multiplied by all preceding values in the time series.
Use this function when you need to accumulate multiplicative effects over time, such as chained growth factors: RUNNINGPROD('GrowthFactor').
Parameters
- NodeNode referenceRequired
- Input node, specified using the node name in single quotes (e.g.
'GrowthFactor')
Output shape
- Dimensionality
- Same as input.
- Values
- Each value is the product of all values from the first time period up to and including the current one.
- Row count
- Same as input.
Watch out
- The input must have a time level. If the input has no time dimension, the function fails.
- A zero value at any point makes all subsequent values zero, since every following product includes that zero.
- The accumulation starts from the first time period in the series. There is no window parameter.
- The accumulation is computed independently for each combination of non-time dimensions.
Examples
Cumulative product over time
This example shows how RUNNINGPROD multiplies each value by all previous values along the time axis.
Input node: 'GrowthFactor'
| Year | Value |
|---|---|
| 2025 | 1.1 |
| 2026 | 1.2 |
| 2027 | 1.2 |
Formula: RUNNINGPROD('GrowthFactor')
| Year | Calculation | Result |
|---|---|---|
| 2025 | — | 1.1 |
| 2026 | 1.1 × 1.2 | 1.32 |
| 2027 | 1.1 × 1.2 × 1.2 | 1.584 |
Compounding a base value with growth rates
Multiplying a base value by the running product of (1 + growth rate).
Input node: 'GrowthRate' (as decimal, e.g. 0.05 = 5%)
| Year | Value |
|---|---|
| 2025 | 0.05 |
| 2026 | 0.10 |
| 2027 | 0.03 |
| 2028 | 0.00 |
Formula: RUNNINGPROD(ADDEACH('GrowthRate', 1))
| Year | Calculation | Result |
|---|---|---|
| 2025 | — | 1.05 |
| 2026 | 1.05 × 1.10 | 1.155 |
| 2027 | 1.05 × 1.10 × 1.03 | 1.18965 |
| 2028 | 1.05 × 1.10 × 1.03 × 1.00 | 1.18965 |
Multiplying a base value (e.g. 1000) by this result gives the compounded projection: 1000 * 1.18965 = 1189.65 in 2028.
See also
- RUNNINGSUM
- When you need additive accumulation over time instead of a cumulative product.
- FACT
- When you need multiplication across discrete integer steps rather than a running product over a time series.