Seasonal Demand Modeling
Identifying the recurring annual demand curve
Retained component
- My Role
- I developed and evaluated this component within the demand-forecasting project, including benchmark comparison and interpretation.
- Business / Analytical Question
- Can a compact recurring annual curve support forward forecasting without assuming every year has the same demand level?
- Evidence
- Recurring annual demand curve; chronological comparison of seasonal specifications. 2024 development selected the full adaptive architecture (MAE 5.22). No seasonality-only holdout lift is reported.
- Decision / Finding
- Retain seasonality as the backbone; adapt its level using recent demand.
- Outcome / Status
- Retained component: the seasonal backbone feeds normalization, adaptive level, and the final forecast. Analytical validation; no operational deployment is claimed.
Business Question
Can a compact recurring annual curve support forward forecasting without assuming every year has the same demand level?
Why It Matters
A yearly average misses the spring ramp and seasonal decline. A separate estimate for every week can overfit when only two annual cycles are available for development.
Data / Method
The target is weekly New Customers: 104 development observations from 2023–2024 and 52 untouched holdout weeks from 2025. Month controls and Fourier harmonics were compared chronologically.
Analysis
The retained 52-week seasonal curve
Calculated index · annual mean seasonal factor = 100
The fitted seasonal factor is indexed to show its recurring shape without disclosing the underlying customer-volume scale. This is not the final weekly forecast.
View chart data
| Week | Seasonal shape index |
|---|---|
| 1 | 13.34 |
| 2 | 14.94 |
| 3 | 17.29 |
| 4 | 20.58 |
| 5 | 25.05 |
| 6 | 31.01 |
| 7 | 38.75 |
| 8 | 48.56 |
| 9 | 60.66 |
| 10 | 75.06 |
| 11 | 91.53 |
| 12 | 109.54 |
| 13 | 128.26 |
| 14 | 146.64 |
| 15 | 163.58 |
| 16 | 178.11 |
| 17 | 189.53 |
| 18 | 197.56 |
| 19 | 202.28 |
| 20 | 204.09 |
| 21 | 203.58 |
| 22 | 201.42 |
| 23 | 198.22 |
| 24 | 194.48 |
| 25 | 190.53 |
| 26 | 186.54 |
| 27 | 182.51 |
| 28 | 178.28 |
| 29 | 173.60 |
| 30 | 168.13 |
| 31 | 161.53 |
| 32 | 153.52 |
| 33 | 143.93 |
| 34 | 132.78 |
| 35 | 120.29 |
| 36 | 106.89 |
| 37 | 93.12 |
| 38 | 79.60 |
| 39 | 66.88 |
| 40 | 55.39 |
| 41 | 45.40 |
| 42 | 37.01 |
| 43 | 30.17 |
| 44 | 24.74 |
| 45 | 20.54 |
| 46 | 17.38 |
| 47 | 15.07 |
| 48 | 13.46 |
| 49 | 12.44 |
| 50 | 11.93 |
| 51 | 11.91 |
| 52 | 12.36 |
The smooth annual shape shows a low-demand offseason, a ramp into higher demand, a broad high-demand period, and decline. These are descriptions of the fitted curve, not separately estimated calendar regimes.
Four sine/cosine terms + intercept
Separate effects for months or weeks
Method detail
Two harmonics supply four seasonal terms—one sine and one cosine at each frequency—plus an intercept. The seasonal factor is S(w) = exp(η(w)). The chart publishes its indexed shape; fitted coefficients and the absolute scale are withheld.
Results
Development benchmark used to select the final architecture
2024 rolling-origin development MAE · weekly New Customers · full architectures, not the seasonal component alone
Interpretation
Seasonality is necessary but not sufficient. Its role is to supply the recurring shape; the adaptive layers determine how high or low the current year is running.
Limitations & Considerations
Only two complete annual cycles informed development. The 5.22 MAE belongs to the full adaptive seasonal architecture, not the Fourier curve alone.
How this fits into the forecasting system
Retained component: the seasonal backbone feeds normalization, adaptive level, and the final forecast.
Trent Turner