El abandono de clientes de una compañía (churn) es uno de los principales retos a los que se enfrentan las organizaciones a día de hoy. El cliente es cada vez más exigente porque el mercado es muy competitivo. No cuesta apenas ningún esfuerzo cambiar de opción.

Las técnicas de aprendizaje automático suelen encajar muy bien para afrontar este problema, permitiéndonos determinar qué clientes tienen mayor probabilidad de irse de una compañía, cancelar un producto, dejar de usar un servicio, etc.

Para ello, lo que se suele hacer es construir variables que puedan ayudarnos a predecir, para cada cliente, cómo de probable es que se vaya. Por ejemplo: cuánto tiempo lleva como cliente, si su gasto en el producto aumenta o disminuye, o si tiene algún tipo de compromiso de permanencia que dificulte su salida antes de la fecha de vencimiento. Luego, con estas variables, entrenamos un modelo que nos dé dicha probabilidad, y… ¡ya está! Problema resuelto. ¿O no?

Lo cierto es que esto es sólo una parte de la solución. Identificar a los clientes que se van a ir es importante, pero es igual de importante qué hacer después con dichos clientes para que no se vayan. Si un cliente con un seguro de coche quiere irse porque cree que paga demasiado, no tiene sentido ofrecerle un descuento para un seguro de moto. Especialmente si no tiene moto.

Identificar a los clientes que se van a ir es importante, pero es igual de importante qué hacer después con dichos clientes para que no se vayan

Incluso cuando las ofertas son las adecuadas, a veces la predisposición de un cliente a aceptarlas puede depender de otros factores (psicológicos, coyunturales, etc). Esto se suele denominar como la accionabilidad de un cliente, y puede ser muy útil de cara a definir la política de retención de la empresa.

Teniendo en cuenta el riesgo de fuga y la accionabilidad, podemos clasificar a los clientes según el siguiente cuadro:

  • Lost causes. Clientes que se van a ir sí o sí, independientemente de lo que hagamos para retenerlos. Puede ser por causas externas (por ej., deja de usar el servicio porque se va a otro país) o porque está tan descontento que le da igual la oferta. Estos clientes tienen una probabilidad de fuga muy alta, pero una accionabilidad muy baja. Es útil identificarlos para no invertir recursos en tratar de retenerlos, pero tampoco es crítico porque no van a aceptar ofertas y por tanto no incurriremos en gastos tratando de evitar que se vayan.
  • Sure things. Son clientes satisfechos que no tienen intención de marcharse. Su probabilidad de irse es baja, pero su accionabilidad es alta porque si para retenerles les hacemos una oferta que mejore sus condiciones actuales, lo esperable es que la acepten. En este caso es importante identificarlos porque aquí sí se gastaría dinero en la oferta de retención de un cliente que ya de partida no se iba a ir.
  • Sleeping dogs. Clientes algo descontentos, pero no tanto como para buscar activamente irse. Es muy importante identificar estos clientes porque si no se les hace nada, suelen quedarse. Pero si se les contacta para retenerlos, puede provocar el efecto contrario y “activarlos”, recordándoles por qué estaban descontentos y haciendo que superen su resistencia a irse. Además, no suelen aceptar la oferta de retención, por lo que nuestra acción acaba provocando una fuga que no se habría producido si no los hubiéramos contactado (de ahí el nombre de sleeping dog).
  • Persuadables. Este es el tipo de clientes que queremos encontrar: clientes con alto riesgo de fuga pero también alta accionabilidad, es decir, los que aceptarían una oferta de retención para quedarse. Éstas son las fugas que podemos evitar.

A pesar de lo atractivo de la clasificación anterior, lo cierto es que en general no podemos saber de qué tipo es un cliente a priori. Para hacerlo necesitaríamos saber a la vez qué pasaría si a un cliente le hacemos una oferta y si no se la hacemos.

Y esto es imposible. Bueno, no exactamente. Es imposible a nivel individual, para un cliente concreto. Afortunadamente, hay maneras de hacerlo a nivel agregado para un conjunto de clientes, por ejemplo usando grupos de control.

La idea es seleccionar un conjunto de clientes, R, para hacerles una oferta (normalmente, los clientes con más riesgo según un modelo tradicional de churn), y elegir al azar un porcentaje de ellos a los que no vamos a ofertarles nada a pesar de saber que tienen alto riesgo. Estos serán nuestro grupo de control, C, y el resto será el grupo de tratamiento, T (T = R – C). El grupo de tratamiento T nos sirve para estimar cómo se comporta el conjunto global R cuando aplicamos la oferta, y el grupo de control C nos sirve para estimar cómo se comporta R cuando no se la hacemos.

Comparando la tasa de churn del grupo de tratamiento y de control podemos distinguir diferentes escenarios. Si tienen tasas parecidas, significa que no hay diferencia entre aplicar el tratamiento (la oferta) y no hacerlo, por lo que tenemos alguno de los siguientes casos:

  • La oferta no era efectiva.
  • Estamos aplicando la oferta a gente que no se iba a ir (sure things).
  • Estamos aplicando la oferta a gente que se iba ir en cualquier caso (lost causes).

En cambio, si hay diferencias, podemos distinguir entre:

  • Diferencias positivas: el grupo de tratamiento tiene menos churn que el grupo de control, por lo que estamos aplicando la oferta correcta a la gente correcta (persuadables).
  • Diferencias negativas: se va más gente en el grupo de tratamiento que en el grupo de control, por lo que estamos haciendo ofertas a clientes que no se habrían ido si no los hubiéramos contactado (sleeping dogs).

Hay que indicar que para que lo anterior sea válido es necesario que el grupo de tratamiento y el de control tengan características similares, y para ello es crucial que la selección del grupo de control se haga al azar.

Si os interesa profundizar en estos conceptos, la mayor parte de la literatura se refiere a esta idea de crear modelos basados en ver cuánto mejora un grupo de tratamiento respecto a un grupo de control como uplift modeling. Y si lo que queréis es la aplicación práctica a vuestros proyectos, existen numerosas librerías en múltiples lenguajes que permiten crear dichos modelos: uplift (R), pylift (Python) o CausalML (Python), por mencionar algunas.

Pero si lo que queréis es que os ayudemos a enfrentaros a este tipo de retos, desde PiperLab estamos encantados de acompañaros en este viaje donde aportamos tanto la tecnología como el conocimiento del negocio necesario para afrontar cualquier desafío y toma de decisiones que se nos presenten.

¡Esperamos que os haya sido útil!