Finding the optimal conditions to use in your Sitecore DMS campaigns can be a challenge. We look at three of the coolest ways to use the rules engine to personalize content for your visitors.
The Sitecore Rules Engine is the powerhouse behind Sitecore’s personalization capability. Similar to the Outlook-style rules wizard, the Rules Engine lets marketers build powerful clauses to influence content display based on a variety of conditions.
One of the most straightforward uses of the engine is to personalize content based on a user’s geographical location, translated from their IP address. In the example below, a promotion targeted to residents of Toronto could be shown for this condition.
You can also personalize content on a variety of other useful characteristics and events, such as visitor profile, achievement of a goal, search term or a visit to a specific page.
However, did you know that there are other cool ways the Rules Engine can be used for personalization within Sitecore’s Page Editor? Here are three examples to get you started.
NB: The examples below all use the rules that come with Sitecore out-of-the-box. For an additional list of useful customizations to the rules engine please see this aggregate list from John West.
Influencing business logic and calls to other systems
One of the most interesting ways you can use the Rules Engine is to influence logic based on the wealth of visitor information you have at your fingertips. To name just two examples...
When you have known, logged-in users. Explicit personalization, when content is personalized based on known characteristics of users, is often implemented in code. However, tying this logic to the Rules Engine instead allows content authors to adjust it without needing to rely on developers or messing around with code.
For example, using the conditions below, you could personalize content based on:
Where user profile specific field compares to value (for example, targeting content to users with specific interests or from a specific member segment)
Where the current user is a member of the specific role (for example, targeting content based on a user’s security memberships)
When you are integrating with another business system or platform, such as your site's search engine. This is a wonderful opportunity to use the Rules Engine even without knowing specifically who the visitor is. You can influence the underlying business logic as your anonymous visitors begin to build a behavioural profile simply by taking actions on your site.
A great example is influencing calls to a search engine (via API or webservice). Some search engines allow search or ranking profiles to be specified that rank search results differently. For example, for a visitor whose behaviour places them in the “outdoor enthusiast” search profile for a travel website, you could boost the ranking of results with metadata related to outdoor activities.
If the Sitecore control that calls to the search engine stores the search parameters within the associated item, then we can create several Sitecore items – one for each search profile – and personalize the call to the search engine. Thus, if our anonymous visitor is building an outdoor enthusiast visitor profile, we can use the Rules Engine to swap in the corresponding Sitecore search profile item for our call to the search engine and influence the search rankings, all in real-time.
NB: This approach will also require you to do the legwork of setting up your visitor profiles and pattern cards.
As a rule of thumb, abstracting useful logic-driving variables into item fields leaves flexibility for future personalization as well. This idea can also be applied to any API call or webservice call.
Many of the rules in the Rules Engine refer to the context of the current visit. Unless you decide to load a visitor’s historical browsing activity into the current session (a small coding activity, but with some potential performance trade-offs), you won’t be able to personalize based on time passing or return visits.
Luckily, there are some out-of-the-box rules that allow you to serve content for visitors who visit often, or who have returned after a specific amount of time (or both). An example might be offering a reward coupon to a visitor on their tenth visit.
Some quick background: Engagement plans are a feature of Sitecore DMS that allow you to map out a visitor’s engagement journey, over time, with your online channel(s). These plans also allow you to configure automatic touchpoints with these visitors based on elapsed time or specific event triggers. Mike Casey from Sitecore provides a good overview.
Example 1: Where the current visitor is in the specific state of an engagement plan. Here, we can personalize based on a visitor’s position in an engagement plan. If you set up the transitions in your plan based on time elapsed, you can isolate whether a visitor is returning a certain amount of time after their previous visit. This is especially helpful if you are personalizing content based on visitor recency.
Example 2: Where the visit no. compares to number. Here, we can personalize based on how many times a visitor has returned to the site. This is helpful if you are personalizing content based on visitor frequency.
Leveraging social network information
This option requires the Sitecore Social Connected module and, assuming users consent to the use of their information upon logging into a site with their social network credentials, allows personalization on a vast array of known profile fields, such as:
- Number of Twitter followers
- Skills listed on LinkedIn
- Birthday, relationship status or interests on Facebook