Sitecore Personalize is a tool that helps you use your data in a way that improves the experience for your customers, no matter where they interact with your brand. You can use Sitecore Personalize for various tasks, like running experiments on your website, interactive platforms, and triggered events. These experiments help make decisions in real time, test different scenarios, and track how well they're performing.
Here's what Sitecore CDP decisioning empowers your organization to do:
Sounds great, right? Now, the hard part: setting it all up. But don’t worry, hopefully this blog will help make decision management a bit less daunting.
In this blog you’ll learn:
Before we get into it, let's explore how decision models and decision tables work together.
In Sitecore CDP & Personalize, a decision model is a comprehensive framework designed to automate and enhance decision-making processes that are crucial for personalized customer interactions. It's like a master plan that leverages a variety of technologies to streamline and improve business decisions.
To include business rules in a decision model, you will create a decision table. A decision table:
A decision table is a key component of the decision model that helps in making personalized decisions for customer interactions. Essentially, a decision table is a structured, tabular format that holds a set of conditions and corresponding actions.
The decision table works by evaluating each incoming event from a customer against the conditions defined in the table. When a condition is met, it triggers the corresponding action. This action can be anything from personalizing content, recommending a product, sending a promotional email, or any other customer engagement activity.
For this tutorial, we’re going to keep it simple and use our guest's nationality to determine the next best offer for our guests. In particular, we’re going to leverage guest data to offer American guests a different discount than Irish guests.
We’re going to start by creating an offer template for our decision model. An offer is a marketing message that can be presented to guests across various channels.
Before adding an offer to your decision model, you have to make an offer template first.
Navigate to Library > Offer templates. (Note: This used to be located in the Developer center.)
Click on Create Offer Template at the top right.
Select the offer template we just created (Nationality Discount). We’re going to use it as a base for our offers.
From the Create Offer screen, complete the following fields:
Click Save and repeat for the other nationality.
Follow steps 1-4 from this blog to set up a decision model. I’d also encourage you to read through the rest of the blog to get a better understanding of critical topics like decision model components, the decision model lifecycle, and variant states, as we won’t be covering that in this blog.
Add a Decision Table by dragging and dropping it from the component palette to the canvas.
Hover over the decision table and click on the pencil icon to edit.
At the top right of the Decision Table, select a Hit Policy.
Each decision table must have a designated hit policy. A hit policy determines the number of rules that can be satisfied simultaneously and identifies which of those satisfied rules contribute to the decision table's final result. When a decision table is called, Sitecore Personalize examines each rule. The process of Personalize evaluating each rule to determine if the condition is met is called a "hit". If the condition is satisfied, it’s labelled as a "satisfied" rule. See Sitecore’s documentation to learn about the behaviour of each hit policy.
For our purposes, we’re going to select Any.
To add an input column, click on the Add Input Column button. From the pop-up tile, select Guest Data as your input source.
Note: If you connected another component to the decision table on the decision canvas, you’ll also be able to choose from the following additional options:
From the Choose Type drop-down list, select the data type for the input. For this example, we're going to select string but there are other data types to choose from including:
Date: represents a date value format.
Repeat these steps to create an input column for 'American.'
Add Predefined Values. Predefined values help you speed up the addition of repetitive values and eliminate typing errors for string values. To add predefined values, click on Add Predefined Values and enter values. I’m going to enter both nationalities (American and Irish).
An output column contains the output of a decision table. Typically, this result is an offer or content that the decision model variant delivers back to the experiment.
Name the output column. This name will appear as a column header. I’m going to call mine, ‘Guest Nationality.' I’ll also use this as the output reference in the Create Output Reference field, but I’ll change it to ‘guest.nationality’ as this is the reference name that appears in the data.
Select the Offer radio button. Then, from the Choose Offer Template field, type the name of the offer template we created (Nationality Discount), and click Add.
The last thing we’re going to do in our decision table is add rules. When you make a new rule for a decision table, you need to add an input (condition) and corresponding output (result). The kind of condition you can put in depends on what type you chose while setting up the input column.
Repeat for Irish guests. The final table should look like:
Your completed decision table should look like:
To make sure you've set everything up correctly, be sure to test your canvas.
Click and drag the Guest input component and place it at the bottom of the canvas. The canvas should look like this:
Congrats! You've built your first offer in Sitecore CDP & Personalize. From here, you'll need to create another variant before moving the decision models into Test, then Production, which I'll cover in a future blog.
To get the most out of your decision models, follow these tips:
Sign up to our bi-weekly newsletter for a bite-sized curation of valuable insight from the Sitecore community.