Skip to Content
Author's profile photo Jiaul Haque

Safety Stock Calculation

In any supply chain planning system , safety stock is a extra  stock to avoid stock out or fulfill the uncertain demand at any point in time .Adequate safety stock levels permit business operations to proceed according to their plans.Safety stock is held when there is uncertainty in the demand level or planned delivery time for the product; it serves as an insurance against stock outs.For example, a supplier may deliver their product late, the warehouse may be on
strike or a number of items may be of poor quality. In addition, a competitor may be sold out on a product, increasing demand. Safety stocks enable
organizations to satisfy customer demand in the event of these possibilities.In order to determine the safety stock level, you must first specify the risk of
material shortage and also the desired service level.

In SAP R/3 system ,  safety stock can be  maintained manually  or same can be calculated  automatically in material master level  .

Manual Safety Stock :  In this case , business needs to decide the Safety Stock Qty. based on the service level history or previous consumption  and then same has to be updated in MRP2 view  Safety Stock field under Net Requirement Calculation

Automatic Safety Stock : Safety Stock is calculated automatically  by MRP Type based on Service level , Lead Time, Forecasted demand  To calculate safety stock automatically based on the previous consumption history of any material , following  material master parameters needs to be maintained –

1.MRP1 View :

  • MRP Type : VM-Automatic Re-order point   or  VV -Forecast Base Planning
  • MRP Group -0000/0001/0002 as per your business requirement.
  • MRP Controller
  • Lot Size : EX

2.MRP2 View :

  • Procurement Type : E/F/X based on the In-house or External Procurement  or both
  • Service level Percentage : x% based on the service level of your business .
  • Planned Delivery Time
  • GR processing time
  • Service level %  :  Service level is an event-oriented performance criterion. It measures the probability that all customer orders arriving within a given time interval will be completely delivered from stock on hand, i.e. without delay .Service level have individual formula to calculate in Inventory management and been identified in a chart as provided by the  SAP .SL %  has corresponding  service level factor which is a important parameter for safety stock calculation .

3.MRP3 View :

  • Period Indicator-Monthly/Weekly  based on your requirement . This will be getting copied to Forecasting view in material master
  • Availability Check Indicator: 01
  • Planning Strategy : 10

4.Forecasting View :

  • Base Unit of Measure
  • Forecast Model – It can be Automatic Selection (J) or a model can be assigned like G as Moving average or W-Weighted Moving average etc.
  • History Periods -The number of historical values the system uses for the forecast. For example 60 months .If fewer historical values exist in the system than specified here, the system includes all the existing values in the forecast. If this field remains empty, no historical values are used to carry out the
    forecast. However, this is only possible in the case of manual initialization
  • Forecast Period -No period for which forecasted demand will be executed based on the history periods maintained for any material .No of forecast period can be decided based on the planning cycle or lead time replenishment  of any material in supply chain planning.
  • Initializing parameters -Manual (M) or Initialize by system (X) .It specifies that the system should initialize a forecast model. The system also calculates the parameters that are needed for the model (such as basic value, trend value, and seasonal indices).The system needs a set number of historical values in order to be able to carry out the initialization, and these depend on the chosen forecast model.
  • Model Selection -If system decide the Forecast Model  , then model selection is required .System chose either A(Trend & Seasonal) , S( Seasonal) , T(Trend)
  • Smoothing factors -Alpha , Beta , Gama , Delta. These factors are important to calculate the Basic Values , Trend Values , Seasonal Index ,MAD . If these parameters are used for forecasting  and you have not specified any value, the system takes the default value 0.2 for Alpha , 0.1 for Beta ,0.3 for Gama , 0.3 for Delta as default as they are stored in Forecast Module in SAP.


  • Consumption values : Total consumption for the period. It is the sum of planned and unplanned consumption values. Generally , consumption values get updated in Forecasting View or Additional Data Tab of material master against the movement type setup in OMJJ .Here , consumption posting should be kept as G-Planned Withdrawal ( Total Consumption ) under the Update Control section for any movement type like 101 , 601 etc.

Safety Stock Calculation:  ( As an Example )

SAP Formula Number : 17   SS = R  x Square root of W x MAD

Service Level %age : 85     Service level Factor – R = : 1.3 as per SAP Help Chart  corresponding to service level percentage maintained in MRP2 view.

Planned delivery time  : 45

GR Processing Time (GRT) : 0

Purchase  Processing time (PRT) : 0

Mean Absolute Deviation (MAD)   : 278  .This will be calculated by system during forecast execution either in MP38 or MM02.

W = ( PLDT *5/7) + GRT+PRT  = 32.14   Square W = 1.22534

Safety Stock = R  x Square root of W x MAD  = 1.3  * 1.22534 * 278 = 442

MRP 1 View –

Forecasting View-SS-1.jpg




Safety Stock update-MRP2 viewSS-5.jpg


Total Forecast in MP38 and Safety stock calculation by system –


Note :

Reference -SAP Help

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Jorge Garcia
      Jorge Garcia

      Hello Jiaul,


      thanks for the information, I have started using the forecast view with automatic reorder level with the settings you mentioned but in my case  I have selected "J" automatic model and other settings that I attached in the image below. When I run the forecast for first time I obtain a reorder level and when I check the forecast view some adititonal setting vhave been filled "that is normal behaviour", the issue is that for some materials If I execute the forecast for second time I obtain a different reorder level which is lower. I have not been able to find a relation. maybe it is a concept i am missing.




      forecast parameters.JPG

      Author's profile photo Former Member
      Former Member

      A good read. Can you please mention if the element of seasonal products can be added in such forecast? For example Product A is required higher that average forecast value in some months? Should we change forecast parameters time and again?

      Author's profile photo Former Member
      Former Member

      Hi Jiaul,

      Thanks for your sharing. I have started using MRP Type V2 in my planning. But i cant get the formula for my safety stock calculation. Can you please mention about this formula that you state above :
      W = ( PLDT *5/7) + GRT+PRT,

      why PLDT (planned delivery time) must be *5/7.

      Please help.



      Author's profile photo Jiaul Haque
      Jiaul Haque
      Blog Post Author

      Yohanna ,

      W = (PLDT*5/7) +GRT+PRT  Here we consider 5 workday in a week .

      Author's profile photo Former Member
      Former Member

      Dear Jiaul,

      ok, thank you for the good sharing.


      Author's profile photo David Liphshitz
      David Liphshitz

      Hi all,

      Pls explain:

      How when W =  32.14 ,  Square W = 1.22534  ???

      Square Root of 32.14  =  5.669


      Tnx, David


      Author's profile photo Yossi Benjoya
      Yossi Benjoya

      the calculation is monthly based,

      if there are 30 days in month  >> work days 30 * 5 / 7 = 21.4

      32.14 / 21.4 = 1.501

      sqrt (1.501)  = 1.225508


      Author's profile photo Maheboob Ali
      Maheboob Ali

      SAP Formula Number: 17   SS = R  x Square root of W x MAD

      What is 'W' in the above formula?

      Author's profile photo Rocco Antonio Musumeci
      Rocco Antonio Musumeci

      Good morning,

      can someone help me understand how the system calculates the safety stock?

      I found the formula which should be this

      SS = R x SQRT(W) x MAD

      where W =(Lead time /Forecast period)

      and I have set the following parameters in the material master:

      Service level: 80 % which means R Factor 1.05;

      Period Indicator: T 'Daily

      Forecast Model: D --> Constant model

      Plan. Delivery Time: 45 days

      History periods: 60 days

      Forecast periods: 30 days

      MAD = 5

      why is the safety stock result is 31? (see screen). can anyone help me understand?