Análise de churn
Contexto
A Telecom (empresa do setor de telefonia e comunicações) deseja reduzir a taxa churn da sua base de clientes. Em outras palavas, ela quer reduzir o percentual de clientes que cancelam a assinatura de seus produtos/serviços. Para isso, disponibilizou-se dados históricos onde se busca a extração insights que podem contribuir para a redução do churn por parte do negócio.
Nesse projeto, o método utilizado foi o CRISP-DM e a execução se deu originalmente via MS Excel. No entanto, nesta página você encontra as mesmas análises de maneira interativa (fundamentada em Python e Quarto Markdown).
O arquivo em MS Excel pode ser encontrado aqui.
Entendimento do negócio
Objetivo
Compreender a taxa de churn atual e extrair insights que possibilitem o negócio reduzir o percentual de churn via decisões baseadas em dados.
Premissas
Como premissas para o projeto, tem-se:
- Os dados da plataforma são representativos e atualizados.
Critérios de sucesso
Encontrar oportunidades onde:
- Estimar a taxa de churn atual.
- Extrair insights acionáveis que permitam reduzir o churn.
Entendimento dos dados
O dataset original constou de 7043 linhas e 21 colunas. Como metadados, tem-se para as principais colunas:
Field | Description |
---|---|
customerID |
Um ID único que identifica cada cliente |
gender |
O gênero do cliente: Masculino, Feminino |
Partner |
Indica se o cliente é casado: Sim, Não |
Dependents |
Indica so cliente tem dependentes |
tenure |
Indica o total de meses que o cliente está com a empresa |
PhoneService |
Indica se o cliente assina o serviço de telefone fixo com a empresa: Sim, Não |
Multiple Lines |
Indica se o cliente assina múltiplas linhas telefônicas com a empresa: Sim, Não (se o cliente não assina o serviço de telefone fixo, este valor será Não) |
InternetService |
Indica o tipo de conexão de Internet do cliente: DSL, Fibra Óptica, Cabo (se o cliente não assina o serviço de Internet, este valor será Nenhum) |
TechSupport |
Indica se o cliente assina um plano adicional de suporte técnico da empresa com tempos de espera reduzidos: Sim, Não (se o cliente não assina o serviço de Internet, este valor será Não) |
StreamingMovies |
Indica se o cliente usa seu serviço de Internet para transmitir filmes de um fornecedor terceirizado sem custo adicional: Sim, Não (se o cliente não assina o serviço de Internet, este valor será Não) |
Contract |
Indica o tipo de contrato atual do cliente: Mês-a-Mês, Um Ano, Dois Anos |
PaymentMethod |
Indica como o cliente paga sua conta: Débito Automático, Cartão de Crédito, Cheque Enviado |
MonthlyCharges |
Indica o valor total mensal atual que o cliente paga por todos os seus serviços da empresa |
TotalCharges |
Indica as cobranças totais do cliente, calculadas até o final do trimestre especificado acima |
Churn |
Indica se o cliente está em estado de churn ou não |
Análise/Modelagem
Com base no conjunto de dados, o foco se deu em responder e/ou validar as seguintes perguntas de negócio/hipótestes:
- Qual é a taxa de churn atual?
- Qual é o mês mais crítico para um cliente entrar em estado de churn?
- Qual é o mês ideal para fidelizar um cliente?
- Existe diferença do % churn quanto os tipos de assinatura?
- Como o % churn se comporta frente ao estado civil?
- Qual a relação entre o valor da subscrição e o churn?
- O método de pagamento influencia no churn?
- Qual a relação entre o número de dependentes e o churn?
- Oferecer suporte técnico diferenciado reduz o churn?
Para isso utilizou-se, num primeiro momento, a análise de Information Value (IV) de forma a responder a pergunta:
Quais(a) são() as variáveis que melhor explicam se um cliente vai entrar em churn ou não?
Análise de IV
A análise de IV é utilizada para “rankear” variáveis de acordo com o seu grau de discriminção quanto a uma resposta binária (e.g., cliente ativo versus churn, transação fidedigna versus fraudulenta, adimplência versus inadimplência). Formalmente é dada pela equação abaixo:
\[\begin{equation} IV = \sum \left( \textrm{distribuição resposta 1} - \textrm{discribuição resposta 0} \right) \times ln(odds) \end{equation}\]
Onde:
\[\begin{equation} odds = \frac{\textrm{\% observações onde a resposta é igual a 1 (SIM)}}{\textrm{\% observações onde a resposta é igual a 0 (NÃO)}} \end{equation}\]
No contexto desse projeto, a análise de IV nos indica o quanto cada variável contribui para discriminar um cliente quanto sua propensão ao churn. Abaixo, seguem os resultados obtidos para o conjunto de dados em questão:
Variável | IV | Poder de separação quanto ao churn |
---|---|---|
Contract | 0,49 | forte |
PaymentMethod | 0,46 | forte |
TechSupport | 0,39 | forte |
MonthlyCharges | 0,37 | forte |
Dependents | 0,16 | médio |
Tenure | 0,14 | médio |
TotalCharges | 0,06 | fraco |
Partner | 0,012 | muito fraco |
PhoneService | 0,010 | muito fraco |
StreamingMovies | 0,007 | muito fraco |
Nas seções seguintes, as perguntas elaboradas na etapa Análise/Modelagem foram respondidas.
Observação: as colunas onde o IV é “fraco” ou “muito fraco” não contribuem para distinguir um cliente quanto ao churn. Logo, não foram encontrados insights pertinentes para o contexto de negócio nestes casos.
Taxa de churn atual
Para verificar a frequência absoluta (total de clientes) em cada categoria, você pode passar o mouse por cima do gráfico abaixo.
- A taxa de churn atual é de 26.5%.
- Isso é bom? qual a meta estipulada pelo negócio?
Mês mais crítico para um cliente entrar em churn?
- O primeiro mês é o mês mais crítico para um cliente entrar em churn.
- É crucial o cliente ter uma boa experiência nesse período.
Mês para fidelizar?
- O sexto mês é o ideal para fidelizar um cliente (a curva parece estabilizar, constando mais clientes ativos que clientes em churn).
- Sucintamente, se a empresa conseguir manter o cliente por no mínimo um semestre, a probabilidade de ele manter a assinatura é muito grande.
Churn por tipo de assinatura
- Clientes com assinatura mensal têm maior % churn (muito acima da média).
- Quanto mais longo o contrato, menor é a propensão ao churn.
Churn por método de pagamento
- Clientes que pagam via boleto eletrônico têm maior taxa de churn (18 p.p. acima da média).
- Os demais tipos de pagamento possuem % churn abaixo da média geral (< 26.5%).
OBS.: p.p. significa pontos percentuais.
Por que boleto é tão discrepante?
- Hipótese: clientes podem esquecer a data de pagamento e gerar multas.
- Sugestão: pesquisa de satisfação com esse público.
Churn versus suporte técnico de qualidade
- O churn para clientes que não receberam suporte técnico diferenciado é muito maior que a média (diferença de 15 p.p.).
- Isso demonstra quão importante é a experiência do usuário pós-surgimento de qualquer problema técnico ou dúvida sobre os serviços oferecidos.
- Como essa variável tem um custo adicional, será que não é interessante oferecer a todos os clientes o mesmo tipo de suporte técnico e refletir no valor do plano (reajustando todas as opções de preço)?
OBS.: p.p. significa pontos percentuais.
Churn versus cobranças mensais
Como é o valor correspondente às cobranças mensais para os clientes que entraram em churn? É maior que a média global (65 USD)?
- Cada ponto é um cliente. No grupo de clientes em churn (gráfico da DIREITA), parece ter muito menos clientes pagando abaixo da média (indicando altos valores sendo cobrados mensalmente por grande parte desse grupo).
- No caso do grupo de clientes ativos (churn = não, gráfico da ESQUERDA), parece ter uma proporção parelha entre clientes que pagam abaixo e acima da média.
MontlyChargesClass | Customers | % | Churn | |
---|---|---|---|---|
0 | Above average | 1355 | 72.50 | Yes |
1 | Below average | 514 | 27.50 | Yes |
0 | Above average | 2549 | 49.27 | No |
1 | Below average | 2625 | 50.73 | No |
Podemos verificar isso estatisticamente via um teste de hipótestes - o teste Z para proporções (2 amostras), onde:
- Hipótese Nula (\(H_o\)): a proporção de clientes que pagam abaixo da média entre os dois grupos (churn e não-churn) é igual.
- Hipótese Alternativa (\(H_1\)): a proporção de clientes que pagam abaixo da média entre os dois grupos (churn e não-churn) é diferente.
Resultados (oriundos do MS Excel):
- Z = -9,498
- p = 2,147 \(\times 10^{-21}\)
Logo:
- Como \(p < 0,05\), rejeita-se \(H_0\). Em outras palavras, a proporção de clientes em estado de churn que costumam pagar valores mensais abaixo da média geral é muito menor comparado ao clientes ativos (não-churn).
- Isso pode certamente levar à decisão do cancelamento dos serviços. A questão é, por que esses clientes (grupo da direita) estão pagando altos valores mensais?
Churn versus dependentes
- Clientes com dependentes têm menor propensão ao churn.
- Isso provavelmente se dá pois, ao cancelar os serviços, seus dependentes também perdem os benefícios. Assim, um cliente sem dependentes não pensa duas vezes quando cogita cancelar a assinatura.
Validação e Deploy
Após validação dos insights, os resultados encontrados podem ser entregues e discutidos com o negócio. Aqui, vale fazer uso de experimentação via testes A/B e acompanhar o churn ao longo do tempo (pós-implementação de ações que buscem o objetivo da empresa).