Covid-19 – 3 Ways Demand Forecasting Software Should Help

Demand Forecasting through a Pandemic

The coronavirus pandemic poses the biggest challenge to the world within most of our lifetimes.  Focussing on demand forecasting at a time like this seems unimportant.  BUT we need to get it as right as possible to avoid shortages which are damaging for our businesses and, more importantly, to help our customers stay safe and comfortable.

Covid-19 - 3 Ways Demand Forecasting Software Should Help 1


No one knows, at this point, whether the forecast economic downturn will be U-shaped, V-shaped or any-shaped.  Nor its duration.  Indeed, some industries may benefit, at least in the short term, due to panic-buying, more time for in-home hobbies and pastimes or medical necessity.

Conventionally, demand variation ripples backwards from the end customer:

Supply chain profile
Increasing variation backwards through supply chain

In other words, customer consumption tends to be relatively smooth, but the logistics of the supply chain mean the ripples get bigger going backwards through the supply chain, due to promotions, minimum order quantities, packaging volume discounts, inventory fill etc..  Panic-buying has distorted this pattern due to the increased amplitude of end-user demand.  Forecasting uncertainty has increased as a result.

Suply chain ripple during covid-19
Covid-19 Supply Chain Profile

It is likely there will be no single observed demand pattern during the pandemic.  Therefore there will be a variety of different demand patterns as we come out.  It is unlikely that the pandemic will not simply disappear and neither will its effect on demand.  Lockdowns will be lifted and re-started in phases in order to manage the allocation of scarce healthcare resources, but over as yet unknown timescales.  So we currently have limited information on both the duration and amplitude of Covid-19’s run-out.  As demand forecasters, we just have to work with that and adjust the forecasts as new information manifests itself.

Forecasting during the pandemic

The key to demand forecasting during this time has to be the ability to quickly detect and respond to new data and new information.  No one can forecast accurately when so much is unknown about the future pattern of the virus.  But we can all respond to information as it becomes available – it’s optimizing how we respond, and how quickly we respond, that matters.

Here are three key elements we think your demand forecasting software should offer, in order to help you forecast through the crisis more effectively.

1. Top-down forecasting

The 2020 forecast we started the year with is almost certainly wrong by now.  However, with some adjustments for cancelled promotions and other activity, the mathematical relation between skus, or skus within customers, is still likely to be right, at least at some aggregate level.  We don’t want to lose all the forecasting effort we invested in getting those relations right.

Therefore, the application of top-down or multi-level forecast adjustments (i.e. from the middle to both up and down) will allow us to retain the relationships at the detail levels, by dialling down or up the forecasts at the more aggregated levels by a judgemental percentage or amount.

Multi-level forecasting
Flexing the top of the hierarchies

Unfortunately, no forecasting system can tell you the extent of the adjustment required, because there has never been a pandemic like this.  But once you have taken a view of the likely impact, your forecasting solution should allow you to apply it from the top-down.  In the Prophecy screenshot above, April and May are in the process of being dialled down by 10 percent.  When this forecast change is made, the software will roll it down over the product and customer hierarchies shown, reducing each dependent forecast by 10%.

This is very powerful – you can re-forecast for the pandemic in seconds.

2.  Detect exceptions

Many items are likely to suffer from “the toilet roll effect”.  In Britain, people panic-purchased toilet rolls to ensure that they had an adequate supply in the event of forced self-isolation.  Once it became known that panic-buying was occurring it just caused further panic-buying.  At some point, this stock will be used, and sales will dip below the normal rate.

In situations like these, the earlier a change in trend can be detected, the quicker it can be reflected in the demand forecast.

Spotting exceptions in Prophecy
Data driven selections to spot exceptions

One way your forecasting solution can help you detect exceptions earlier is via data-driven selections.  In other words, “show me the items where the latest data is different from expectation“.

In the Prophecy example above, we can instantly pull in all the items which over or undersold by 15% or more last week.  If we have point of sale data, we can devise alternative selection criteria.

The point is, statistical forecasting algorithms are of limited use when things are changing so quickly and unpredictably.  We have to identify the exceptions quickly, and try to work out the implications on the forecast.  Anything your forecasting software can do to help you in this will help you focus forecasting time on actually re-forecasting, rather than the unproductive activity of trying to find the exceptions.

3.  Adjusting History

Whilst there is a case for arguing that things may never go completely back to normal as we’ve all learned different behaviours during the crisis, the virus will eventually go, and we will need to create forecasts for new forecasting years.

If we use statistical forecasting, how will it cope with or understand what has been happening with covid-19?  It is likely that the disrupted sales history we acquire during the pandemic may span 12 to 24 months.  How can we use it to forecast beyond the pandemic?

We definitely cannot just use the pandemic sales data ‘as-is’.  Therefore, our forecasting solution needs to be able to ‘clean-up’ history by reversing out the effect of the pandemic disruption from the sales history used for generating future years’ forecasts.  Either that, or we may have to consider abandoning statistical forecasting altogether.

Here we can see how Prophecy lets us devise persistent history overrides to take out the coronavirus effects:

History Overrides Management
Manage history overrides

The orange line shows the cleaned up history.  Using this data, rather than the raw history shown in the blue line, is likely to generate a much more reliable statistical forecast, for as long as the covid-19 period stays in the sales history.

And because statistical forecasting ideally requires two to three years of data, the adjustments we make now will affect the statistical forecasts we generate for the next two to three years.


Forecasting demand and sales is challenging even in normal times.  We live in far from normal times and the effect of the coronavirus will be with us at least into the medium term.  No one really knows, at this stage, the duration or overall effect of the distortion.  As forecasters, we need to use the best software tools available to help us understand and manage the uncertainty in the best way possible.

Any additional ideas for helping forecasters address the issues caused by coronavirus?  Please put them in the comments below!

Simple rules to avoid sales forecasting mistakes

Whether you generate sales forecasts using sophisticated statistical or judgemental methods, you will need much more from your demand forecasting software.  Especially where the same software extends the forecasts to revenue, margin and beyond for account planning and financial forecasting / budgeting purposes.

Our previous blog post, 6 key components of an integrated sales forecasting solution provides a good starting point on what to look for.

In this post, we look at a key element of a single component – “Control”.  How do we eliminate silly mistakes, like forecasting a quantity without a price or standard cost?  How do we lock the future horizons for some items and not others?  How do we ensure that the forecasts for some items in nominated customers meet a minimum order quantity?  How can we prevent users forecasting more than a ceiling quantity on a limited stock item?

These ‘control’ items don’t help you see into the future better.  But they do help you produce better business forecasts.

Take control of your forecasts!

The November Prophecy™ update contributes further to one of the six key components of a sales forecasting software solution, ‘Analysis and Control’.

Specifically, Prophecy™’s new rules engine helps you avoid and optionally correct data entry errors or other types of forecasts which violate a flexible set of rules defined in your Prophecy™ database.

Here is a quick video of the new Prophecy™ rules engine in action:

How do Prophecy™ rules help you produce more accurate forecasts?

Effectively, they catch your mistakes as soon as they happen.  They are fully customised to your Prophecy™ implementation (and can typically be implemented in minutes):

    • Prevent a volume forecast unless there is already a matching Price and / or Standard Cost.  Or warn the user when this issue occurs.
    • Prevent inadvertent deletion of Price forecast where this is an existing volume forecast.
    • Lock forecast periods for specific customers and products only.
    • Enforce a minimum order quantity by SKU (and customer, if relevant).
    • Automatically round forecasts to whole pallet quantities for specified customers (and skus).
    • Enforce (or warn the user) a maximum or minimum volume forecast per time period, based on any metric.  For example, not greater than Budget, not greater than three times the recent running rate etc..
    • Limit allocation of a sku in a future time period to a preset maximum across all customers.

These are just ideas of what’s possible.  In fact, virtually any sales forecasting rule you care to think of can be implemented.  The only requirement is that the rule logic returns a simple Pass / Fail result, and an optional ‘corrected forecast’.

The rule execution can utilise data from any SQL source (not just the Prophecy database) in its logic.   That’s it – loads of power for a very, very low entry cost!

The technical bit

There are several pre-defined rule types.  The most flexible rule type is a SQL-based rule, which can run any SQL against any data source.  The SQL simply needs to return one record containing one field, which contains either a ‘1’ or a ‘0’, where ‘1’ means the rule is triggered.  A second (optional) field, if provided, contains the ‘corrected’ forecast that will replace the existing forecast in Prophecy™ :

Sales forecasting rules implementation
The SQL must return the ‘Fire’ field, where ‘1’ means the rule was triggered and ‘0’ means the forecast passed the rule test.

One last thing to add to the ‘techie’ bit.  The SQL-based rule is written in T-SQL, the language of Microsoft SQL Server.  Meaning you have full access to stored procedures etc., not just standard ‘simple’ SQL.


Here are a couple of screenshots, extracted from our November Newsletter:

Example sales forecast rule message box
This rule is triggered when the user enters a quantity but there is currently no forecasted Price.
On demand sales forecasting rules check dialog
This dialog lets you choose which rules to run in an ‘on demand’ rules check
Results window for on-demand sales forecast rules check
Results window for on-demand rules check. Clicking on a warning or error navigates to the corresponding cell in your Prophecy report.

Sales forecast rules can be configured to run on data entry, or on demand.  On entry means the rules run immediately a forecast goes into a cell in a Prophecy report.  On demand means the rules can be run over all the items in the Prophecy report in a single batch.

Bottom line

There’s a lot more to improving sales forecasting accuracy than just applying statistical algorithms to history.  Prophecy™’s rules-based validations and checks are just one of the many ways that Prophecy™ adds value and quality to your forecasting process.  Control out-of-range or missing forecasts, set rules for sensible maximums or stock availabilities, or any other unique, implementation-specific requirement.  All these requirements, and many more we haven’t thought of yet, can now be met easily within Prophecy™!

How ‘Forecastability’ Analysis Improves Forecast Accuracy

What is ‘Forecastability’?

How 'Forecastability' Analysis Improves Forecast Accuracy 2

Every forecaster knows that there is no single, ‘best practice’ way to forecast sales of an item.  But if different items possess different ‘forecastability’ characteristics, surely one can infer different best methods for forecasting them, and hence improve productivity and forecast accuracy.

By ‘forecastability’ (a word that does not actually exist in the dictionary!) we mean identifying how forecastable an item actually is.  Are some items totally unforecastable, for example?

How ‘Forecastability’ Helps Forecasters

Consider an item that is ordered very intermittently and irregularly through time.  Assume also that each order is totally different in quantity to the preceding and following order.  Demand like this is called ‘lumpy’ in the forecasting literature.  Arguably, items like this are actually impossible to forecast accurately:

Lumpy forecast demand
Lumpy demand pattern

Options for addressing ‘Lumpy’ demand are:

    1. Will the customer engage in discussion over making the demand pattern more predictable?
    2. If not, consider forecasting the item at a higher level of customer hierarchy (aggregation).  This may smooth out the irregularity of level and interval and make the item more forecastable.
    3. If this is not possible, consider a safety stock strategy (especially for low volume / value items) because the item is simply not forecastable.  (Holding stock is clearly a difficult ‘sell’ for the forecaster because no one wants to tie up money in inventory.  However, ‘Forecastability’ measurement will help the ‘sell’ by providing an objective and irrefutable measurement of the issue to the business.)

If none of these options are possible then a question has to be answered over whether it is economic to sell this item due to the high cost of meeting demand.

The other end of the ‘forecastability’ spectrum is items which are ordered regularly and where the demand level is similar each period.  These items have ‘Smooth’ demand:

Smooth demand characteristic
Smooth demand characteristic

These items are relatively easy to forecast.  They are very suited to automated statistical forecasting (e.g. via Prophecy’s R engine).  Software, such as Prophecy, should let you quickly identify these classic statistical forecasting candidates and push them into the statistical engine.

Between the ‘Lumpy’ and ‘Smooth’ group of items are the ‘in-between’ items.

An item with ‘Intermittent’ demand has irregular ordering time periods, but a similar quantity in each order:

Intermittent demand pattern
Intermittent demand pattern

These items require a similar approach to the ‘Lumpy’ category.  Forecasting at a higher level of product aggregation can even out the demand interval and make the item easier to forecast, if it’s not possible to work with the customer.  For low volume items, the cost of safety stock may be a fallback where neither of these options works.

Finally, ‘Erratic’ items.  These have orders every forecast period but at vastly different levels.  They are likely to be highly seasonal or promotional.

Erratic demand pattern
Erratic demand pattern

Seasonal items can still be forecasted using statistical methods.  Many statistical forecasting models, including those in Prophecy™, employ ‘outlier detection’ to remove the peaks and troughs of promotions, allowing you to forecast the ‘standard sales’ statistically and overlay promotions afterwards (e.g. using Prophecy™’s Trade Promotions Planning module).

These items require the highest ‘judgemental’ element to the forecasting process.  Particularly for items where the statistical forecasting MAPE (mean average percent deviation) proves high – i.e. erratic or no seasonality.

A forecaster can only “play the hand they’ve been dealt” and one has to be realistic about how easy or difficult the different items can be to forecast.

However, the strategies described here at least provide a starting point to making the best of the hand.

Pulling the four demand categories together into a single view we get:

Forecastability Quadrants
Forecastability Quadrants

The Mechanics of Forecastability

As illustrated above, forecastability is a function of demand level variability (the x-axis on the quadrant graphic) and demand interval variability (the y-axis on the quadrant graphic).

Demand level variability is measured by the Coefficient of Variation (CV) : the ratio of the standard deviation to the mean.  A high variation from the mean indicates a high variability of demand.

Demand interval variability is measured using the Average Demand Interval (ADI).  For example, say there are 36 time periods in the history but only 12 have a sale.  The ADI would then be 36 / 12 = 3.  In other words, on average, a sale occurs every three periods.

Plotting the CV and the ADI provides the quadrant analysis shown in the preceding graphic.  In Prophecy™ you’ll see it rendered like this:

How 'Forecastability' Analysis Improves Forecast Accuracy 3

The red lines delineate the quadrants.  Hover tooltips help identify the quadrants or the item at each plot point.  The items from any quadrant can be instantly pushed into a Prophecy report and statistically / judgementally forecasted with a single click of one of the buttons in the panel labelled ‘Push into Prophecy Report..’.  You can filter out low volume items, which can make it harder to see spot the key forecastability opportunities.  Finally, the graph can also be rendered as a ‘bubble’ plot, where the size of each bubble corresponds to the average sale per period.

The ‘pay-off’

Being able to categorise items for their ‘forecastability’ characteristics has the potential to make forecasters more productive, by helping them to:

  • Choose the best forecasting strategy for each item.
  • Instantly identify the items that lend themselves to automatic forecasting.
  • Objectively measure of the difficulty of forecasting.

Some people, particularly those who are not directly responsible for forecasting, have unrealistic expectations about forecast accuracy.  ‘Forecastability’ measurement can help them understand the issues in a more data-driven and objective way, particularly relating to the ‘lumpy’, or unforecastable items.