Safety Stock Planning
Safety stock planning is a step in the replenishment planning process of the SAP Supply Network Collaboration (SAP SNC). With this planning step, you can achieve a certain service level by creating safety stock for all intermediate and finished products at the corresponding locations across the entire supply chain.
Note
Safety stock planning is only available if you are running SAP SNC as part of an SCM server installation.
Safety stock is used to safeguard stock in the supply chain against uncertain influencing factors. Supply chain planning is susceptible to a number of influencing factors that cannot be predicted with certainty in advance. In the case of forecasts for customer demand, for example, there may arise uncertainty regarding the quantity. In addition to this, disruptions in production or transportation time fluctuations lead to discrepancies in planned replenishment lead times. To safeguard yourself against such uncertainties in planning, there are various measures you can take, which you can use either individually or together:
Overestimate customer demand
Underestimate production output quantity
Overestimate procurement lead times
Use safety stock
While overestimating customer demand is a Demand Planning tool for safeguarding against forecasting errors, you can model an underestimation of production output quantity and an overestimation of procurement lead times using production process models (PPMs) or production data structures (PDSs) and transportation lanes.
You must address the following two questions as part of Safety Stock Planning:
At which locations within the supply chain do you want to have safety stock?
How much safety stock do you want to hold at a particular location?
The following figure shows and example of a supply chain:

With the aid of this simple supply chain, it immediately becomes clear that the question of safety stock levels is a highly complex decision-making problem due to the variety of possible combinations (calculated as two to the power n). In this example, there are already 64 possibilities. Due to this wide range of possibilities, it is advisable to make use of the planner's experience and allow the planner to simulate selected planning scenarios.
As safety stock is necessary for products at different locations, you can select a safety stock method for each location product in the product master. Here the different methods are split into standard and advanced methods.
The standard methods are based on the planner directly giving the system the information regarding the safety stock. Safety stock planning within replenishment planning in SAP SNC takes the following standard methods into account:
Safety Stock from Location Product Master (SB
)
Safety Days' Supply from Location Product Master (SZ
)
Safety stock derived from the maximum of safety stock methods SB
and SZ
.
For more information, see Standard Safety Stock Planning.
While the standard methods are based exclusively on the planner's experiences, in the extended methods, the system determines a suggestion for the level of safety stock based on scientific algorithms.
The starting point provides a service level that should be reached by maintaining the calculated safety stock. You can define this service level on the Lot Size
tab page in the product master. It can be interpreted as follows (based on the business process):
Shortfall-event-oriented (alpha service level): The service level in percentage means that no shortfall is expected in x percent of the buckets within the planning period.
Shortfall-quantity-oriented (beta service level): The service level in percentage means that x percent of the expected total customer demand can be fulfilled within the planning period.
Example
The example in the following table illustrates the interpretation of the service level:
Period |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
Expected demand |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
Shortfall quantity |
0 |
0 |
0 |
0 |
0 |
10 |
0 |
0 |
0 |
10 |
Shortfall event |
- |
- |
- |
- |
- |
X |
- |
- |
- |
X |
Total of shortfall quantities: 20 -> beta service level: 1 - (20 / 1000) = 98%
Total of shortfall events: 2 -> alpha service level: 1 - (2 / 10) = 80%
To decide which service level to use, answer this question: Are the costs for subsequently delivering a shortfall quantity dependent on the shortfall quantity or not? If these costs are not dependent on the shortfall quantity (fixed costs), we recommend that you use an alpha service level; if they are dependent on the shortfall quantity (variable costs), a beta service level would be more appropriate.
Additionally, the stockholding method has significant influence on the algorithm for calculating safety stock. The following two different stockholding methods exist:
Reorder cycle method: a time-dependent purchase order decision is made. This means that procurement can only be triggered for all t periods
Reorder point method: makes a stock-dependent purchase order decision. This means that if a specific stock s (purchase order point) falls short, procurement can be triggered.
The following figure illustrates the stockholding method:

The following four model-supported safety stock methods occur with both service levels:
Reorder Cycle Method |
Reorder Point Method |
|
Alpha service level |
|
|
Beta service level |
|
|
To implement these methods the following prerequisites apply:
Regular product demand (as opposed to sporadic demand)
Shortfall quantities are delivered subsequently ("Back Order Case" as opposed to the "Lost Sales Case")
If these prerequisites are met, the system can calculate the safety stock on any step of the supply chain and for each bucket in the planning period.
Note
These methods are only available in an SAP SCM server installation.
The system can consider a demand forecast error for calculating the safety stock. The data regarding the planned and realized demand quantity, which you provide for the system with a time series type, forms the starting point for calculating the forecast error.
The system calculates the forecast error by determining the planned actual deviation of the corresponding time series data. The system interprets the standard deviation of the planned actual deviation as a forecast error. This way, the system determines a forecast error from the historical data, which the future forecast is then based on. To correctly evaluate the dynamic of the future forecast, it is advisable to interpret this forecast error as a relative forecast error. That means that the ratio of forecast error to forecast (variation coefficient) is recorded, and not the forecast error itself. This is clarified in the following example.
Example
The following values are used in this example:
Mean value of the planned demand quantity: 100
Standard deviation of the planned actual deviations: 10
The following table shows the calculations of the forecast error:
Period |
1 |
2 |
3 |
4 |
5 |
Demand forecast |
100 |
1000 |
1000 |
100 |
100 |
Forecast error if the standard deviation is constant |
10 |
10 |
10 |
10 |
10 |
Forecast error if the variation coefficient is constant |
10 |
100 |
100 |
10 |
10 |
If the forecast error is not dependent on the forecast, an incremental forecast unexpectedly causes the safety stock to fall because the forecast error decreases in relation to the forecast. For this reason, relative forecast errors are a better idea in a dynamic environment than constant forecast errors.
For more information, see Extended Safety Stock Planning.
If you use one of the safety stock methods SB
, SZ
, or SM
, the system considers the minimum safety stock value that has been maintained in the location product master record. If the calculated safety stock
figure is lower than the minimum safety stock, you must increase the safety stock figure to equal minimum safety stock.
If you have maintained the minimum safety stock in the location product master record, the system considers it when you use the extended safety stock methods AT
, AS
, BT
, or BS
.
The system passes the minimum safety stock automatically when you run the report /SAPAPO/SAFETY_STOCK_PLANNING
.