Unit 3 · Data Analysis

🌊 Seasonal Indices

Once you know the seasonal pattern in data, you can measure it precisely, strip it out to see the true trend, and use it to make smarter forecasts. Seasonal indices connect directly to the moving averages you just learned.

What even is this?

A seasonal index is a number that tells you how much a particular season is above or below the annual average. Summer might always be 40% above average, so its seasonal index is 1.4. Winter might always be 40% below, so its index is 0.6.

Once you have the indices, you can deseasonalise the data (remove the seasonal bump) to see what's really happening, and forecast future values by multiplying a trend value by the seasonal index.

1
What Does a Seasonal Index Mean?
SI < 1 Below average

e.g. SI = 0.6 means this season is typically 40% below the annual average

SI = 1 Exactly average

This season is typical, no seasonal effect in either direction

SI > 1 Above average

e.g. SI = 1.4 means this season is typically 40% above the annual average

💡 The sum rule: For quarterly data (4 seasons), the four seasonal indices must always add up to exactly 4. For monthly data (12 months), they add up to 12. Use this to check your work or find a missing index.

Example, a beach resort's quarterly seasonal indices:

☀️ Summer

1.4
40% above average, peak season

🍂 Autumn

1.0
Exactly average

❄️ Winter

0.6
40% below average, off season

🌸 Spring

1.0
Exactly average

Sum check: 1.4 + 1.0 + 0.6 + 1.0 = 4.0

2
Calculating Seasonal Indices
1

Find the mean for each season

For each season (e.g. all the Summer quarters), add up all the values across every year and divide by the number of years.

2

Find the overall mean

Add all data values together and divide by the total number of data points.

3

Calculate each seasonal index

SI for a season = season mean ÷ overall mean. Check: all SIs should sum to the number of seasons.

Seasonal Index = Season Mean ÷ Overall Mean
3
Worked Example, Calculating Seasonal Indices
🏖️
Coastal Beach Resort, Quarterly Visitors
Data in hundreds of visitors. Two years of data.
Season Year 1 Year 2 Season Mean
☀️ Summer140168 (140+168)÷2 = 154
🍂 Autumn100120 (100+120)÷2 = 110
❄️ Winter6072 (60+72)÷2 = 66
🌸 Spring100120 (100+120)÷2 = 110
Total / Mean 400480 Overall mean = 880 ÷ 8 = 110
1

Calculate each seasonal index

SISummer = 154 ÷ 110 = 1.4    SIAutumn = 110 ÷ 110 = 1.0
SIWinter = 66 ÷ 110 = 0.6    SISpring = 110 ÷ 110 = 1.0

2

Sum check

1.4 + 1.0 + 0.6 + 1.0 = 4.0 ✓ (equals the number of seasons)

Summer is 40% above average. Winter is 40% below average. Autumn and Spring are exactly average.
4
Deseasonalising Data

To see the true underlying trend, without the seasonal bumps and dips, we deseasonalise the data. Divide each actual value by its seasonal index.

Deseasonalised value = Actual value ÷ Seasonal Index

Using the beach resort data and the seasonal indices we just calculated:

Raw Data (seasonal)

☀️ Summer Yr1140
🍂 Autumn Yr1100
❄️ Winter Yr160
🌸 Spring Yr1100
☀️ Summer Yr2168
🍂 Autumn Yr2120
❄️ Winter Yr272
🌸 Spring Yr2120

Deseasonalised

140 ÷ 1.4100
100 ÷ 1.0100
60 ÷ 0.6100
100 ÷ 1.0100
168 ÷ 1.4120
120 ÷ 1.0120
72 ÷ 0.6120
120 ÷ 1.0120
What the deseasonalised data reveals: Year 1 all deseasonalises to 100. Year 2 all deseasonalises to 120. The true underlying value grew from 100 to 120, a clean 20% increase, but you couldn't see that in the raw data because of the seasonal swings.
5
Forecasting with Seasonal Indices

Once you have a seasonal index and a trend value, you can predict a future value, adjusted for the expected seasonal effect.

Forecast = Trend value × Seasonal Index

Example: The trend line predicts that next winter's underlying value will be 130 (hundreds of visitors). What is the seasonally adjusted forecast for next winter?

Forecast = trend value × SIWinter = 130 × 0.6 = 78 hundred visitors
The seasonal index "deflates" the trend value because winter is typically 40% below average.
⚠️ Watch the direction:
Deseasonalise (remove seasonal effect) → divide by SI
Forecast (add seasonal effect back) → multiply by SI
This is where students lose marks, using ÷ when they should use ×, or vice versa.
6
Complete Worked Example
🌅
Beach Resort, Full Seasonal Analysis
Calculate seasonal indices, deseasonalise, interpret and forecast.

Data: Year 1 Summer=140, Autumn=100, Winter=60, Spring=100. Year 2 Summer=168, Autumn=120, Winter=72, Spring=120. All in hundreds of visitors.

1

Overall mean = 880 ÷ 8 = 110

Add all 8 data values: 140+100+60+100+168+120+72+120 = 880. Divide by 8 data points.

2

Season means: Summer=154, Autumn=110, Winter=66, Spring=110

Average each pair: (140+168)÷2=154, (100+120)÷2=110, (60+72)÷2=66, (100+120)÷2=110.

3

Seasonal indices: 1.4, 1.0, 0.6, 1.0 (sum = 4 ✓)

Divide each season mean by the overall mean: 154÷110=1.4, 110÷110=1.0, 66÷110=0.6, 110÷110=1.0.

4

Interpret: Summer is 40% above average; winter is 40% below

SI=1.4 means a typical summer has 40% more visitors than the annual average. SI=0.6 means winter gets 40% fewer.

5

Forecast for Year 3 Winter (trend predicts 130)

Forecast = trend × SIWinter = 130 × 0.6 = 78 hundred visitors

Seasonally adjusted forecast: approximately 7,800 visitors next winter.
7
Practice Questions

Tap to reveal the answer. Try it yourself first!

1
A café has quarterly seasonal indices of Summer=1.5, Autumn=1.1, Winter=0.7, Spring=?. What is the Spring seasonal index? What does it tell you about spring sales?
Tap to reveal ▾
Seasonal indices must sum to 4 (for quarterly data).
Spring SI = 4 − (1.5 + 1.1 + 0.7) = 4 − 3.3 = 0.7

Spring SI = 0.7 means spring sales are typically 30% below the annual average, similar to winter. Both autumn and spring sit 10% above average, and summer is 50% above.
2
A ski resort recorded these winter visitor numbers over 3 years: 480, 510, 540. The overall mean across all 4 seasons is 350. Calculate the seasonal index for winter.
Tap to reveal ▾
Step 1: Winter mean = (480 + 510 + 540) ÷ 3 = 1530 ÷ 3 = 510
Step 2: SIWinter = 510 ÷ 350 = 1.457… ≈ 1.46

Winter is about 46% above average, as you'd expect for a ski resort! A seasonal index above 1 for winter is the opposite of a beach resort.
3
A beach resort records 84 visitors (hundreds) in winter. The winter seasonal index is 0.6. Calculate the deseasonalised value. What does this number represent?
Tap to reveal ▾
Deseasonalised = actual ÷ SI = 84 ÷ 0.6 = 140

The deseasonalised value of 140 represents what the resort would have been expected to achieve if winter were an average season. In other words: the underlying trend suggests the resort should be getting about 14,000 visitors per quarter, but because winter is 40% below average, you actually only see 8,400 visitors.

Deseasonalising removes the seasonal "discount" to reveal the true trend.
4
A trend line predicts that next summer's underlying value will be 160 (hundreds of visitors). The summer seasonal index is 1.4. What is the seasonally adjusted forecast for next summer?
Tap to reveal ▾
Forecast = trend × SI = 160 × 1.4 = 224 hundred visitors

The forecast is 22,400 visitors. The seasonal index multiplies the trend value because summer is above average, the seasonal effect amplifies the prediction upwards. Remember: forecasting = multiply by SI. Deseasonalising = divide by SI.
5
A student says: "Autumn sales this year were 132 (hundreds). Since the seasonal index for autumn is 1.1, the trend value must be 132 × 1.1 = 145.2." What mistake did they make? What is the correct answer?
Tap to reveal ▾
The student used × when they should have used ÷.

To deseasonalise (remove the seasonal effect), you DIVIDE by the seasonal index:
Trend value = 132 ÷ 1.1 = 120

The student's answer of 145.2 would be the forecast if you were going the other way, predicting a seasonal value FROM a trend value. They confused the two operations. A good way to remember: deseasonalising strips the season away → ÷. Forecasting adds the season back in → ×.
🎉 Data Analysis complete, test everything!
🌅
The Forecast, Escape Room
6 challenges: seasonal indices, the sum rule, deseasonalising, interpreting SI values, and forecasting. Help the resort plan next year's staffing before the system locks.
Play →