Moving Averages vs. Exponential Smoothing: Smoothing Without Self-Deception
Your 7-day average still shows growth two weeks into a decline. Every smoother lags — the question is how much, and whether you chose it deliberately.
Two weeks into a real decline, the 7-day moving average still shows growth. Nobody is manipulating the chart; the smoother is doing exactly what smoothers do — averaging the past and presenting it as the present. Every smoothing method lags turning points by design. The choice is never between lag and no lag; it is between a lag you understand and one that ambushes you.
The Simple Moving Average and Its Lag
A k-period simple moving average (SMA) averages the last k observations. Its lag is exactly (k-1)/2 periods: a 7-day SMA describes, on average, where the series was 3 days ago. Longer windows smooth more but lag more — there is no free lunch, only the tradeoff curve.
The SMA has two quirks worth knowing. First, the drop-out effect: when a large value exits the window, the average jumps even though nothing happened today. A 7-day average can fall on your best day of the week because last week's best day dropped out. Second, it weights a k-day-old observation equally with today's — stale data votes as loudly as fresh data. Both quirks are why practitioners often prefer the alternative below.
Exponential Smoothing: Fresh Data Votes Louder
Simple exponential smoothing (SES) updates one state: level = ?·x + (1??)·level_prev. With ? = 0.3, today contributes 30% and all of history contributes 70% (itself exponentially decayed). No window, no drop-out jumps, one parameter. Higher ? reacts faster and jitters more; lower ? is calmer and lags more.
How to pick ?? Match it to the noise. On smooth data (daily revenue for a mature store), ? around 0.1–0.3 filters noise without much lag. On noisy data (ad clicks by hour), lower still. A defensible method: choose the ? that minimizes one-step-ahead error on recent history — the same holdout discipline as forecasting, because smoothing is forecasting one step with no trend model.
What Neither Can Do
Both methods fail identically on two structures. Trend: on a steadily growing series, every smoother underestimates the present — the average of the past is below the present by construction. If your data trends, you need a trend model like Holt's method, not a smoother. Seasonality: a 7-day SMA on data with a weekly cycle still wiggles unless the window exactly equals the cycle (this is the one case where window choice is principled, not arbitrary — see seasonality detection).
Practical guidance: use a 7-day SMA for weekly-cycle daily data when communicating (everyone understands it), SES with tuned ? for monitoring and alerting (no drop-out false alarms), and a real trend model the moment anyone asks "where is this heading?" Smoothing describes; only models with trend states extrapolate. Confusing the two is how flat dashboards meet declining businesses.