Sitecore Personalize Introduction
Description
Sitecore Personalize enables the activation of your data across every interaction point with customers, ensuring a smooth and uniform customer journey. It empowers you to leverage Sitecore Personalize for web, interactive, and triggered experiences, offering immediate decision-making capabilities, experimentation options, and analytics. Here it is essential to say that you have a dashboard to see the visitor count, average session duration, and bounce rate. Also, you can view graphs of visitor and page view metrics for a time period, or a heatmap grid with the most visitor traffic.
So, the most important features you get with Personalize are:
- Experiences
- Web
- Full Stack
- Experiments
- Web
- Full Stack
- Decision Models
- Connections
- Analytics
How to Connect Your Site
If you have already CDP you don’t need to add anything else in order to start using Personalize. The only thing you need to take into account is that in the CDP integration script, you need to set the webPersonalization
attribute to true. If you don’t have CDP, you need to add the following script in order to use Personalize on your site:
// Initialize the engage variablevar engage = undefined;// Create and inject the <script> tag into the HTMLvar s = document.createElement("script");s.type = "text/javascript";s.async = true;s.src = "https://d1mj578wat5n4o.cloudfront.net/sitecore-engage-v.1.4.0.min.js";var x = document.querySelector("script");x.parentNode.insertBefore(s, x);// Initialize the Engage SDKs.addEventListener("load", async () => { var settings = { clientKey: "<client_key_PLACEHOLDER>", targetURL: "<stream_api_target_endpoint_PLACEHOLDER>", pointOfSale: "<point_of_sale_PLACEHOLDER>", cookieDomain: "<cookie_domain_PLACEHOLDER>", cookieExpiryDays: 365, forceServerCookieMode: false, includeUTMParameters: true, webPersonalization: true, }; engage = await window.Engage.init(settings); // Send a VIEW event // ...});
There are more types of integration, but that script is normally the easiest one. You can see all the integration types here: Choose an integration type
As you can see, you need to change 4 variables: client key, target URL, point of sale, and cookie domain. To get the client key go to settings → company information → client key. Then, the target URL is going to depend on where is your instance of CDP. To see your environment go to settings → company information → environment. There are these options:
ENVIRONMENT | STREAM API TARGET ENDPOINT |
---|---|
AP Region | https://api-engage-ap.sitecorecloud.io |
EU Region | https://api-engage-eu.sitecorecloud.io |
US Region | https://api-engage-us.sitecorecloud.io |
After that, you will need to configure in your CDP account a point of sale. For that go to settings → points of sale and there create a new one. From that, you only need to copy the name of the point of sale you want to add.
Finally, the cookie domain is optional but it is important so Personalize can store cookies in the web browser as first-party cookies. Here are some examples of the value you should add:
Scenario | Example Domain | Cookie Domain |
---|---|---|
Main domain with all subdomains | www.example.com | .example.com |
Only subdomain | subdomain.example.com | .subdomain.example.com |
Localhost | localhost:3000 | localhost |
Check the official documentation if you need more information: Collect required details
Experiences
This is one of the most important features that Personalize provides because with this you can start to personalize not only your site but all your customer journey. There are 2 main types of experiences: web and full-stack experiences. The main difference between these 2 approaches is that the web experiences run on the web page after the Personalize library is loaded and can use dynamic data using HTML, CSS, and Javascript, but, on the other side, full stack experiences can be called whenever you need it or can be triggered by any user action you need. Because of this, full-stack experiences are also divided into 2: interactive and triggered experiences. As explained before, interactive experiences are the ones that you can call in any part of your code which can be used for server-side personalization. Triggered experiences can be used to create content, and offers, or send emails or SMSs to your customers depending on their actions.
Experiments
Now, talking about experiments, you have exactly the same options given for experiences. You can also create them in the same way, and they work as experiences, but with a difference: you can create variants for each of them. So you can create different “experiences” for the same experiment and there you can test which one is better by setting a goal for the experiment. At the end, you can see which variant was the winner and with this, you can select it and run it for all the users on your site to get more revenue.