Forecasting: Methods & Benefits: Issue 05

What's the best forecast method per region <> channel <> SKU combination?

Can you guess through which channel this SKU was sold, based only on the sales pattern?

Sales Pattern - Channel 1

Sales Pattern - Channel 2

Sales Pattern - Channel 3

Assign D2C, Amazon, Wholesale to one of the pictures.


🥁🥁🥁

Pattern 1: Intermittent demand, with many zero-value periods → Wholesale

Pattern 2: Stable trend with few outliers → Amazon

Pattern 3: Spiky, driven by launches or events → D2C

OK let’s forecast a baseline for this. But first:

What is the classical pitfall?

Summing up everything and then forecasting those three time series..

If you just paste every SKU’s sales history into one sheet and apply a basic moving average, you’ll end up mixing different time series characteristics - making it nearly impossible to improve accuracy.

What is the solution to this?

Separate channel <> SKU forecasting. Now things get interesting.

Which forecast method would you use?

There is no straightforward answer.

For D2C a mix of moving average and collaborative adjustments might perform best.

For wholesale you’ll see “intermittent demand” - hence special forecasting methods, like Croston, will capture these better.

Example: Green is Croston and we backtest against a moving average. Notice how the mov. avg. takes ‘0‘ values in the beginning? This benefit of Croston scales fast.

In the example above - better forecast accuracy (14% lower MAE!) means lower safety stock levels → more $

Now - trap into the pitfalls - or mitigate these. Do that for 200 SKUs and the difference will be day and night.

The benefit?

Well for the one you will continue flying blind.

For the other, you can now drill down into forecast accuracy per SKU per channel - assign specific safety stock based on past accuracy, and actually reduce it.

But then, how do you know which forecast method to use?

  1. Remove outliers first

  2. Run the forecast for a past period with 10 different methods

  3. Summarise the error of the “past period forecast” against past sales for every channel <> SKU combination and every forecast method

  4. Use the forecast method for the exact channel<>SKU combination with the lowest error for the future

You can do all of that by spreadsheet. OR you can use Spherecast for this.

Here is a snapshot how we do it in Spherecast:

Layering different forecast methods and choosing the winner automatically

Different forecast methods are applied on a past period and the best one is chosen. We do Backtesting here.

Next time you’re overstocked, stocked out or your products are written off. Think about it - what’s the actual reason? Just accepting this - obviously can’t be the solution.

What can you do?

  1. Start with measuring your forecast accuracy per channel <> SKU combination.

  2. Run the baseline with the right methods - and I can assure you, you’ll see improvements directly.

So, what did we learn today?

  • Aggregating and forecasting all SKUs the same way leads to bad accuracy and worse decisions.

  • The fix? Forecast each channel <> SKU combination separately with its own best-fit method.

  • Backtesting multiple methods per combo increases forecast accuracy and reduces safety stock.

Let me know if you tried this out already.

Next article will be about AI Forecasting. What’s the current status quo here and how can we leverage newest machine learning architectures?

Until then!

-Leon