Data ScienceForecasting and time-series analysis

Seasonal naive forecasting as a serious baseline

PK
Pankit Kumar
Sr. Data Scientist at Parexel (a Goldman Sachs–backed company) · 20 September 2026 · 3 min read
Technically reviewed by Ishaan Sharma
In this article (5 sections)

A complex forecasting model has not earned its place merely because it produces a forecast. It should beat a rule that a planner can understand, reproduce and operate. For recurring monthly demand, one of the strongest simple rules is seasonal naïve: forecast each month with the observed value from the same month one year earlier.

If the seasonal period is 12 and the history ends in December, January’s forecast uses the previous January, February uses the previous February, and so on. The method carries the last observed annual pattern forward. It estimates no trend and has no tuning search, which makes it an excellent check against accidental complexity.

Three baselines on the same dates

The reproducible forecasting lab fits every rule using 96 training months and scores the next 24 validation months.

RuleValidation MAEValidation RMSE
Seasonal naïve, period 128.178.84
Last observed value15.2717.37
Training mean21.5423.08

The seasonal rule cuts MAE by about 46% relative to the last-value rule on this fixture. That is evidence about this authored dataset, not a universal ranking. A rapidly changing nonseasonal series could reverse the result.

python
from timeseries_cases import baseline_case

result = baseline_case()
scores = result["metrics"]
assert result["validation_rows"] == 24
assert scores["seasonal_naive"]["mae"] < scores["last_value"]["mae"]
print(round(scores["seasonal_naive"]["rmse"], 2))

This prints 8.84. The assertion is part of the local QA: if the fixture or split changes enough to invalidate the lesson, execution fails rather than leaving a stale table in the article.

Declare the seasonal period

A period of 12 is a business assumption about monthly recurrence. It should come from the data grain and operating cycle, then be checked with plots and backtests. Hourly electricity may have daily and weekly cycles. Daily retail data may follow a seven-day cadence and movable holidays. Setting 12 because a library example did so is not model selection.

Seasonal naïve also gives useful error diagnostics. If it misses every month in the same direction, a level or trend has changed. If errors concentrate around promotions, the calendar needs an intervention feature or separate scenario. If it fails only for newly launched items, history length is the constraint.

A baseline is an operational fallback

Store the baseline forecasts beside the candidate model’s forecasts. Report both on identical origins, horizons and rows. A candidate must improve a metric that matches the decision, not merely win on a convenient aggregate. If the production model fails, the seasonal rule can also serve as a defined fallback when the required history is present.

This is why “baseline” does not mean disposable. It is a benchmark, a debugging tool and a recovery behavior. A serious project records its period, minimum history, missing-month policy and the cases in which it cannot run.

The Data Science course uses baselines to connect modeling to evaluated project decisions rather than treating a fitted estimator as the finish line.

Exercise

Add a drift baseline that takes last year’s month and adds the average annual change seen in training. Compare it at 1-, 6- and 12-month horizons. Select it on validation only and retain seasonal naïve in the final test report.

Continue learning

This article is part of the Forecasting and time-series analysis sequence. Use the neighbouring tasks when you need the prerequisite or the next application.

Reference: Forecasting: Principles and Practice on simple forecasting methods.

PK
Pankit Kumar
Lead Instructor, NeuraPath Academy

Pankit Kumar has 10 years in Data Science & AI, building and shipping production systems in regulated pharma and clinical environments. He is a freelance trainer at Boston Institute of Analytics, AnalytixLabs and Scaler, and has taught this material to thousands of working professionals.

This article is part of our Data Science programme — 6 months. From data foundations to machine learning, deep learning and deployment.

Explore Data Science
Counselling is free · no obligation

Not sure which programme fits?

Tell us your background and we will map it to the right entry point — including saying so when a cheaper programme is the better fit. A counsellor replies within one working day.