Split a time series into its trend, its repeating seasonal pattern, and whatever's left over — the noise.
Your data
Observedblue = data, red = trend
Seasonal pattern (one cycle)
Residual (noise)
Model: observed = trend × seasonal × residual. The seasonal pattern repeats every 12 points and averages to 1 (≈1, as it should for a multiplicative model). The first and last 6 points have no trend value, since a centered moving average needs a full window of neighbors on both sides.
How to use this tool
Paste your own values, one per line, in time order, or pick a preset.
Set the period — 12 for monthly data with a yearly cycle, 7 for daily data with a weekly cycle, and so on.
Choose additive if the seasonal swing stays a fixed size, or multiplicative if it grows with the trend.
Read the trend line, the one-cycle seasonal pattern, and the residual noise left over.
Formula Reference
Additive model
observed = trend + seasonal + residual
Multiplicative model
observed = trend × seasonal × residual
Trend
a centered moving average over one full period
Seasonal pattern
the average detrended value at each position in the cycle, normalized to sum to 0 (additive) or average to 1 (multiplicative)
How do I choose between additive and multiplicative?+−
Look at whether the seasonal swings stay roughly the same absolute size as the series grows (additive) or grow proportionally along with the trend (multiplicative) — a growing retailer's December spike usually gets bigger in absolute terms as the business grows, which is the multiplicative case.
Why are some trend points missing at the start and end?+−
The trend is a centered moving average, which needs a full window of neighboring points on both sides. With a period of 12, the first and last 6 points can't get a centered value, since there aren't enough neighbors on one side.
Why does the seasonal pattern repeat exactly every cycle?+−
Classical decomposition assumes the seasonal pattern is fixed — it estimates one value per position in the cycle by averaging across every cycle in the data, then repeats that same fixed pattern throughout. This is a simplification; a slowly evolving seasonal pattern needs a more advanced method like STL.
What should the residual look like?+−
Ideally close to random noise with no obvious remaining pattern. A residual that still trends, still cycles, or has a few extreme spikes suggests the wrong period, the wrong model type, or a genuine outlier in the data worth investigating directly.