Guide
How to forecast sales or demand from a spreadsheet
Put your history in date order, decide how far ahead you need, and always compare the forecast against the naive one — repeating the last value. A forecast that cannot beat that is not a forecast.
What your spreadsheet needs
Two columns: a date and the thing you are measuring. One row per period, in order, with no gaps — a missing month is not a zero, and treating it as one teaches the model a slump that never happened.
How much history? A useful rule: you need at least two full cycles of any pattern you want the model to find. Monthly seasonality needs two years. Weekly patterns need about two months of daily data. With one year of monthly figures you can forecast a trend but not a season, and a tool claiming otherwise is fitting noise.
The forecast you have to beat
Before any model, work out what repeating the last value would have scored. That is the naive forecast, and it is the floor. For many real series — especially short ones, and anything that moves slowly — it is surprisingly hard to beat.
A forecast that loses to “same as last month” is worse than a pencil, however sophisticated the method. Check this before you check anything else.
The honest way to measure it is a backtest: hide the last few periods, forecast them, and compare against what actually happened. Fitting a model to all your data and reporting how well it fits is not a test — it is a description.
Which method, and when
- ARIMA / SARIMA — the default for a single series with trend and season. Needs little data, explains itself, and is usually the right first answer.
- Neural models (LSTM, GRU, Transformer) — worth trying when you have thousands of periods, or when other columns help explain the one you are forecasting. On a few dozen monthly figures they will lose to ARIMA and take longer to say so.
- A straight line — genuinely the right answer more often than people like. If the series trends and does not cycle, a trend line plus a confidence band is honest and legible.
A number without a range is a guess in a suit
“Sales next month: 4,812” is false precision. What a forecast can honestly give you is a range and a confidence: between 4,100 and 5,500, four times out of five. Anyone planning from the single number is planning for the one outcome that will not happen.
A tool that shows an interval is also telling you something useful about itself: the width is how uncertain it is. A very wide band on a short history is not a defect, it is the truth.
If other columns matter, say what they will do
Promotions explain sales; temperature explains demand. A model can use them — but to forecast forward it needs their future values, which nobody has. Tools handle this by holding each driver at its last observed value and continuing.
That is a reasonable assumption and it must be stated, because the forecast then means “if those stay put”. If you actually know next quarter’s promotion calendar, supply it — that is the honest way to use a driver, and it is a genuinely better forecast than one guessing.
Common questions
- How do I forecast sales from a spreadsheet?
- Put your history in date order with one row per period and no gaps, decide how many periods ahead you need, then backtest: hide the last few periods, forecast them, and compare against what happened. Always check the result against the naive forecast of repeating the last value.
- How much historical data do I need to forecast?
- At least two full cycles of any pattern you want captured. Monthly seasonality needs about two years of monthly data; weekly patterns need about two months of daily data. With less, you can forecast a trend but not a season.
- Is ARIMA better than an LSTM for forecasting?
- On a short series — a few dozen to a few hundred periods — usually yes, and it explains itself. Neural models earn their place with thousands of periods, or when other columns help explain the series. Run both and compare against the naive baseline.
- What is a naive forecast?
- Predicting that the next value equals the last observed value. It is the floor any real forecast must clear, and on slow-moving series it is hard to beat. A model that loses to it has not learned anything about how the series changes.