Building a data-driven customer strategy
- 4 months ago
- Erik Mathiesen-Dreyfus
- 12 min read
In this "Thoughts On" post we will discuss how to build a data-driven customer journey, from which you can develop product and commercial strategies that are supported by data.
This is a much longer piece than my usual, so a quick table of content:
First we will discuss how to define the aim of our overall business strategy, since it will inform both how to build our customer journey as well as our product and commercial strategies.
Most companies can be viewed as two parallel activities, new business and existing business, split across two parallel entities Product and Commercial. Through this lens we can illustrate a company by four quadrants.
Each of these quadrants have a different goal that they are trying to achieve. Often these are different from each other but ultimately they should complement each other to drive the overall aim of the company – which is typically to increase either amount of revenue or number of users, depending on the business model. The goal of new business is then to drive new user acquisition and that of existing business is to retain and increase the value of existing users. Product and Commercial are the means by which we achieve these aims.
For obvious reasons, existing users are typically the ones that give us the best and most valid feedback. Therefore we tend to optimise for the aims of existing business when building our product strategy. Meaning, we optimise our product strategy primarily towards activating, retaining and growing the existing user base.
For the rest of this post, we will discuss how to build a data-driven customer journey that can inform a strategy focusing on existing business and serves both the commercial and product side of the organisation – leading to more joint-up-thinking across the two.
The first thing to do when building a strategy is to define the overall aim that we wish to optimise for. This needs to be a measurable quantity that is directly linked to the overall success of the company — so that we know that if we optimise for this metric the company will ultimately be successful. Most often this metric is revenue based, and since we are looking at existing business, it is most often about retaining and increasing the revenue of existing customers. It can also be a measure of monthly active users or similar but here we will stick with a revenue metric.
As a running example, imagine that we are the company behind a beautiful piece of accounting software that we sell to our customers on an annual contract basis offering several tiers of pricing depending on what functionality is available to the user. This means that every 12 months our customers can either renew, cancel, upgrade or potentially downgrade their subscription.
Based on this, we then want to build a strategy that optimises the probability of customers renewing and upgrading their contracts after each 12 months period. The exact metric for capturing this could be defined in several ways, but for our example we define it as the average renewal value, calculated as a % of the previous contract — so churn is 0%, like-for-like renewal is 100% and a doubling in the contract value is represented as 200% using this metric. Having defined the metric, we want to build a strategy that we believe will drive up this number for the average customer and which can guide both our product and commercial strategy towards achieving this.
This is great, we now know what our aim is and we have defined a metric that we want to optimise for to achieve it.
However, this metric is not very actionable, or measurable — especially not in the short term — since we can only measure it at the end of a customer's 12 month contract. This leads to big lags in the feedback loop for both product and commercial. For example, if we make changes to how we engage with customers in the first 30 days, which we believe will lead to a better outcome after 12 months, we would need to wait for a full year after implementing this change to measure its effect.
To get around both of these issues we need to work backwards from the 12m point to find intermediary steps on a customer’s journey, from signing up to contract renewal, that can help us determine what sub-metrics along the way we should be paying attention to and optimising for.
In our example, of a SaaS business with annual contracts, the first such milestone is most often set at the mid-way point of the contract, ie 6 months. To find a guiding metric for us at this point we look for something that we can prove drives our target metric at 12 months(12m). Most often we want this to be a positive relationship, meaning if the metric we are measuring at 6 months goes up, so does the 12m target.
We also want this metric to be something that is both measurable and actionable — meaning it should involve an action of some sort that we can measure and which we believe we can influence. We find this metric by analysing what drives the 12m metric and then find the most important of these drivers within an actionable set of features.
What this means, we will explain in the next section 🤗
In terms of analysis, this means creating a number of features for each customer, measured at the 6m point of their contract. In our example, this could be the number of payroll runs, the number of management accounts prepared, the number of users invited, how many integrations have been setup, whether any bank integrations have been setup etc etc.
We can imagine we have created a table, let's call it
customer_features_6m, with a number of statistics about each customer measured 6 months into their contract. The table might look something like this
We want these features to be something actionable, ie something we can influence. We can influence how they interact with us and our product but we cannot influence facts about them, like how many employees they have or where they are located. Therefore we focus our analysis on behavioural traits that we think we can influence. It might still be interesting to understand how, and if, these other factors influence how users interact with our product, but we cannot build metrics or KPIs for our business around these if we cannot influence them.
We use these behavioural features to try to predict the renewal percentage for each customer and then analyse that prediction using explainable methods to understand what features actually drive the prediction.
In SQL-inf this might look like this
which will output an importance graph like this, showing which features are the most important to the prediction of the
renewal_pct and therefore the most important drivers for our 12m metric.
From the list of factors driving our 12m metric we can then pick the main driver, the one that has the most impact on the 12m metric, as the 6m target metric that we want to optimise for at this stage in the customer journey.
The 6m metric gives us something to measure against when evaluating whether our more short term efforts are successful as well as something for product and commercial teams to use as a guiding principle for their planning.
Digging further into our analysis we can also define a KPI, or target, for the 6m metric. The target is a particular value for the 6m metric, about which we know that if a customer reaches at least this value by 6 months their probability of a renewal will go up significantly.
We can find this KPI by looking at the distribution of our prediction of the 12m metric above plotted against the 6m metric. What we want to find is a point where the predicted value of the 12m metric is above an acceptable value and where there is a significant upwards shift in the predicted value — ie the rate of increase of the prediction is significantly above the norm.
In SQL-inf this analysis might look like this
and the resulting diagram might look like this
For example, for our example of SaaS based accounting software, the 6m metric itself could be “completed end-of-month accounting cycles", the number of which turns out to be a main drive of renewals, and the 6m KPI might then be “at least 4 full end-of-month accounting cycles by month 6”, since we have observed that once a customer completes 4 within the first 6 months there is a significant uptick in their predicted renewal value.
The KPI makes the goal of the company at this stage more concrete than simply saying that “we need to drive up the 6m metric” and it becomes much more actionable. Especially for commercial and customer facing roles, which now have a KPI for each customer and a system for knowing exactly which customers are doing well and for which customers they need to intervene.
As such, we can think of the 6m metric as an aggregate aim for the company, whereas the KPI is an aim on the individual customer level.
Having found the 6m metric and associated KPI we now move further backwards to find a metric and KPI to support the 6m goal. Typically this next milestone is set at 3 months. Here we repeat what we did for 6 months but with the target aim being the 6m metric, ie we look to find something that we can measure at the 3 month point of a customer contract and which drives the success of the 6m metric.
Continuing with our example, we might discover that the main driver for a high number of completed monthly accounting cycles, are the number of users invited and signed up to an account and might then define our 3m KPI to be “at least 3 active users”.
Having defined the 3m metric and KPI we again move backwards, typically to 1 month, and from there, depending on the type of product(some have too much variability in their early onboarding phase), we might also look at defining metrics and KPIs for week 1 and week 2 of a customer’s journey.
Having explained the rationale and process in some detail we can now define the steps in the process of defining a data-driven customer journey for a typical SaaS business.
Once we can completed these steps we can plot them on a timeline as our Ideal Customer Journey. This then become the guide for all product, commercial and operations teams. Product teams aim to drive up the metrics of this journey and measure their success by the changes in these metrics, operations and commercial teams aim to hit KPIs and measure their success in how well they do in this respect.
A well-defined customer journey like this also enable us to assign ownership of elements of it to teams on both the product and commercial side. For example, we might have a product team that is focused on activation - it is now their task to optimise for the 1m metric. Likewise a team might be responsible for onboarding, they will then focus on the 1 and 2 week metrics.
On the commercial side our early milestones(1 week - 3 months) might be owned by the customer support teams, who are responsible for the onboarding process. Whereas longer term aims, like the 6m KPI, might be owned by the account managers, who are responsible for staying in touch with customers as well as for contract renewals. Using customer-level KPIs these teams will be able to know precisely which customers are falling behind on the ideal customer journey, and who should therefore get extra attention.
This was just a brief intro to how you can build a holistic Customer Journey that can inform and guide both product and commercial teams and which is informed and defined by data.
Obviously, each business is unique and therefore their metrics, KPIs and ultimately customer journey will be unique but the principles and process for how to derive them are universal and with tools like Infer it becomes possible for anyone to do it.
Finally, note that we have exclusively focused on SaaS businesses here in our examples but you can easily adapt this process and method to other domains within B2B software as well as B2C platforms.
SELECT * FROM customer_features_6mEXPLAIN(PREDICT(renewal_pct, ignore=customer_name))
SELECT * FROM customer_features_6m PREDICT(renewal_pct)
With a data-driven customer journey you can relax and enjoy
Conceptually a business can be viewed as
A typical outline of a
Example of an importance graph. Each bar represents a feature, sorted by their importance. Here the most important feature drives more than 45% of
Example of plotting the distribution of predictions of the 12m metric against our most important 6m feature. Here we find a sudden upwards shift in the predicted values. This is a great place to set a KPI, since we know reaching this value will significantly increase the likelihood of achieving a higher value for the