CX Works

CX Works brings the most relevant leading practices to you.
It is a single portal of curated, field-tested and SAP-verified expertise for SAP Customer Experience solutions

Personalized recommendations - Set Up and Operate

14 min read

Overview

Personalized recommendations - Set Up and Operate

This article explains how you should set up and operate recommendations within SAP Marketing Cloud. It depicts various practical examples and recommended practices to avoid common challenges during the set up and operations phase. 

If you have not read it already, we recommend you to take a look at our article Personalized recommendations - How to get started first. 

Table of Contents

Set up 

Specify and document recommendation scenarios

The first step is the specification of the recommendation scenarios. The basis for the recommendation scenarios should be your recommendation scenario roadmap which you created in article Personalized recommendations - How to get started. You will specify how you want to implement the recommendation scenarios. 

image one: specify recommendation scenarios 

Let's assume you planned the following scenarios in your first phase: 

  • Scenarios (Webshop)
    • Cross-selling on cart page
    • Similar products on product details page
  • Scenarios (E-Mail)
    • Top sellers in birthday campaign

For documenting these recommendation scenarios, the most important dimensions are: 

Area Dimension Description Source
Recommendation scenario Channel Defines on which channel the recommendations are consumed -
Section / Campaign Defines the section or the campaign (depending on the channel) -
Recommendation model Model Name of recommendation model -
Context See above -
Max. number of results Maximum number of recommendation results Creating and Managing Models
Post-processing Post-processing of recommendation results Post-Processing Algorithms
Recommendation algorithm Name Name of recommendation algorithm Algorithms
Parameters

Algorithm parameters (depending on algorithm)

Algorithm Parameters

Algorithm Defaults

Pre-Filter Pre-filters for recommendation algorithm

Algorithm Data Source Prefilters

Algorithm Defaults

Weight Individual weight of algorithm (in percent) Creating and Managing Models

The following example can help you get an idea on how the recommendation scenarios can look like: 

Recommendation scenario Recommendation model Recommendation algorithm
Channel Section / Campaign Model Context Max. number of results Post-processing Name Parameters Pre-filter Weight
Web shop Cart page Cross-selling on cart page

Products (in cart)

Contact


5

Remove Items Already in the Cart (i.e. Items =Products, for example)

Often Bought Together (Interactions)

Minimum support = 0.5

Interaction Type = SALES_ORDER

Use Interaction Data (in days) = 180

70%

User Interaction Based Collaborative Filtering (i.e. Bought by similar contacts)

Neighborhood size = 3

Interaction Type = SALES_ORDER

Use Interaction Data (in days) = 180

30%
Product details page Similar products on product details page Product 10

Remove Leading Items (i.e. Items = Products, for example)

Often Viewed Together (Interactions)

-

Restrict Product Recommendations = Valid Products

100%
Email Birthday campaign Top sellers in birthday campaign - 5 -

Top Sellers (Interactions)

-

Interaction Type = SALES_ORDER

Use Interaction Data (in days) = 90

100%

This template provides structure and examples about which dimensions you should consider (e.g. context, channel & section, data, algorithms etc.)

As explained in a later chapter, setting up and operating recommendations should always be an iterative process according to your recommendations roadmap. So don't worry to much about the exact parameter or pre-filter settings at this point in time.

Get familiar with the standard integration options

Since you wouldn't want to reinvent the wheel and want to leverage most out of the standard integrations, we highly recommend to get familiar with the standard integration options: 

  • For the consumption within SAP Commerce Cloud or SAP Commerce, you can leverage the standard integration as described in the Integration Guide
  • When you need to consume recommendations within a third-party commerce solution, you can leverage the snippet available on GitHub which is described in more detail in this blog post.
  • You can consume recommendations in emails sent from SAP Marketing Cloud. Please notice that currently not all algorithms are available to be consumed in emails. Email campaigns can only use recommendation scenarios to which an optimized model type has been assigned. Find more information under in the application help under Algorithms.
  • You can build your custom integration via the PROD_RECO_RUNTIME_SRV (directly, not recommended) or the API_MKT_RECOMMENDATION_SRV (using the SAP Business Technology Platform, recommended) APIs. 


Get familiar with the standard integration options for SAP Marketing Cloud via the resources linked above. 

Data Validation

Before you continue, you should get an overview about the available business objects per data source. The most important data objects are: 

  • The main recommendation objects are products and product categories for product recommendation and offer content and offers for offer recommendation. Having these entities is essential for implementing recommendations. 
  • The main interactions relevant for recommendations are sales orders and clickstream interactions (products viewed, website visits, clicks, etc.). Sometimes other product-related interactions might be relevant for recommendations as well. 
  • In many scenarios, interaction contacts (all natural persons [contacts, consumers, or suspects], companies and “unknowns”), are also necessary for recommendations. 

Obtain an overview about the available business objects per data source. The following list indicates the most common objects:

  • Products and product categories for product recommendation
  • Offer content and offers for offer recommendation
  • Interactions such as sales orders, clickstream interactions (products viewed, website visits, clicks, etc.)
  • Interaction contacts

Several recommendation scenarios require certain specific business objects from the list above. 

One example is the "top sellers of leading product category" algorithm. For this algorithm, products, product categories and sales orders are mandatory. If the majority of products do not have a product category assigned to it, they will not show up as recommendations. 

Another example are recommendation in emails. Since marketers want to send visually appealing recommendations, they may want to include dynamic product recommendation blocks. For this, the product master data has to contain the product image URL, the navigation URL and product names and descriptions, sometimes in multiple languages.  

Check the data availability and quality of the business objects required for your recommendation scenarios.

This may include but is not limited to:

  • Product master data
    • ID
    • Name, description (in multiple languages)
    • Image URL
    • Navigation URL
  • Product variant ↔ Base product relationship
  • Product categories and product category hierarchy
  • Product ↔ Product category assignments
  • Interaction data (sales orders, clickstream interactions)
  • Interaction ↔ product assignment

Latency, throughput and redundancy

For all scenarios in which recommendations are consumed from other systems (SAP / third party Commerce, mobile apps...), latency, throughput and redundancy are essential factors. 

Latency describes the time interval between request and response. In context of recommendation it describes the speed in which recommendations are returned to other systems. The rate at which recommendations are processed is called throughput. Redundancy refers to the availability of providing recommendations even if SAP Marketing Cloud is unavailable (e.g. during upgrades).

Especially when recommendations are used in high-volume scenarios, there are specific considerations. The following hints can help to improve latency and throughput for high-volume scenarios: 

Use recommendation caching whenever possible.

For the standard integration with SAP Commerce and SAP Commerce Cloud, there is the standard sapymktrecommendationbuffer extension which keeps recommendations in the cache until their expiry date. This reduces the latency and provides redundancy.

For custom-build integrations, the SAP BTP-based recommendation cache can be used to achieve the same advantages - latency improvements, built-in redundancy and even enriched recommendation results (e.g. added product images and descriptions from SAP Marketing Cloud). This approach is described in the following blog post and in the corresponding section of the Integration Guide.

Try to reduce traffic as much as possible.

A reduction of traffic between the consuming system and SAP Marketing Cloud can be achieved by using caching as described above.

Another factor is the implementation of post-processing logic. Post-processing logic refers to modifying the recommendation results, e.g. by removing products which are already in the shopping cart.

This kind of post-processing logic can sometimes be leveraged or built in SAP Marketing Cloud but ideally should be handled by the consuming system directly to reduce traffic.

For SAP Commerce, the post-processing (removing out-of-stock products and products already in the cart) is described in the Integrations and Data Management section of the application help.

Operate

After finishing the set up phase, you are transitioning into the operations phase. The following chapters guide you through the most important considerations for operating recommendations within SAP Marketing Cloud. 

Validate recommendations

A crucial point after initially setting up recommendations is to validate them.

Machines and algorithms are not the best judges to decide on their recommendation results' quality and if they are ready to be shown to customers already. For this task, cross-validation by expert judgement by business users and business analysts is required. 

If we want business users and analysts to help validate the results generated by recommendation algorithms, it's important to be able to explain the recommendation logic to a certain degree. If they agree with the recommendation results, they will not challenge the underlying logic. However, if they disagree, one might need to explain how the algorithms work under the hood. 

The actual validation then should happen in an iterative approach. If the recommendation algorithms work with parameters and pre-filters, start with the default values and present the recommendation results for the given product/contact context (see above) to the business users and analysts. Explain the results using the underlying algorithms, parameters, pre-filters and the context presented to the algorithm. With this information, the business users and analysts can judge if the recommendations make sense or not. If the experts disagree, parameters, filters or the underlying algorithms need to be changed or replaced, followed by another iteration until the desired level of quality is reached. 

Validate the recommendations in an iterative approach.

For this, expert judgement by business users and business analysts is required. Explain the recommendations to the experts. Adapt the setup until the desired quality level is reached.

Track business success and fine-tune recommendations

After the go-live of the recommendations, one should track the business success metrics defined earlier on a continuous basis. SAP Marketing Cloud tracks the number of impressions, the click-through rate and the conversion rate as described above within the Manage Recommendations app

Like the approach for initial validation, the fine-tuning of the recommendations should happen in an iterative mode. Based on the desired business goals, one might need to fine tune parameters, filters or algorithms accordingly. However, business success is also influenced by other factors, such as at which section or how visually appealing the recommendations are presented to the consumers. 

Track business success and fine-tune the recommendation end to end process accordingly.

The complete end to end process from data selection via algorithm setup to result visualization should be considered. 

Test and safe-guard the integrated environment

Apart from business validation, there are also technical considerations during the operations phase. 

Since recommendations might be used in high volume commerce scenarios, you should first set up a production-like test environment. Depending on your setup, this could be a SAP Commerce system with production-like setup integrated with your SAP Marketing Cloud test tenant.

The next step is to identify typical and exceptional peak times (e.g. Christmas season, black friday). These peak times then are used as the basis for load and volume test scenarios to safe-guard the whole environment.

The load and volume test scenarios can then be built using applications such as the open source software Apache JMeter. In past projects, we successfully tested and safe-guarded the systems using JMeter test scripts before setting the environment live. 

Test and safe-guard the integrated environment

Again, the approach should follow the principle of "measure, improve, re-run" to identify and set the baseline for the productive usage.

Conclusion

This article explained how you should set up and operate recommendations within SAP Marketing Cloud. Various practical examples and recommended practices to avoid common challenges during the set up and operations phase have been presented.

If you're interested in learning more about capabilities and best practices around recommendations see our Portfolio of Services.

Overlay