Skip to Content
Technical Articles
Author's profile photo Yuriy Kurmachev

ABC/XYZ segmentation in SAP IBP

Demand planning process usually starts with some type of products segmentation, for example ABC, XYZ and FMR or time-series analysis. In SAP Integrated Business Planning for Supply Chain there are two different apps to cover this requirement:

  • Manage ABC/XYZ Segmentation rules – helps to make ABC/XYZ segments based on different levels, segmentation methods and thresholds.
  • Manage Forecast Automation Profiles – helps to analyze time-series data patterns (Trend, Seasonality, Intermittency & Volatility, Lumpy, Continuous) on different levels

In this blog post, we will focus on Manage ABC/XYZ Segmentation rules app and as it’s mentioned above, ABC/XYZ segmentation can be executed at any planning level and the results can be also opened in SAP IBP excel add-in at any level if you configure system using virtual master data types. Please read this blog post to check how to create virtual master data type in SAP Integrated Business Planning for Supply Chain

ABC segmentation is the prioritization of planning objects based on their relative importance (for example, based on Actual Revenue). For example, you can generate your ABC segmentation profile at Location-Brand level because you would like to check data of your actual sales at this level. To do this, you need to:

  • Create additional attribute for ABC segment
  • Generate master data with Location and Brand as root attributes
  • Assign additional ABC attribute created previously
  • Set your input key figure at relevant planning level

After that, you can generate virtual master data type to assign results of segmentation to more detailed level, for example, Location-Product. In this case, you will see the same segment (A, B or C) for all Products within one Brand.

For ABC segmentation, in SAP Integrated Business Planning for Supply Chain we have 5 very well explained on portal different available methods:

  • By Pareto Principle (Sorted and Cumulated %)
  • By Pareto Principle (Sorted and Cumulated Values)
  • By Number of Items (Sorted %)
  • By Number of Items (Sorted Values)
  • By Segmentation Measure (Single Values)

To avoid virtual master data configuration, there is a grouping feature which helps you to calculate segments separately in different groups and it can replace virtual master data creation, however it’s available only for ABC segmentation.


XYZ segmentation is the classification of planning objects based on their demand volatility (for example, based on Actual Sales). Same logic can be used for XYZ segmentation and it’s worth to mention, that for XYZ we have 2 very well explained on portal different strategies with its own methods inside:

  • Calculate variation
  • Coefficient of Variation (CV)
  • Coefficient of Variation (CV) Squared
  • Aggregate over the periods
  • Sum
  • Minimum
  • Maximum
  • Average

During XYZ segmentation with selected calculate variation method, it is possible to consider results of time-series analysis to remove any trend or seasonality from the time series data if necessary and calculate CV or CV Squared based on this transformed time series.

Inside of this app, for both ABC and XYZ, you can define relevant for your process time horizon (number of buckets in the past, future or past and future) as well as your own additional segments based on any custom thresholds for better identification of different groups, for example:

You can also use locking feature for your attribute values which you’d like to set manually. In this case system will not overwrite data for selected combination.


ABC/XYZ segmentation is a very important part of your planning process, because it is a one of the first step in demand planning and this information can be very helpful, for example, for your inventory level calculation. In addition to time-series analysis results, ABC/XYZ segments can be very useful to decrease your efforts for a daily demand planning process tasks, make your forecast more accurate and increase your knowledge of your data.

Assigned Tags

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

      Good article.

      Thank you, bro!

      Author's profile photo Mark Chockalingam
      Mark Chockalingam

      CV will be low if you have a constant demand pattern.

      If your demand pattern is highly seasonal or sporadic, your CV will be high. Higher the amplitude of the swings, higher the CV, and in cases, this may be even worse than when the demand pattern is sporadic.

      Similarly, CV may be high for products that are recently launched and have just a few months of history.

      Would love to hear what you do when you implement segmentation to represent the variability measure?

      Do you use the CV or something else?

      Do you make any adjustments for the patterned demand or for products that are just recently launched?