Next Steps in E-Commerce Personalization

Key Takeaways

  • Content and price personalization is one of the key success criteria in today’s and tomorrows e-commerce scenarios and all about customer loyalty.
  • Consumerization of  B2B, mixing of B2B/B2C and pricing theory requires a very flexible mode of handling customer segmentation.
  • Customer segmentation can be achieved using one of three levels of dynamicity and engagement. Only the full and data-driven dynamic customer segmentation will enable maximal arbitrage and survival in current E-commerce scenarios.
  • The Intershop Commerce Management offers powerful integration models for creating and maintaining customer segments at all levels.

Reasons for Personalization

Speaking the right language

Songs, videos, products and news based on personal preferences surround us every day with every interaction with the Internet. Personalized content specifically appeals to us as a customer as it provides a higher level of relevance compared to generic content. It raises the communication between provider and customer to a higher level.

Personalization in commerce tries to keep in mind that every customer is different and is interested in a specific selection of products or services. Dividing all customers into smaller, well-defined groups allows for serving customers with much more specific, relevant marketing activities and messages increasing the chance that the customer will finally buy something. Having customer groups well defined, the e-commerce provider is then able to compare its groups with each other and easily find out which group is the most valuable. All this helps to use the marketing budget more effectively and efficiently.

Finding the right price

However, that is not the only reason to personalize product offerings. Sales organizations are nowadays facing a number of new challenges when selling products over the Internet. Firstly, pricing has become more and more difficult because of the absolute transparent pricing process. Customers can easily compare prices, search for webshops offering the same product for lower prices and leave your webshop with a simple click. Secondly, the same customers are expecting more and more services. Customers do not want to shop anymore, they want the experience.

In classic pricing theory, we know price differentiation according to three grades (see [3]). The first grade is also known as perfect pricing offering each customer the optimal price he/she would be willing to pay. It is well-known that such a pricing model faces some problems on the Internet as an intermediate seller might himself buy the product and try to re-sell it later. Price differentiation at second and third grade offers a common price to customer groups (i.e., segments) and not the individual customer. At second grade, product variations are offered and the customer chooses the product/price-combination he/she prefers. This is often referred to as the self-selection pricing model. At third grade, assumptions are made about the customer and his preferences based on location, age, gender, shopping history, etc.

Making your customers loyal

Customer segmentation can assist sales organizations to offer very personalized services, speaking the right language a customer expects and offering the right products and prices. All this helps to bind customers to the webshop making them willing to stay. Gerrit Heinemann [1] classifies customer segmentation activities therefore as one of the top 5 trends in current E-Commerce business models. He has included it also on his list of most important success criteria. Meier and others [2] provide strong support to this and ask for a shift of all marketing and structural activities to be seen from a customer-oriented perspective  (or, total customer centricity) and not a product-oriented perspective anymore. As we got already very much used to buying products on a personal basis, we can now see that this will also have an impact on the B2B E-commerce world. Both mentioned authors already speak about the consumerization of B2B or the appearance of B2B/B2C mixed models.

In summary, customer segmentation is all about customer loyalty. It has to be part of any successful E-commerce strategy including all B2B businesses.

In the following, we will define three stages of active customer segmentation concluding that only dynamic segmentation will fully support just mentioned aim. We will also claim that the Intershop Commerce Suite offers powerful integration mechanisms to support any segmentation effort.


In the following, we will see any visitor on the webshop as a customer. He has a shopping history, personal attributes (like age, gender, location, etc.) which are known or unknown to us.

Customer segmentation is then the assignment of customers to groups with the aim of offering the group-specific features, products, prices or services that are not offered to other customers outside the group. We call those offerings also marketing efforts. At level 1, such a customer segment is called a manual customer segment and customers are added to the segment without any automatic support.

Dynamic customer segments are known as the second level of customer segmentation. Here, only the customer segments are created manually by the sales organization. The assignment of customers to the segment is based on an automatic mechanism looking at properties of the customer or within his behavior. In an advanced stage of this level, the creation of customer segments is supported or at least partially assisted by machine learning or other data reading technologies.

At the third or highest level, customer segmentation is fully automatized. We also speak about fully dynamic, data-driven (or, automatic) customer segmentation. At this level, both, the assignment of customers to a certain segment and the customer segments themselves are subject to a dynamic change. Again, an advanced stage is known where such a dynamic customer segmentation is supported and controlled by modern A/B-testing and verification methodologies to support the right spending of marketing efforts and expenses.


LevelCustomer SegmentationAssignment of Customers to the SegmentCreation of Segments
1Manual Customer Segmentationmanualmanual
2Dynamic Customer Segmentsdynamicmanual
3Automatic Customer Segmentationdynamicdynamic


Level I: Manual Customer Segmentation

As mentioned above, at first level all customer segments are manually created by the sales organization. Within the Intershop Commerce Suite, you can set up such a customer segment using the menu item Customers | Customer Segments within the channel backoffice. Here I have created a new customer segment called VIP Customers.


The list of all customer segments now includes VIP_Customers


In a second step, customers are assigned to the any such created customer segment. Let us make Mrs. Patricia Miller be a member of the VIP_Customers.


Making Patricia Miller a VIP_Customer


While being comfortably orchestrated and maintained within the backoffice, the disadvantages and limitations of such customer segments are obvious. Unless the webshop is visited by only a very small group of customers or the customer segment is targetting itself only a very small group of customers, such manual assignments are cumbersome to maintain. Next, to an initial assignment of customers, it requires constant efforts to keep the segment up to date. As customers and their behavior change, the segment changes, too. In conclusion: The efforts to set up, maintain such manual customer segments are seldom justified with economic rewards.


Level II: Dynamic Customer Segments

The biggest advantage of this level is the automatic (dynamic) assignment of customers to the segment cutting the tremendous costs to keep the segment up to date. Within the Intershop Commerce Suite, such a dynamic customer segment can be created by subclassing com.intershop.component.customer.capi.CustomerSegmentBO class.

public class ExternalCustomerSegmentBOImpl extends AbstractBusinessObject implements CustomerSegmentBO {
    public ExternalCustomerSegmentBOImpl(String id, 
          ServiceConfigurationBOExternalCustomerSegmentExtensionImpl extension, 
          BusinessObjectContext context, ExternalCustomerSegment customerSegmentInformation) {
     ... ;

    public boolean isCustomerBOAssigned(CustomerBO customerBO) {
     ... ;        

There is only one important method that needs to be implemented: isCustomerBOAssigned(CustomerBO customerBO). It should return true or false depending on a freely chosen combination of attributes or behavior. The method is called at runtime when the customer is visiting a site of the webshop. A very simple customer segment that includes all customers having a name starting with the letter R would be as follows. Mrs. Miller would then have to marry Mr. Right to be included in the marketing efforts assigned to this customer segment.

    public boolean isCustomerBOAssigned(CustomerBO customerBO) {
       if customerBO.getName().startsWith("R") return true;
       return false;

In training (see Full Immersion Course) I often use an example where customers are offered special discounts if they press LIKE on a selected Facebook page.


Patricia Miller gets a discount if she likes us on Facebook


Data-Driven Support

As mentioned above, at an advanced stage within this level the process to create such customer segments is often supported by data or machine learning technologies.


Clustering of customers using tracking technologies


Here, a data or machine learning system will learn from the data being triggered by the webshop and propose what is known as clusters in the AI world. Once, the clusters have been looked at and understood, they can be immediately translated into Intershop customer segments. Some speak therefore here already from a semi-automatic customer segmentation process.


Dynamic Customer Identification

Above mentioned support by data evaluating tools also allows to identify people on the fly and assign them to customer segments without absolute knowledge of the customer’s identity. This is becoming more important as with increasing awareness of people to protect their data, customers are less and less willing to share personal data or even to log on. Here, such semi-automatic dynamic customer segmentation allows the identification of customers based on their behavior during the visit of the webshop (which products are looked at, how the mouse is being used, which information is keyed in, etc.).


Level III: Automatic Customer Segmentation

At highest and most advanced level, customer segments are automatically created and a marketing effort is automatically assigned. The reason to use them is two-fold:

  • Nowadays, customer behavior and segments change fast and abruptly. What was interesting and hip yesterday, might be boring today. Any manual interference only delays the process of assigning customers to the right segment.
  • Many customer segments are not fully understood. While the clusters will naturally emerge from the data presented, it is much harder to make a meaning out of it. However, from an economic point of view, it makes no difference whether we know why selected customers buy a red toothbrush and chocolate ice-cream always together on a Saturday morning. What makes an economic difference is whether we offer the right people the right products, product combinations or whatever incentives makes them buy. As we all know, shopping is a very social and emotional activity and not subject to full rational explanation. At least, not to me. I think it was Nassim Nicholas Taleb quoting a scientist who was asked while standing in line about what he will order. “I can’t tell. I really don’t know myself. I just wait and see what I will order when being in front of the queue.”


Within the Intershop Commerce Management, such dynamicity can be achieved by creating your own CustomerSegmentExtension dynamically filling Intershop’s CustomerSegmentationBORepository using code similar to the following. The method getAllCustomerSegmentBOs() is dynamically read whenever some information about customer segments are needed. Hence, any change in the recognized clusters (via ... read from outside) is immediately taken into account.

public class ServiceConfigurationBOExternalCustomerSegmentExtensionImpl extends AbstractServiceConfigurationBOCustomerSegmentExtension
    public Collection getAllCustomerSegmentBOs()
        HashSet segments = new HashSet();

        Collection myDynamicSegments = .... // read from outside

        ObjectMappingCollection result = ...;
        return result;


Looking back at the reasons for such a segmentation mechanism: The second thought provides a strong call for action. It is highly recommendable to verify the correctness of the creation of customers segments and automatic assignment of marketing efforts with proper A/B tests. In such tests, for a certain time frame, the marketing effort is offered only to half of the customers in the new customer segment. A rigorous analysis will then tell us whether those customers indeed buy more read toothbrush and chocolate ice-cream when those items are bundled together or not.


  1. Personalization is one of the key success criteria for E-business activities as it can help to grow customer loyalty while also maximizing profits. There is a good reason why we also speak already about the consumerization the B2B.
  2. Faster changes in customer behavior and data protection awareness call for fully dynamic and data-driven customer segmentation efforts.
  3. The Intershop Commerce Management provides all necessary and easy to use tools you need to create such customer segments.

How can we assist you in this?



[1] Gerrit Heinemann, Der neue Online-Handel, Geschäftsmodelle, Geschäftssyteme und Benchmarks im E-Commerce, SpringerGabler, 2018, 978-3-658-20353-5, 9. Auflage, pages 19ff, 228, 264, 325ff

[2] Andreas Meier, Henrik Stormer, eBusiness & eCommerce, Management der digitalen Wertschöpfungskette, 3. Auflage, 2012, 978-3-642-29801-1, Springer, pages 204ff

[3] Tobias Kollmann, E-Business, Grundlagen elektronischer Geschäftsprozesse in der Digitalen Wirtschaft, Springer, 6. Auflage, 2016, 978-3-658-07669-6

Next Steps in E-Commerce Personalization