Automatic Forecast Adjustment Made Simple!

What is Automatic Forecast Adjustment, anyway?

In sales forecasting, unlike investments, the recent past is very often a good indicator of the near-term future.

An automatic forecast adjustment uses data from the immediate past to update the forecasts for the immediate future.  No more, no less.

You can improve the accuracy of your near-term forecasts quickly and efficiently by deploying automatic or semi-automatic adjustment algorithms.  Obviously, this is done through your sales forecasting software solution.

Automatic forecast adjustment

Understanding how the Recent Past Affects the Immediate Future

Arguably forecasting is easier for many products if you are selling direct to the end customer because last period’s sale more closely reflects real demand.  It’s much harder to draw inferences if you are selling to a retailer, who sells to the end customer.

Consider the effect of an under-sale last week.  It could mean your customer’s stock has reduced and therefore this week’s order will be correspondingly higher.  Alternatively, could it mean a decrease in demand that needs to be reflected in near-term forecasts?

The same dilemma applies to over-sales.  Do they reflect real increases in demand, or a bringing forward of future orders from your customer?

So, How Do We Auto-Adjust?

There is clearly no “one-size-fits-all” solution.  As with all things forecasting, it pays to know as much as possible about your market, your products and all the influences on sales.

You need to carefully select which Auto-Adjust rules to apply to different products and customers through careful, advanced categorisation.  Once you’ve done that – admittedly, a non-trivial exercise – you can start taking advantage of the Auto-Adjust methods your software provides.  (It does, doesn’t it?)

Automatic Forecast Adjustment Methods

Method 1: Assume the forecast last period was right

This method assumes recent variance in actual versus forecast is fully attributable to phasing issues.  Therefore:

    • An under-sale last period will be fully recovered this period or in the near-term.
    • An over-sale last period represents brought-forward orders, and therefore this period’s forecast must be correspondingly reduced.

These assumptions are particularly applicable to promotions, where, frequently, the total forecast for the promotion has been fixed and assumptions on the phasing of sales-in are proven incorrect.

The kind of automatic adjustment that can be used here is:

    • Subtract over-sales from the near-term forecasts until the whole over-sale has been exhausted.  (Possibly set a time limit for the periods affected, beyond which the over-sale actually becomes a [partial] oversale.
    • Add under-sales back to current period or a defined number of near-term periods.

Consider the following over-sale example:

Automatic forecast adjustment - oversales

Last period we over-sold by 435.  Therefore we reduce week 34’s forecast to zero, leaving 114 of the over-sale unaccounted, which is subtracted from the week 35 forecast.  Week 34’s forecast is therefore reduced to zero and week 35’s to 207.

Once the decision has been made to subtract over-sales from the near-term, the process can be automated by the software.  It’s just a mechanical forecasting chore that software can perform instantly.

And here’s how an under-sale would be adjusted:

Automatic forecast adjustment - undersale


Here, the under-sale of 50 is recovered in the next 3 periods, where half the under-sale is expected to be recovered in current period and the remainder spread across the following 2 periods.  Again, the rule details determine the spread – you may prefer the whole under-sale to be added back to current period on a rolling process.

Finally, we may need to constrain, or think again,  on a large over-sale:

automatic forecast adjustment - constrained horizon for adjustment

Here, we have a massive over-sale of 14,614.  The rule is set up to stop applying the rule after 4 weeks.  Therefore, the next 4 weeks’ forecasts are set to zero and the forecast thereafter is unchanged.  13,499 of the over-sale is left unaccounted for, as shown in the corresponding cell.  In this case, maybe some human intervention is required to explore the reason for the over-sale further and consider making manual adjustments to the mechanical execution of the rule.

Productivity, Productivity, Productivity!

Running the type of rule-set described above (and Prophecy has others) can become a regular part of a demand planner / forecaster’s workflow.  It allows large number of forecasts to be adjusted very quickly.

The software needs to clearly show the execution of the rules so that the planner can understand, sanity-check and, ultimately take control of and responsibility for the forecast changes made.

The way Prophecy implements these rule-sets does just that.  The planner chooses the products and customers applicable to each rule-set.  They can then preview and amend the forecast changes proposed by the rule-set.  When they are happy with the results, they can click the ‘Commit!’ button to apply the forecast changes to the plan.  Here is the Prophecy interface:

Automatic forecast adjustment - Prophecy Screenshot

Everything is colour-coded to aid readability, the grid is fully multi-dimensional (like an Excel pivot table), the ‘tree’ on the left lets you instantly find an item and the optional graph shows the forecast and changes for the item the cursor is on.

So, should you use Automatic Adjustment rules?

It’s true that mechanistic forecasting techniques, applied blindly, are potentially dangerous.  However, there is definitely a role for auto-adjustment in the planning process, providing it is applied appropriately,  That means, identifying which products, customers and market situations it will work in and which it won’t.  It’s important to have this categorisation nailed before blindly running automated forecasting rules.

Then, be sure to monitor whether deployment of the rules is getting you better sales forecasting accuracy.  If it is, they free up the planner’s time to add value to forecasts which cannot be managed in this way.

Data Perceptions recommends using Automatic Adjustment on fixed quantity promotions, to re-phase over periods where the initial phasing as proven incorrect.  There are surely other situations and other rules where Automatic Adjustment has a role but this would be a great starting point.

The Marketing Bit

OK, it had to come!  Just to say that Data Perceptions forecasting solution, Prophecy for Windows, has just been updated to feature a full implementation of automatic adjustment rules.

It fully implements the kind of rule-set described in this post.

In addition, it provides a ‘naive’ weighted average rule – i.e. make a weighted average of the last [n] periods and apply it to the next [n] periods.

Let us know in the comments if there are additional rule-sets we could add which would help you react to short term changes faster, better or more accurately.  We’d love to hear!

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 1

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 2

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.