Predict Off Shelf events before they happen

Clients often ask for this, some marketing materials claim to offer it, but can it be done?  It depends on what you want to predict.

Can you predict an individual OSA event:  the theft of a certain product at an exact time in a specfic store?  The loss of a shelf-tag, a store associate (or customer) blocking a replenishment spot, the misplacement and subsequent loss of product in the back room?

This is an emphatic, categorical "no, absolutely not, no way, never".   Think about it.  Do I really need to explain?

Can you predict when a store is going to run out of stock?

You bet!  We need a number of facts on inventory, orders and need to generate a store level forecast for demand by product, but this is (relatively) basic blocking and tackling work.  100% "yes" this can be done.  From an OSA standpoint though it's only responsible for about 25% of the overall problem and you can't do it very far into the future.

Can you predict which stores, products and categories are likely to have most problems with maintaining on-shelf availability?

90% "yes".  There is data to suggest that OSA is routinely different across categories implying there are structural reasons for this.  Similarly some stores routinely out-perform others.  It should be possible to build a predictive model using product, store and planogram attributes (drivers) to explain this variation in long term performance.  

It's not the prediction itself we are interested in, the model quantifies  the contribution of the various drivers of  OSA and that is what is valuable.  Once we know what drives OSA (and by how much) we can work to change those inputs we can control.  This is how you make a step-change in OSA performance.

So why haven't we done this already?  Ideally it should be run against OSA measures from physical audits which are not widely available,  and the ones I have seen are heavily biased in one form or another.  It could be run against off-shelf alerting system results which captures about 25% of the OSA problem but there are issues with both data volume and security to get a broad spectrum of products and stores into one analysis.  These can, I think, be overcome - watch this space.

Can you detect off-shelf events where there are persistent problems stocking the shelf, but before sales drop completely to zero?

Yes we could!  Analytically it’s not that much more difficult than checking for a gap against 0 sales.    (Although it's a little more challenging in terms of software implementation at scale.)

If we estimate that average sales over a period should have been 8.3 but actual sales were only 3 is that unusual?    A little stats can help:  if we assume a Poisson distribution for demand it turns out that the probability of selling 3 or less, given expected demand of 8.3 is 3.5%.  So, it’s unusual, but as this could happen by pure chance roughly 1 in 30 times, it’s probably not exceptional enough to call out an “off shelf” alert.  Actually, you won't call an alert at a 1% signifcance level until the expected demand exceeds 10.  Bear in mind that 10 units of sales per store is either a very fast-moving product or a very long evaluation period: the majority of grocery products sell less than 1 unit per store per week.   

This approach is really only relevant then for very fast-moving products.  You may also want to consider how you physically check for such an issue in store.  Chances are that the product is on the shelf much of the time.  How are you going to find the problem?

This post is the tenth in a series on On-Shelf Availability.