Customer journey mapping is a big topic within the customer experience space. The notion of personalizing experiences across each stage of the customer journey is frequently discussed at conferences and within blog posts.
This post shares some thoughts on how to implement customer journey tracking in Sitecore. We’ll use a membership based business model for this, so I’ll switch to the term member journey from here on out. Our member journey stages are:
Known visitor (identified with at least an email)
Trial member (or free member)
Registered member (first year of paying member)
Returned member (a previous lapsed member, who returned)
Lapsed member (a previous member that didn’t renew)
Out (a stage for visitors that have revoked marketing permissions or have timed out of other stages due to inactivity)
We’re using Sitecore Marketing Automation to track the member journey stages. We also have a profile (Member Journey) configured, that has profile keys for each stage of the the member journey. The profile has a minimum value of 0 and a maximum value of 1. We have pattern cards for each profile key. We track visitor activity using MA rules and move the visitor from one MA to another as they progress through the journey.
Let’s look at the first stage - The unknown visitor.
Entrance: We use the where the contact is anonymous rule get visitors into this stage.
Actions: We change the unknown visitor profile key value to 1. This puts the visitor in the correct pattern card. In other member journey stages (where the visitor is known) we can add an action to assign the visitor to a particular contact list in List Manager. That can be used to drive EXM campaigns.
Exits: We use a goal listener to see if the visitor triggers any down range goals. If they do, the MA changes the profile key value and removes them from the MA. We also use a 90 day timeout on the goal listener. If the visitor stays in the unknown stage for 90 days we move them to the ‘Out’ stage. The rationale is, if we haven’t made any forward progress in 90 days, we’ll don’t want to treat them like an active high funnel prospect.
We follow this same format for each stage in the member journey. Most of the MA entrances are triggered from goals (opt-in, trial member, etc.). MA exits are triggered from down funnel goals (which moves the visitor to a new MA), the absence of a member renewal, or an intentional opt-out.
By using this format, we’re able to track every visitor within one of the stages. We can take weekly or monthly snapshots of visitor counts across each stage and have a much more quantitative representation of our overall prospects, members and lapsed members.
Once we have our visitors segmented by member journey stage we can do a number of things with that.
We can use the add contact to list MA action to maintain dynamic lists in List Manager. They can be used to feed EXM or other external services.
We can use the default MA personalization rules to personalize content to the group.
We can further segment the groups by things like goal, campaign, etc. and build out more targeted communications.
(With a little help from some xConnect queries and PowerBI) we can build out some more comprehensive analytics than you get from XA.
If you have any questions about this approach customer journey tracking approach, you can send me a DM on twitter or send me a note here.