Contentstack Personalize is an optimization engine that uses real-time user data to dynamically adapt content. This allows you to create highly targeted experiences for specific audiences, improving engagement and conversion.
This step-by-step guide will help you get started quickly with Contentstack Personalize by performing the following sequence of tasks:
Before starting, ensure you have:
For this guide, we will be creating an A/B test to test a different headline on your website, and convert a visitor every time they click on the CTA (Call to Action). Let’s dive in and create a Personalize project.
To create a new Personalize project, log in to your Contentstack account and perform the following steps:

This creates your new Personalize project and it will now appear on the Personalize Projects landing page.
Additional Resource: For detailed information, please refer to the Create a Project documentation.
You must set up the Personalize Edge SDK for your Next.js website, hosted on Vercel. To do this, refer to this guide and then continue the further steps in Personalize. After setting up the SDK for your Next.js website, continue the steps further from this guide.
Additional Resource: For setting up the Personalize Edge SDK for your Next.js website with Personalize, hosted on Launch, refer to this guide.
An Experience is a configuration within a personalization platform for managing and executing tests and campaigns. You can choose between Segmented or A/B Test experiences. An A/B test experience is a randomized experiment that lets you present two or more content variants of a web page or an app and display them to different sets of users at the same time to verify the effectiveness of these variants.
For this guide, we will create an A/B Test experience with the following details:

To create a new A/B Test experience in the new project, perform the following steps:




You’ve now created an A/B test experience that you can use to test different content variants.
Additional Resource: For detailed information, please refer to the Create an A/B Test Experience documentation.
To fully support personalized content creation and validation with Contentstack Personalize, enable both Live Preview and Visual Builder on your stack. These tools provide editors with real-time visibility and intuitive controls for managing variant-based experiences directly in the CMS interface.
Note: Live Preview lets you preview personalized experiences in real time. Visual Builder allows editors to create and manage variants visually, and preview multiple variants simultaneously based on different audience selections, without requiring developer involvement.
Events in Contentstack Personalize, are essential for measuring the success of your A/B tests. By tracking specific user actions (metrics) as events, such as clicks, form submissions, or video plays, you can accurately determine which variant in your experience performs better.
For this guide, we are creating a Click event to track conversions for our A/B test on the ‘Learn More’.
To create an event, perform the following steps:


Note: You can create custom events to track conversions for common scenarios such as click, add_to_cart, checkout and many more.
This creates a new event in your Personalize project. You can now add the event to an A/B Test experience as a Metric to evaluate the variant performance for conversions.
Impressions are a way to count how many times users see specific content on your website. This helps you understand if the personalized content is actually being seen by users.
A conversion is an event that signifies a positive user action, such as clicking on a CTA, adding a product to the cart, making a purchase, or scrolling to the end of a page. For this guide, we measure which headline is more effective and leads to more clicks on the learn more button.
To add the created event to an A/B Test experience, perform the following steps:


Note: Use the Personalize Edge SDK to trigger the impressions and events for your experiences using the triggerImpression and triggerEvent methods.
This adds the new event as a reference in your A/B Test experience. Now let’s create Entry Variants for your A/B Test experience.
Contentstack’s Entry Variants feature lets you create and manage variations of your content seamlessly, catering to diverse audiences, languages, and marketing experiments.
The Variants page in Contentstack allows you to view and manage all variant groups and entry variants, sourced from the Personalize feature. Follow the steps below to access and manage variants within Contentstack.

Note: You cannot edit the above fields on the Variant Group Details page since this information comes from Personalize.
Once you've linked a variant group to a content type, a dropdown will appear in the Entry Editor page. This allows you to create an entry variant based on the linked variant group.
Entry Variants allow you to deliver customized content to different user groups, making it easier to target specific audience segments. Follow these steps to create an entry variant.
Note: Link variant groups to the relevant content type(s) before creating entry variants. Each experience in your Personalize project appears as a Variant Group in the stack. For linking details, refer to the Manage Variant Groups and Entry Variants document.




Note: Once saved, the entry variants become independent of the base entry. For more details, refer to the manage versions of entry variants document.
You can manage and switch between different variants within the entry editor by selecting the relevant variant from the dropdown menu.
When you select “Later”, a group of options appear asking you to select the Date and Time of publishing, and the Time-Zone.

Note: If no previous or current version of the base entry is published in the selected environment(s) and language(s), the base entry will be published by default. Learn more about how publishing works with Entry Variants.
Alternatively, when publishing the base entry, you can Select Variant(s) from the dropdown in the Publish Entry modal. Choose from the available entry variants to publish them alongside the base entry.

After creating the Entry Variants for your A/B Test experience, we can activate the experience in Personalize to run the testing of the different headlines of your website.

This activates your A/B Test experience created with the variants in Personalize with the Entry Variants in CMS. Once the experience is activated, the variants are displayed on your website to your visitors and Personalize automatically records the analytics for the impressions and conversions in real-time.
Once you activate the A/B Test, Personalize will start calculating the insights once a certain number of impressions and conversions come up within the Analytics tab.
Impressions occur when a user views a specific Variant within an Experience, effectively gaining an impression of the personalized content. Each impression is associated with the Experience, its Variant, and the active user.
A conversion is an event that signifies a positive user action, such as a click on the button (Learn More) that we defined earlier in the guide. They are used in A/B Test experiences to evaluate the effectiveness of a variant, and a higher number of conversions can indicate a winning variant. To learn more about how we determine the winning variant in A/B test, please refer to the Experience Analytics documentation.

Once you learn which variant is winning, you can tweak the traffic distribution to send more traffic to the winning variant.
You have successfully set up a Contentstack Personalize project, connected it to an existing stack, configured the SDK, and created an A/B test experience with events and entry variants. You are now ready to start personalizing your content and analyzing the performance of your experiences.
This guide provides a complete overview to get you started with Personalize. For more advanced usage and customization, refer to the Personalize documentation.