Personalization of web content, especially for business-to-consumer (B2C) stores, is in high demand among customers nowadays. Overall, they prefer to see relevant products throughout their buying journey as part of a state-of-the-art user experience. This also includes personalized searches and even personalized promotions. These high customer expectations can largely be met by SAP Commerce Cloud’s out-of-the-box dynamic personalization features.
What makes them dynamic? The content can change, for example, based on customer storefront behavior, giving a more personalized experience compared to static personalization features known as restrictions.
Let's briefly introduce the main building blocks for Dynamic Personalization first and apply them to an example before diving into the details:
In simple terms, let’s assume Laura’s company would like to have a "Summer Sale". To help with the sale, Laura can create a customization for their webstore that makes it look different for different users. To better organize these users, they're assigned to one or more segments, which comprise users with certain similarities, such as age, gender, or perceived interests based on their shopping history. Individual or a combination of segments can be used to create a target group.
The "Summer Sale" typically looks different for each target group, for example,
AdultTechLover or DiscountHuntersFromTheEU.
Our "Summer Sale" customization now includes several target groups that trigger different actions, such as exchanging UI components, adding promotions, or changing search results.
The following diagram demonstrates the relationship between customization, user, segment, target group, and action:

To illustrate how Laura can use Dynamic Personalization, let’s refine our example:
Laura created the SummerSale customization, which contains two target groups.
One is called VIPCustomerMen. It's configured to include users who belong to both the VIPCustomer and Men segments.
The other target group BigSpenderGeek is configured to include users who belong to either the BigSpender or Geek segments.

Both target groups VIPCustomerMen and BigSpenderGeek trigger different actions, as you can see in the following diagram:

In the preceding diagram, note the actions taken when the target group is triggered. These actions can be:
- The current user is shown a variation of one or more of the components displayed on the current page.
- The current user benefits from a promotion.
- The current user is assigned to a custom search profile that reorders products in the search results list.
Customer Segments
Now that we have briefly introduced the terms and applied them to an example, let us cover some important details regarding our building blocks:
A segment is the smallest available grouping element. A user may belong to any number of segments, and each segment may include many users.
The association of users with segments typically occurs behind the scenes and outside SAP Commerce Cloud by additional SAP solutions, such as SAP Engagement Cloud. Alternatively, an internal solution is also possible, but requires complex custom coding.
Target Groups
The entity that should experience the different behaviors of our customization is called a target group. It's made up of one or more segments, each of which in turn contains customers. For example: Customers only belong to target group T1 if they're members of its associated segments S1 AND S2.
Let’s consider our "Summer Sale" customization. When a customer belongs to segments S1 and S2, the system automatically triggers actions for target group T1. This may include displaying a banner or activating a promotion. T1 is just one of several target groups for our specific "Summer Sale", and each user within a different target group might experience the same customization differently.
And there may also be additional customizations, allowing for a wide variety of personalized experiences.
Customization Actions
But how does the system know which personalization behavior to execute for each target group of a specific customization? Well, this is provided by the actions defined for each target group of a customization.
Actions might switch one UI component against another. But an action could also trigger a target group-specific promotion, for example, 20% OFF for "DiscountLoverKids" or it might adjust the search results, for example, to show pink products on top of the Product List Page (PLP), but only for the "PinkLoverVIPWoman" target group.
Note
Congratulations! You've made it through the theory section. But just to make sure that you're comfortable with dynamic personalization on the job, here's a video summary of it:
Priorities
What would happen if a customer belongs to several segments that would theoretically trigger two different target groups inside the same customization?
This might lead to a conflict if each of the two target groups wants to replace the same UI component with a different one. Therefore, target groups are assigned a priority within their customization, and only one can be active at any given time for a specific user. Thus, the target group with the higher priority wins.
Ok, that was easy, but what if we have several customizations defined, and more than one could be active for a customer at the same time? Same problem, right? Therefore, customizations are also assigned a priority.
Let’s assume a customer belongs to two different target groups simultaneously, but this time they belong to different customizations. Both of them again want to replace the same UI component with a new one. In this case, the customization with higher priority wins, which can be easily set in SmartEdit.