How do you forecast demand and handle seasonality?
By separating what is repeating, what is trending and what is noise — because the commonest forecasting error is reacting to normal variation as though it were a change in direction.
The three components of most demand series:
Trend, the underlying direction over time.
Seasonality, repeating patterns tied to the calendar — annual, monthly, weekly and daily. Weekly seasonality is the most underestimated: many businesses have strong day-of-week patterns and compare Monday to Sunday without adjusting.
Residual noise, which is random and should not be explained.
How to separate them practically: compare like periods — this March against last March rather than against February; use rolling averages over a full seasonal cycle to see trend without seasonal wobble; and calculate seasonal indices, so you know that December is typically 140% of an average month and can judge whether this December is good.
Why year-on-year comparison is the workhorse. It controls for seasonality automatically, at the cost of being slow to detect change and sensitive to whatever happened in the base period — a distorted base year produces misleading comparisons for a full year afterwards, which is the trap after any unusual event.
What else shifts demand: moving holidays, which fall in different months between years; the number of trading days and weekends in a month; weather, which dominates some categories; pay dates; promotions, which borrow demand from the following period rather than creating it, and which must be accounted for or you will forecast a decline that is simply payback; competitor activity; and one-off events.
Methods, in ascending complexity: naive forecasts such as "the same as last year plus growth", which are a legitimate baseline and surprisingly hard to beat; exponential smoothing with seasonality; regression including known drivers; and machine-learning approaches, which require substantial history and frequently do not outperform simpler methods.
Always compare against the naive baseline. A sophisticated model that cannot beat "last year plus 5%" is not adding value, and this comparison is skipped remarkably often.
Forecast ranges, not points, and state the assumptions.