Customer churn or customer attrition is a well-known problem that leads to reduced MRR and increased spendings to grow the client base. Often companies focus on new clients acquisition instead of retaining existing ones as it's hard to understand specific patterns that lead to losing the customer. However, the cost of acquisition is almost always higher than taking retention actions.
The reasons why people decide to leave might be very different: they might prefer a competitor, may struggle to reach the right outcome, the price-value ratio may be wrong, or simply the credit card is not valid anymore, and they forgot to renew the subscription. However, while the exact reason might not be apparent, the behavioral patterns for the customers that are about to leave might be very similar.
Let's review a particular example of such a case in the telecom industry. Here we have a dataset
from the telco provider of 4250 samples (users).
Some of the fields it contains are
- The US state
- The area code
- The number of months the customer has been with the current telco provider
- The number of months the customer has an international plan, voice mail plan
- The total minutes/number/charge of day/evening/night/international/customer service calls
- and, of course, if they churned or not
We also introduce two more features based on what we already know: the general cost of all services consumed by the user and the share of day/evening/night/international calls in the total amount.
The whole data analytics pipeline will look the following way.