FORECAST.ETS.STAT.ADD in Collabora Office: Additive Model Statistics
Inspect fitted smoothing parameters, errors and timeline diagnostics. Worked seasonal source-model examples with explicit native-test limits.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: FORECAST.ETS.STAT.ADD lets you inspect fitted smoothing parameters, errors and timeline diagnostics. Choose it when inspecting an additive model; select a forecast function when you need a future value.
Syntax and intended use
=FORECAST.ETS.STAT.ADD(values; timeline; stat_type; [period_length]; [data_completion]; [aggregation])
Formulas here use English worksheet names and semicolon separators. Square brackets describe optional arguments and are not typed. The first two arguments are values then timeline; the third is a statistic selector, not a future target. Preserve Collabora’s own gamma/trend and beta/seasonal naming.
| Selector | Returned item | How to read it |
|---|---|---|
| 1 | Alpha | Base/level smoothing parameter |
| 2 | Gamma | Trend smoothing parameter |
| 3 | Beta | Periodic-deviation smoothing parameter |
| 4 | MASE | Mean absolute scaled error; depends on its scaling denominator |
| 5 | SMAPE | Symmetric mean absolute percentage error; a relative error measure |
| 6 | MAE | Mean absolute error, in observation units |
| 7 | RMSE | Root mean squared error, in observation units |
| 8 | Timeline step | Months for recognized monthly cadence; otherwise date-day or numeric units |
| 9 | Samples per period | Supplied seasonal period, or detected period when period_length is 1 |
Additive seasonality adds a seasonal adjustment to level plus trend. It is a useful candidate when the seasonal swing stays roughly constant in the same measurement units as the observations. A visually additive pattern does not establish the best fitted model or its future accuracy.
Prepare paired observations before fitting
Use two numeric columns with one value per timestamp, equal-sized ranges, and headers outside those ranges. Sort the two columns together if you sort them yourself. Collabora documents internal timeline sorting, but sorting only one column changes which observation belongs to each time. Use a consistent positive timeline step; any intended gaps must be whole multiples of that step. A measured zero belongs in the values column. An absent timestamp is a different data problem.
The fixtures below use simple integer time indexes to avoid locale-dependent dates. For monthly records, enter real dates such as =DATE(2025;1;1), not ambiguous text such as 01/2025. The pinned implementation recognizes same-day-of-month dates and converts them to month units. This special handling does not license arbitrary irregular timestamps. Month-end transitions, time fractions and monthly gaps need separate target-build checks.
For functions with period_length, use an integer: 0 explicitly selects nonseasonal double exponential smoothing (EDS); 1 requests automatic detection; 2 or more requests that many samples per seasonal cycle. The omitted default is 1. A value of 1 does not mean a literal one-observation season. Some Help example descriptions say “one sample per period,” but that conflicts with the formal parameter description. A four-quarter cycle means 4 samples; a twelve-month cycle means 12, provided the input cadence actually matches.
The ETS family exposes data_completion and aggregation. Completion defaults to 1 (TRUE); 0 (FALSE) requests zero filling. The documented duplicate-timestamp choices are 1 AVERAGE (default), 2 COUNT, 3 COUNTA, 4 MAX, 5 MEDIAN, 6 MIN and 7 SUM. Use these integer codes, not function names in that argument. Numeric COUNT/COUNTA semantics do not establish acceptance of text observations. These examples deliberately contain no gaps or duplicates, so changing their cleanup options should not change the input dataset.
Important preprocessing discrepancies
Do not quietly rely on default AVERAGE to repair duplicate timestamps. In the pinned Collabora implementation, case 1 removes later equal-timestamp rows without computing their mean. The Help describes AVERAGE instead. For duplicate observations 90 and 150, the arithmetic mean is 120 and sum is 240; neither calculation establishes which observation the affected default branch retains after sorting. Resolve duplicates deliberately upstream, or verify the intended aggregation against the exact build before trusting a forecast.
Help calls completion by 1 interpolation. The saved source calculates a single mean of the endpoints for each missing block. With values 60 at time 3 and 90 at time 6, linear interpolation would insert 70 and 80 at times 4 and 5; that source instead constructs 75 and 75. These are independent preprocessing arithmetic controls, not native observations. Help’s “up to 30%” description also leaves the denominator unclear: the source divides inserted missing points by the original supplied count after duplicate handling. Two missing points and fourteen supplied points give 2/14, not 2/16. Avoid threshold claims without a target test.
Range-shape, numeric-content and option errors are also documentation-versus-runtime questions. Help describes particular spreadsheet error labels, but the source sometimes raises a different internal error category, including the unequal-range path. No exact native error display is verified here. Fix the paired data and integer options first; do not use this guide as an error-code compatibility table. Fractional options, blank-cell coercion, array-entry gestures and automatic spill behavior remain unverified.
Worked seasonal example: four noisy cycles
Enter the following synthetic teaching data in A1:B17. Keep the headers in row 1; the formulas use only the sixteen numeric observations. The same data are used in the ADD and MULT guides so model comparisons do not change the history.
| Timeline (A) | Values (B) |
|---|---|
| 1 | 73 |
| 2 | 94 |
| 3 | 123 |
| 4 | 95 |
| 5 | 88 |
| 6 | 121 |
| 7 | 147 |
| 8 | 122 |
| 9 | 111 |
| 10 | 143 |
| 11 | 182 |
| 12 | 142 |
| 13 | 125 |
| 14 | 171 |
| 15 | 208 |
| 16 | 169 |
The four block means are 96.25, 119.5, 144.5 and 168.25. Their ranges are 50, 59, 71 and 83: seasonal variation grows broadly with the level, with deliberate noise. This makes a useful comparison between fixed-size additive adjustments and proportional multiplicative adjustments; it does not predetermine the best future model.
How to read the numbers: all fitted values below are independently checked calculations from the pinned Collabora source model, rounded for display. They are not observed results from an installed Collabora application. The history is complete, positive and uniquely timed, the timeline step is 1, and the seasonal period is explicitly 4. The checked mathematical harness does not execute worksheet parsing, error displays or the application interface.
Read all nine statistics with scalar formulas
Put selectors 1 through 9 in D2:D10. In E2 enter and copy down through E10:
=FORECAST.ETS.STAT.ADD($B$2:$B$17;$A$2:$A$17;D2;4;1;1)
Each cell requests one statistic, avoiding an unverified array-entry assumption. The expected source-model outputs for the same seasonal fit are:
| Selector | Meaning | ADD source model | MULT source model |
|---|---|---|---|
| 1 | Alpha, level | 0.007812500 | 0.250000000 |
| 2 | Gamma, trend | 1.000000000 | 0.131835938 |
| 3 | Beta, seasonal | 1.000000000 | 0.601562500 |
| 4 | MASE | 0.103126489 | 0.100183211 |
| 5 | SMAPE | 0.020317531 | 0.021944732 |
| 6 | MAE | 3.012766714 | 2.926780948 |
| 7 | RMSE | 4.526982228 | 3.754327802 |
| 8 | Timeline step | 1.000000000 | 1.000000000 |
| 9 | Samples per period | 4.000000000 | 4.000000000 |
Use the ADD column for this function. Selector 2 is gamma/trend and selector 3 is beta/seasonal in Collabora’s naming. Do not swap them to match another forecasting library. A smoothing weight is not a confidence level, a percentage of explained variation or a causal coefficient. Selector 8 is 1 because the numeric timeline advances by one; selector 9 is 4 because this fit explicitly requests four observations per cycle.
What the errors actually measure
The pinned calculation scores fitted residuals from the second observation through the last. With sixteen observations, that is fifteen residuals. Its residual is fitted forecast minus observation. MAE averages their absolute values; RMSE is the square root of their mean squared value. RMSE emphasizes larger misses. Both are in the same units as the observations.
For MASE, the denominator averages fourteen absolute adjacent changes, beginning with observation 3 minus observation 2, rather than including the first adjacent change. On these data their sum is 409 and their mean is 409/14 = 29.214286. Dividing the model’s MAE by that mean gives MASE. It is the source’s particular scaling convention, not a generic seasonal-naive benchmark over all rows.
SMAPE is twice the average of absolute residual divided by the sum of absolute fitted forecast and absolute observation, over those same fifteen residuals. The returned value is a fraction: ADD’s 0.020317531 corresponds to about 2.031753% when expressed as a percentage; MULT’s 0.021944732 corresponds to about 2.194473%. Do not multiply by 100 and also apply a spreadsheet percent format.
The MULT fit has smaller RMSE and MAE on this history, while ADD has smaller SMAPE. The criteria weight errors differently. Neither result proves that MULT is universally better or that ADD will forecast new observations better. Constant-series MASE and SMAPE near zero denominators need particular care; this positive, varying fixture avoids them and establishes no general zero-denominator behavior.
Advanced checks: model choice and nonseasonal control
Keep the history, period, completion and aggregation identical when comparing statistics with the corresponding point forecast. A chart of residuals can reveal runs, changing variance or remaining seasonal patterns even when a summary error is small. Use held-out future observations for model selection; these diagnostics are in-sample, and no held-out accuracy result is claimed here.
To examine the explicit nonseasonal alternative, change only period 4 to 0. On the same noisy history both models have source-model RMSE 22.495225 and selector 9 equal to 0. This does not establish what automatic selection would do: period 1 requests detection, and automatic fallback retains a different period state. A literal 0 and an automatically selected model must not be conflated.
For an exact simple control on a separate sheet, use timeline 1..6 and values 10, 12, 14, 16, 18, 20, with headers in A1:B1, timeline in A2:A7, values in B2:B7, and explicit period 0. Use =FORECAST.ETS.STAT.ADD($B$2:$B$7;$A$2:$A$7;D2;0;1;1) with selectors 1..9 in D2:D10 and copy down. Selectors 1..9 are source-model expectations 0, 0, 0, 0, 0, 0, 0, 1, 0. The fitted line is exact, the adjacent-change scale is nonzero, and the zero error is only a synthetic check. Returning a zero training RMSE does not certify certainty about real future data.
Why another ETS implementation may disagree
The source uses its own nested search for alpha, beta and gamma, including endpoint ties and a resolution of 0.001. This is not a promise of a globally optimal statistical fit. It retains seasonal-buffer changes between trial fits; restarting those buffers for every trial changes the algorithm. Its additive initialization divides the first observation by the initial seasonal index, and its ADD versus MULT seasonal-index tests differ at the period boundary. The source-model calculation preserves these details rather than replacing them with a textbook Holt-Winters implementation.
The future seasonal lookup also has a specific modulo offset, including at a whole-period horizon. Do not substitute another product’s ETS coefficients, generic library predictions or hand-extended block means and call them Collabora results. Refit after correcting observations, but compare the same history, period and model before drawing conclusions from a change.
Troubleshooting the documented contract
- Different-sized or nonnumeric history ranges: check both ranges exclude headers and still pair each value with its timestamp. The wrapper rejects incompatible shapes/numeric matrices; its internal error category is not a verified on-screen error label.
- Irregular timeline: establish a consistent positive step and aggregate duplicate observations deliberately. Missing dates and measured zero values are different inputs.
- Too little seasonal history: supply at least two complete cycles for the requested period. More data may improve estimation, but do not invent missing observations merely to satisfy a count.
- Invalid options: use the stated integer period and option codes. Fractional coercions of completion/aggregation/selectors are not a supported shortcut. A negative or fractional period is rejected by the pinned wrapper.
- Unexpected statistic: verify the values/timeline argument order, statistic selector, fixed references and explicit period before interpreting the fitted model. Training fit alone cannot establish future reliability.
The Help/source discrepancies above remain unresolved at the installed-product level. No invalid or potentially unsafe case was executed to manufacture an error table.
Version and verification limits
The contract uses Collabora’s English Help archived on October 17, 2026, scoped to Office 26.04, and the co-26.04 implementation at commit c1013fad0d38683630b48c01b6d5208b8d81181e, retrieved October 19. The latest Help URLs are mutable; the archived bytes establish what was reviewed. A later unsuccessful Help fetch is not fresh verification. First introduction and last functioning installed build are not established. Desktop, Online and mobile editions may differ.
The example calculations were checked using a bounded extraction of the pinned source, an independently written mathematical implementation, full optimizer-state comparisons and a separate arithmetic review. That establishes source-model expectations on the stated fixtures, not vendor certification or identical behavior in every build. These example calculations did not execute formulas in a Collabora application; no native result or screenshot was obtained. No installed RNG or recalculation behavior was tested. Parser/coercion behavior, arrays/spills, calendars, unsupported boundaries and exact displayed error labels remain unverified. The guide is a documentation-qualified tutorial; it is not a claim of native product testing.
Related guides and references
- FORECAST.ETS.ADD.
- FORECAST.ETS.MULT.
- FORECAST.ETS.PI.ADD.
- FORECAST.ETS.PI.MULT.
- FORECAST.ETS.STAT.MULT.
- FORECAST.ETS.SEASONALITY.
- Linear FORECAST.
- Collabora official function Help, reviewed from the archived snapshot.
- Pinned Collabora implementation, including preprocessing, fitting and worksheet dispatch.