A new algorithm to create customer journey maps
When using a service — e.g. navigating a website, purchasing a mobile phone bundle, calling a support center — customers take a series of steps.
A customer journey is the sequence of steps that a customer follows in a single session on the service. A customer journey map (CJM) is a way to visualize those steps: a useful tool in understanding how consumers interact with a service, allowing the provider to make improvements.
However, putting all customer journeys relating to a given service into a single CJM would create an unreadable diagram, giving us very little insight into customer behavior. Previous ways of tackling that problem involved trying to boil down all journeys into a small selection of representative journeys. However, that approach makes a lot of assumptions and so is not very good at dealing with uncertainty, and involves a large number of parameters, which can have a substantial impact on the representative journeys selected.
To address those drawbacks, we adopted a different approach based on machine learning. We looked at the day-to-day lives of Chicago inhabitants, tracking 16 different types of activities such as working, visiting friends, consuming entertainment and spending time at home.
Instead of making lots of assumptions and selecting lots of parameters, we focused on probability, i.e. the chance that a person will do a given activity next, based on his or her most recent activity. We assumed that Chicago inhabitants belonged to a small number of groups, each exhibiting similar behavior in terms of the probability of transitioning from one event to the next: the number of those groups is the only parameter that needs to be selected in our model. We devised an algorithm to work out the probabilities of each next event, for example the probability that a person will go from work to visit friends. Using machine-learning techniques, we applied the algorithm to the event log and worked out the most likely journeys for a given group: for example, the most likely 3-step journey in one group is “Home — Work — Home”.
The model can be used in a predictive way, working out a person’s mostly likely next step in a journey. It can also be used to generate new journeys that no-one in the dataset took, but seem likely to occur: this can be useful, for example when testing an application or working out expected future revenue from a group of customers.
Another benefit of the model is that it is dynamic: when new events are observed — i.e. when customer behavior changes — the model changes accordingly.
At NAGRA Insight, we are using the algorithm and more recent versions of it to discover customer behavior patterns in several applications. We find that the approach scales well, even on datasets with several million customer journeys and over half a million customers.