Statistical vs. machine learning forecastingWhat your distribution business actually needs

Croston, ARIMA, ETS or XGBoost? A plain guide to when statistical forecasting works for a distributor, when machine learning helps, and how Snodo picks per SKU.

If you've looked into demand forecasting, you've probably hit a wall of acronyms: ARIMA, ETS, XGBoost, neural networks. Some vendors make it sound like machine learning is always better. It isn't. The right method depends on how each product sells, and most distributors need a mix.

Here's how we think about it at Snodo, in plain terms.

The two families of methods

Statistical methods look at a product's own sales history and find its pattern: level, trend, seasonality, gaps.

  • Naïve: next period looks like the last one (or the same week last year). Simple, and a useful baseline to beat.
  • ETS (exponential smoothing): weighs recent sales more, and can handle trend and seasonality.
  • ARIMA: models how each week's sales relate to the weeks before it. Good for steady products with a clear structure.
  • Croston: built for intermittent demand, the items that sell 0, 0, 6, 0, 2.

Machine learning methods learn from many signals at once, and across many products:

  • XGBoost and LightGBM: gradient-boosted trees. Strong when sales depend on several drivers, like promotions, price changes, holidays or the day of the week.
  • Random forest: many decision trees averaged together. Stable, and less likely to overreact.
  • Neural networks: can capture complex patterns when there's enough data to learn from.

When to use which

A rough rule of thumb:

  • Use statistical methods when a product has a clear pattern of its own, limited history, or sporadic sales. They're fast, easy to explain and hard to fool.
  • Use machine learning when you have a good amount of history across many SKUs and outside factors move demand: promos, price changes, seasons, customer mix.
  • Always compare against a baseline. If a complex model can't beat naïve on past data, don't use it.

Worked example (sample data, not a real client)

All numbers below are made up to illustrate the idea.

Picture a small food distributor with four SKUs and two years of weekly sales:

Four sample SKUs and the method we'd start with
SKU (sample)How it sellsHistoryOutside driversMethod we'd start with
Almond milk 32 ozSteady, slow upward trend104 weeksFewETS or ARIMA
Specialty saffron 1 ozSells 0–3 units, many zero weeks104 weeksNoneCroston
Sparkling water 12-packSeasonal, spikes with promos104 weeksPromos, summer, priceLightGBM or XGBoost
New oat creamerLaunched 8 weeks ago8 weeksUnknownNaïve, then revisit

How this plays out:

  • Almond milk has a clean pattern. ETS might forecast about 120 cases next week (sample). A boosted-tree model would likely land close to the same number while being harder to explain, so the simpler method wins.
  • Saffron sells in fits and starts. ARIMA and most ML models struggle with all those zeros. Croston estimates the average size of an order and how often orders come, which is what you need for setting a reorder point.
  • Sparkling water is where ML earns its keep. Sales depend on whether a promo is running, the time of year and price. A statistical model sees only the history; LightGBM can learn that "promo week in June" means roughly double a normal week (sample).
  • Oat creamer has 8 weeks of data. Too little for ARIMA or ML to learn much. Start with naïve, lean on judgment, and switch methods as history builds.

In practice we test the candidate methods on past weeks the model didn't see, and keep the one that would have been most accurate for that SKU. Then we check it again as new sales come in.

Statistical

  • Naïve
  • ETS
  • ARIMA
  • Croston

Machine learning

  • XGBoost
  • LightGBM
  • Random forest
  • Neural networks
Test on past weeks, keep the most accurate per SKU
OutputWhat to order this week
Illustration. Sample flow.

Why method choice matters for your stock

A forecast is only useful if it changes what you order. A better forecast for a promo-driven item means fewer stockouts during the promo and less leftover stock after it. A better forecast for a slow, sporadic item means you stop tying up cash in "just in case" inventory.

The forecast also sets how much buffer you need. The less a forecast misses, the less safety stock you have to carry to stay covered.

What you don't have to do

You don't need to know any of these model names. Snodo is a done-for-you Forecast and Supply service: we connect your sales data, test the methods, pick what works per product and send you the answer of what to order. You review it, and if something looks off, you tell us.

Talk to us

Book a free 20-minute call and we'll look at how your products actually sell and which approach fits them. For background on the basics, see Demand Forecasting for Small Distributors (Without a Data Team).

Book a free 20-minute call