Retain more customers by understanding churn

Lisa Cohen
Data Science at Microsoft
11 min readJun 30, 2020

Maintaining high customer retention and loyalty is key for business success. It makes sense conceptually, because customers’ continued use of a product tends to reflect their satisfaction with their overall experience. It also makes sense analytically, because it’s more efficient to retain existing customers than to invest in gaining new customers through expensive activities such as advertising and events. Existing customers of a business who are already familiar with its brand and products are also more likely to engage with it (than a random set of prospective customers).

Even seemingly small improvements in retention — as little as one percentage point — cause a significant improvement in customer lifetime value and the bottom line. In all these ways, retention metrics are key for a company’s growth.

In this article, I describe the inputs to consider in calculating churn rate, which is the complement of the retention rate (that is, Retention Rate = 1 – Churn Rate).

At its core, Churn Rate is a simple calculation:

However, as we’ve found in our data science work analyzing customer churn for Microsoft Azure, there are several considerations involved in formulating these inputs. In this post, we’ll explore each in turn.

What is a customer?

In order to consider whether a user is churned, we first need to clarify at what point we consider a user to be a customer. This can vary, as we explore churn from multiple perspectives. For example, you may have a churn metric for paying customers, a different one for new customers, yet another for Trial customers, and so on. Each is relevant, but you need to be crisp about your customer definition, and your definition will depend upon the business issue you want to address.

What is churn?

Next, we need to be clear about what we consider as churn. The term churn gets used broadly and can take on a variety of meanings, from decreasing usage to stopping usage to canceling an account. In our case, we manage the decreasing usage scenario as a precursor to churn, which is its own separate subject, enabling us to focus here on stopping usage. Given that cancelations necessarily mean stopped usage, we include that too.

To ensure that users are experiencing value from our services and features, we focus on retaining “active users.” We do this by considering the business context for the feature, ensuring that all relevant events are instrumented, and then analyzing telemetry (often using a cluster analysis) to identify meaningful inflection points in usage. For example, many Blockbuster members still had memberships long after they stopped renting movies. In that case, we would consider renting a video as a key indicator of active use.

But how long do we need to see usage stopped to conclude churn? What if a customer stops usage one month and then starts up again the following month? For the Azure business (where services are billed on a monthly basis), we’ve aligned on a two-month period to conclude churn based on zero usage. We do this to reduce false positives when we look back at our historic churn rates. Note: We still consider cancelations immediately, since there’s no reason to wait. For example, when a customer closes their Blockbuster subscription, we know that they’re not going to rent any more videos. You might also want to consider other time periods for your business, given specific seasonality. For example, if you’re following the academic calendar, you wouldn’t want to overestimate churn over the summer, when classes are merely out of session as expected.

One caveat for this two-month definition comes into play in our churn prediction models. In that case, we consider a shorter duration for usage churn so that we make our predictions more quickly.

What is the time period?

I’ve discussed the importance of defining a lapse in usage over a certain amount of time in calculating usage churn. But another time variable to consider is periodicity. In our case, we use a monthly churn rate, to align with Azure’s monthly billing cycle. You might want to choose a period that aligns best with your business cycle.

The key is to choose a specific time period and stick with it, so that you can get familiar with the expected range for the churn metric and form some reference points. For example, because we generally use monthly churn rates, it would be confusing to interchange an annual churn rate, since the values will be dramatically different. However, it can still be useful to check from time to time. For example, consider a simple scenario with a monthly churn rate of just 1 percent. This can also be described as a monthly retention rate of 99 percent. If we multiply this rate twelve times to calculate the retention after one year, the annual retention rate is 89 percent (because 0.99^12 = 0.89). This would mean a loss of 11 percent of customers each year to churn. If monthly churn increases to 2 percent, this becomes a loss of 22 percent of customers annually, and if monthly churn increases to 5 percent, the loss is almost half annually (46 percent)! Therefore, seemingly small changes in monthly churn rates have a significant annual impact.

Not all months are equal

There are some additional time-related details that arise when we put this into practice. For one, not all months have the same duration (or the same number of weekdays). This means that monthly churn rates can vary from month to month, for the mere reason that there are more or fewer total days (and business days) involved, which leads to more or fewer opportunities to churn. For example, February (with 28 or 29 days) is sandwiched between two 31-day months; this means we typically see a difference of about 10 percent in duration between these months, which can really complicate month-over-month comparisons (and efforts to smooth out variance, like three-month trailing averages). We also find that looking back at time periods with multiples of seven days helps with weekend seasonality. I won’t go into all the details here on these adjustments, but this post gives a sense of appreciation for this topic. In addition to making modifications to compare month-over-month trends, year-over-year trends can offer a helpful perspective for analyzing these scenarios, because they take into account the month durations as well as other monthly seasonality for the business (unless of course it’s a leap year).

Handling false positive scenarios

We discussed one false positive scenario above, in which a customer merely “takes a break” but we interpret it as the account being churned. To address this, we can adjust the time duration depending on our threshold for false positives. Another key scenario is that the customer continues to be active through another identity. This can occur if an individual user has multiple accounts (such as a personal and business account) associated with different email addresses and payment instruments. Acquisitions are an additional scenario to handle; otherwise, it may appear as if the acquired company has stopped usage, whereas in fact the usage is continuing under the parent account. Ensuring customer continuity for all of these scenarios helps prevent the churn rate and customer add counts from becoming artificially inflated. (As with all our work, we also ensure that our work here aligns with user privacy preferences and adheres to GDPR guidelines.)

Churn by cohort

If different parts of the population have distinct behavioral trends, it’s much more insightful to view and track them as cohorts rather than grouping them together. In this case, grouping or averaging together can actually mask the trends you want to observe. Geography, marketing source, customer demographic, customer tenure, and customer spend are a few dimensions to consider when checking for these kinds of trends.

Using a sample Telco churn dataset, we can explore this scenario in action. For example, when we examine the entire customer population, we find an average churn rate of 26.5 percent (by dividing the 1869 customers with “Churn” = Yes from the entire customer count of 7043). However, when we break down the population by tenure, we see that this trend is not evenly distributed:

Figure 1: Telco sample data showing churn rate decreasing as customer tenure increases.

As tenure increases, customers seem to be more loyal and trend less toward churn. Given this, it can be useful to track churn rates broken down by tenure over time. This allows us to notice a change in trend more quickly for a particular population and figure out the cause.

Retention curves

Another useful tool that we use to track engagement over time consists of retention curves. These provide a useful perspective on the customer experience.

To build these views, we define “retention rate” as follows:

For this example, we create a sample dataset to examine a hypothetical cohort of customers who began in January 2019. In January 2019 (month 0), by definition we have 100 percent of the cohort. Then, by February 2019 (month 1), 85 percent of those original customers are still active. By March 2019 (month 2), 80 percent of the original group are still active, and so forth:

Figure 2: Retention heatmap for a sample cohort. (Darker colors denote higher churn, i.e., worse retention.)

While we track months here, in your business scenario you might find it useful to track days instead. For example, studying the first seven days can be particularly revealing.

Beyond tracking an individual population, we can also use these retention heatmaps to compare populations. For example, below we compare cohorts of users who began in different months:

Figure 3: Retention heatmap for cohorts originating in different months (using a sample dataset).

By looking across these sample populations, a few interesting trends emerge:

  1. In this example, we consistently see a drop of 10 to 15 percent in the first month. Given this, we can conduct deeper research to better understand what is driving this drop-off (and how to reduce it).
  2. Retention seems to stabilize by around the fifth month. Therefore, we may want to engage more closely with our users in those first five months, knowing that is the most critical period for drop-off (which could indicate specific needs during this time). After that, trends are likely to stabilize.
  3. Starting in April 2019, we started to see some improvements in both initial and longer-term retention. Based on this, we can research what potential drivers and program changes led to this success.

In addition to viewing this data as a heatmap, another useful view is to visualize it as a line chart. In a retention line chart, cohorts with better retention sit “higher up” on the chart. In the example below, we focus on a subset of the months above to illustrate the improvement that we see in retention from January through March and into May. (We also apply gradient and simplification techniques discussed in prior Data Visualization blog posts from our team.)

Figure 4: Retention curve line charts, showing improvement from January to March to May. (Sample data)

Another comparison we’ve found valuable is to look at different sets of users within the same time period. For example, we compare the daily retention curves of different Azure services. We’ve created a dashboard to automate this for service owners so they can easily explore these trends. This helps create reference points across different user experiences (to understand what better and worse retention look like). While the use cases among services may vary in some cases such that these are not 100 percent comparable, overall it creates an environment to be able to learn from the scenarios that are doing well, and leverage these learnings to improve the overall customer experience. Here is an example comparing the retention curves of two services, from Day 1 to 45:

Figure 5. Dashboard comparing retention curves by service, for Days 1 to 45. (Credit: Ryan Bouchard)

This example gives us an opportunity to explore what is uniquely happening in the customer experience for the service on the left around the 30- to 32-day mark.

Understanding and acting on churn

Now that we know how to analyze churn, the next question is, of course, what can we do about it? From an analytics perspective, whenever we see a change in churn, first we check whether it’s within the expected range and then we observe the nature of the leading cohort. For example, was this change led by users of a specific service, from a specific marketing channel, of a particular tenure, at a particular consumption level, affected by a specific support issue, by geography? This can help us pin down whether the churn is due to a specific aspect of the user experience that we need to address, or if we’re recruiting less committed populations, to name a couple examples.

We can also check data from cancelation surveys and get anecdotes from customer engagement managers. Not only can we learn from this qualitative data directly, it can also give us ideas on datasets and cohorts to check next.

Using our churn prediction models, we can also contact customers at risk of churn to better understand their experience. This helps us address any current needs for the customer. It also helps us use the feedback to drive product and program improvements that benefit the broader customer base. When measuring the impact of these calls, we need to consider both the effectiveness of outreach as well as the accuracy of the original prediction itself.

As we saw with our retention curves, we can also track monthly cohorts to see how our product improvements are helping improve retention rates over time.

Finally, as we work to reduce churn, we might also find that some fundamental level will always exist. For example, a company that goes out of business won’t be able to continue paying, no matter how great we make our product or service. Industry benchmarks are another useful tool to help establish baselines for desired levels of retention.

Conclusion

In this article I’ve outlined how we think about churn in Azure in the context of our data science work, by demonstrating these concepts with publicly available data sets. We want our customers to have a great experience with Azure and help their businesses succeed. Understanding the number of customers who churn is one element that helps us do that, because it enables us to quantify that aspect of the customer experience. That, in turn, allows us to focus on how we can improve the services we offer, to help make them successful, so they continue with us and find success in the cloud.

I’d like to acknowledge Ryan Bouchard and Saptarshi Chaudhuri who have been key team members on our churn and retention initiatives.

Lisa Cohen is on LinkedIn.

--

--

Lisa Cohen
Data Science at Microsoft

Lisa Cohen is an experienced leader of Data Science & Engineering orgs, with roles as Head of Data Science at Twitter and DS for Microsoft Cloud.