Adjusting Forecasts for Seasonality
By Newtown Analytics · · 7 min read
For smb owners & operators
Seasonality forecasting is the practice of measuring the regular pattern that repeats within a year (or a week or a month) and building it into your forecast, so that a normal December is not mistaken for growth and a normal February is not mistaken for decline. The standard tool is the seasonal index, which expresses each period's typical level relative to the average. This guide shows how to calculate indices from two years of data, apply them to next year's forecast, remove seasonality to see the underlying trend, adjust for trading days and moving holidays, and handle products with short or no history. It is part of budgeting and forecasting and complements how to forecast revenue and top-down vs. bottom-up revenue forecasting.
What seasonality is, and what it is not
| Pattern | Description | Example |
|---|---|---|
| Seasonality | Regular, calendar-linked pattern that repeats | Holiday peak, summer lull, tax season, weekday vs. weekend |
| Trend | Persistent upward or downward movement | Steady customer growth |
| Cycle | Longer, irregular swings | Economic cycles |
| Irregular | One-off events | Strike, storm, large one-time order |
Seasonality repeats at a known interval. If the pattern is not regular, it is something else, and a seasonal index will mislead.
Step 1: Gather at least two full years
One year of data cannot separate seasonality from one-off events. Two years is the minimum for a seasonal pattern, and three or more is better. Clean the data: flag stockouts, one-off orders, promotions and closures.
Step 2: Calculate seasonal indices
Divide each period's value by the average of its year. We use quarters here; the same method works for months or weeks.
Hypothetical quarterly sales (thousands of dollars):
| Q1 | Q2 | Q3 | Q4 | Year total | Average | |
|---|---|---|---|---|---|---|
| Year 1 | 180 | 220 | 200 | 300 | 900 | 225 |
| Year 2 | 210 | 250 | 230 | 350 | 1,040 | 260 |
Indices for each year (value / year average):
| Q1 | Q2 | Q3 | Q4 | |
|---|---|---|---|---|
| Year 1 | 180/225 = 0.800 | 220/225 = 0.978 | 200/225 = 0.889 | 300/225 = 1.333 |
| Year 2 | 210/260 = 0.808 | 250/260 = 0.962 | 230/260 = 0.885 | 350/260 = 1.346 |
| Average index | 0.804 | 0.970 | 0.887 | 1.340 |
The average indices sum to 4.00 (0.804 + 0.970 + 0.887 + 1.340 = 4.001, which is 4.00 after rounding), as they should for four quarters. Q4 is typically 34 percent above an average quarter, and Q1 about 20 percent below.
Notice that the two years give similar indices (1.333 and 1.346 for Q4), which gives confidence that the pattern is stable. If the indices differed sharply, find out why before averaging.
Step 3: Apply the indices to the forecast
Suppose next year's annual forecast is 1,160 (about 11.5 percent growth over year 2's 1,040). The average quarter is 1,160 / 4 = 290.
| Quarter | Index | Forecast = 290 × index |
|---|---|---|
| Q1 | 0.804 | 233.1 |
| Q2 | 0.970 | 281.2 |
| Q3 | 0.887 | 257.2 |
| Q4 | 1.340 | 388.5 |
| Total | 4.00 | 1,160.0 |
(Calculated with unrounded indices, so the quarterly figures sum to the annual total.) The annual number should come from your revenue forecast; the indices spread it across the year. See how to forecast revenue.
Step 4: Deseasonalize to see the trend
To see underlying performance, divide each actual by its index. This removes the normal seasonal swing.
| Year 2 quarter | Actual | Index | Deseasonalized |
|---|---|---|---|
| Q1 | 210 | 0.804 | 261 |
| Q2 | 250 | 0.970 | 258 |
| Q3 | 230 | 0.887 | 259 |
| Q4 | 350 | 1.340 | 261 |
Raw sales jump 67 percent from Q1 to Q4 (350 / 210 - 1 = 66.7 percent). After deseasonalizing, every quarter is within 258 to 261, meaning the business was flat within the year and the apparent rise was seasonal. This is the most useful check in the article: it prevents a management team from celebrating a seasonal peak or panicking over a normal trough. The growth between years (1,040 / 900 = 15.6 percent) is the real trend.
Step 5: Adjust for trading days and calendar effects
Months differ in length and in the number of working or trading days. February has fewer days than March, and weekends fall differently each year.
Example. If a store sells $5,000 per trading day, a month with 20 trading days produces $100,000 and a month with 22 trading days produces $110,000, a 10 percent difference with no change in underlying demand. Forecast daily rates times the number of trading days in each month, and then apply the seasonal index to the daily rate, not the monthly total.
Moving events also matter: Easter, Lunar New Year, Ramadan, Thanksgiving and similar events shift between months across years. If a shifting event moved a peak from March to April, the monthly index from the earlier year will misplace it. Model these events explicitly, with a calendar of dates for the forecast year.
Step 6: Other seasonal cycles
| Cycle | Typical use |
|---|---|
| Day of week | Staffing, ecommerce, restaurants |
| Week of month or pay cycle | Consumer spending, collections |
| Month-end or quarter-end | B2B bookings, collections |
| Weather-linked | Seasonal goods, utilities |
| School and fiscal calendars | Education, public sector |
Use the cycle that matches your decision. A cash forecast may need weekly seasonality; a budget may need monthly.
Products without seasonal history
For new products, borrow the seasonal profile of a similar product or the category, and replace it with your own after two cycles. Be cautious with products that behave differently from the category, such as a gift item inside a general category. See forecasting sales for a new product.
Testing your seasonal index
Hold out the most recent year. Compute indices from earlier years, forecast the held-out year and compare with actuals. If the seasonal method does not beat a seasonal naive forecast (same period last year, scaled), use the simpler one. See how to measure financial forecast accuracy.
When seasonality changes
Patterns shift: new channels, a changed promotion calendar, climate, or a shift to subscription smooth the peaks. Watch for drift by comparing recent indices with older ones, give more weight to recent years if the pattern is moving, and refresh the indices annually.
Seasonality and planning decisions
| Decision | Seasonal implication |
|---|---|
| Inventory | Build ahead of the peak; plan production smoothing. See demand planning and inventory optimization |
| Cash | Working capital peaks before sales do; plan financing. See cash flow management |
| Hiring | Seasonal staff vs. permanent hires |
| Budget phasing | Spread annual budgets by index, not evenly |
| Variance analysis | Compare actuals with a seasonally phased budget, not one-twelfth of the annual number |
| Profit | Fixed costs spread evenly while revenue peaks; quarterly margin swings. See unit economics |
A seasonality checklist
- At least two years of cleaned data?
- Indices calculated at the level used for decisions (product family, channel)?
- Indices average 1.0 and sum to the number of periods?
- Trading days and moving holidays handled?
- One-offs and stockouts removed or flagged?
- Index validated on a holdout year?
- Indices reviewed annually for drift?
Common mistakes
- Using one year of history.
- Letting a one-off event distort the index.
- Applying monthly indices to a year with a different promotion calendar.
- Ignoring trading days.
- Comparing seasonal peak months with off-peak months to judge growth.
- Spreading the annual budget evenly across months.
- Never updating the indices.
FAQs
What is a seasonal index?
A number showing how a period typically compares with the average period; 1.2 means 20 percent above average.
How many years of data do I need?
At least two full years; three or more is better.
How do I forecast seasonal sales?
Forecast the annual total, then spread it across periods with seasonal indices, adjusting for trading days and known events.
What does it mean to deseasonalize data?
Divide each actual by its seasonal index to remove the normal seasonal swing and reveal the underlying trend.
How do I handle holidays that move?
Model them explicitly with a calendar of their dates instead of relying on monthly indices alone.
Keep reading
This article is for general information. It is not accounting, tax, legal or investment advice, and examples use illustrative numbers rather than client data. Confirm decisions that carry financial or legal consequences with a qualified professional.