Sunday, November 9, 2014

SAP's safety stock does NOT buffer demand fluctuations during the planning process !

Does the headline in this blog confuse you? Sorry, that is nit my intention. I just want to point out a not-so-well-known fact.

When you set a safety stock level in the MRP2 screen of the material master it is subtracted from available inventory in the MD04 stock / requirements list. Therefore the MRP run ignores that part of the inventory. Imagine the following situation: There is a forecast of 50 pieces for next month and you have maintained a safety stock of 30 pieces. The system will plan to have an inventory of 80 pieces in stock at the beginning of next month. As we are approaching the next month and actual customer orders drop in, the forecast is replaced by actual orders. Should the actual order exceed the forecast - lets say that customers demand 60 pieces instead of 50 - the MRP run will generate a new replenishment proposal for an extra 10 (instead of using the safety stock) and you end up with 90 pieces in inventory, even though you only need 60.

This type of behavior creates dead stock and misses the purpose of using a safety stock as a buffering strategy. The situation worsens if you have a rounding value or a fixed lot size.

So what can you do? Use a range of coverage profile that drives a dynamic safety stock if the situation allows for it. In a range of coverage profile you have a target safety coverage and a minimum safety coverage (in days of coverage). The MRP run can 'see' the safety levels and ONLY generates a replenishment order when the minimum safety coverage is broken. Therefore you have to make sure that the minimum safety coverage is set to 1 day and the target is higher. In that case the MRP planning run uses all the days in the target coverage as a buffer to counter demand variability.

By the way... the range of coverage also has a maximum safety coverage to keep the inventory from blowing up, should the forecast be too high.


  1. Don't you agree that the use of coverage profiles are really only effective when there is smooth forecast or demand in the system? If the demand is too sporadic the coverage profiles will not trigger procurement proposals to cover variability in the front end. It will only trigger additional requirements wherever the next planned requirement need is.

    In your static safety stock example above, wouldn't you expect the materials planner to recognize this and make a decision to either use the safety stock (or go ahead and convert the planned order to procure the extra 10pc.

    1. Dear Anonymous
      I agree... the range of coverage profiles need a future demand for it to work. If you don't have any, it won't buffer anything. However, I don't believe it has to be smooth demand. Spotty demand will be smoothed by the profile in that it calculates an average future daily demand.

      In regards to your second comment... yes, I agree but that's a lot of manual activity. If the planner has thousands of materials to plan then this becomes an issue.

      generally speaking I am trying to address a more general problem. Most people using SAP are wondering why inventory levels are high and the fact that MRP ignores the static safety stock is one of those things driving dead stock.


Note: Only a member of this blog may post a comment.