Retención por cohortes
Cuántos clientes siguen tras cada periodo.
Definición
La retención por cohortes pone una fila por cohorte y una columna por mes de vida, empezando en el mes 0, y colorea cada celda según el porcentaje que sigue activo. Se lee por edad y no por calendario: el triángulo vacío de la esquina es tiempo que esa cohorte aún no ha vivido. Sirve para ver si los clientes nuevos aguantan mejor que los antiguos.
- Datos
- category · value
- Buena para
- Comparar cómo retiene cada cohorte a la misma edad y ver si las más recientes mejoran.
- Evítala cuando
- Cuando sólo hay una o dos cohortes: el mapa se queda en una franja y una curva lo cuenta mejor.
- Se lee bien
- Entre 6 y 100 elementos; dibuja hasta 100
- Datos que faltan
- Omite el valor ausente y lo declara aparte.
- Accesibilidad
- Lector de pantalla: resumen en texto · respeta «reducir movimiento»
Forma de los datos
Qué columnas pide
| Columna | Tipo | Para qué |
|---|---|---|
category · opcional | string | La cohorte: una fila del mapa. Sin ella las filas salen sin nombre. |
value · opcional | number | Formato ANCHO: cada columna legible como número que no es la cohorte es un mes de vida. El mes lo dice el NOMBRE de la columna cuando lo lleva («Month 3» → 3), y entonces la que no lo lleva —«Avg», que la propia exportación escribe— no es un mes y se queda fuera; si ninguna lo lleva, mandan el orden de las columnas. La celda vacía se salta a propósito (es la forma del triángulo), y «85%» cuenta como número: el `%` se limpia antes de mirar. Formato LARGO (2 columnas legibles): la 1.ª es el índice de mes y la 2.ª la retención. Ninguno de los dos se pide por nombre. |
Tamaños
Recompuesta, no encogida
El motor vuelve a componer la pieza a cada ancho: los rótulos conservan su cuerpo y la figura gana alto si lo necesita.
Cuándo usarla
Tres preguntas antes de elegirla
¿Hay muchas cohortes que comparar?
Con pocas cohortes, unas curvas superpuestas enseñan mejor la forma de la caída.
Sí: quédate con retención por cohortes
No: usa Curvas de retención¿Te interesa cada cohorte por separado?
Si basta con una sola curva de permanencia para toda la base, la curva de Kaplan-Meier la dibuja.
Sí: quédate con retención por cohortes
No: usa Curva de Kaplan-Meier¿Lo que se retiene son clientes, no ingresos?
Si interesa cuánto gasta la base actual, con ampliaciones y bajas en dinero, la retención neta de ingresos lo descompone.
Sí: quédate con retención por cohortes
No: usa Retención neta de ingresosCódigo
La misma pieza, con tus datos
import { getPreset, renderComposition } from 'visx-render/node';
const spec = await getPreset('cohortretention');
spec.data.rows = misFilas; // tus columnas
const { svg, warnings } = await renderComposition(spec);También en React con Chart y prepareComposition. Guía para desarrolladores →
Dudas
¿Por qué falta la esquina de abajo a la derecha?
Porque las cohortes recientes no han cumplido todavía esos meses. Esas celdas no son datos que falten: es tiempo que no ha pasado.
¿Qué forma tiene que tener la tabla?
Vale el formato ancho, con una columna por mes de vida, o el largo, con el índice de mes y la retención. En el ancho, si el nombre de la columna lleva el número del mes manda ese número, y una columna sin número, como la de media, se queda fuera. Un valor escrito con «%» cuenta como número.
¿Por qué cada fila empieza en su mes 0?
Para comparar cohortes a la misma edad. Alinear por calendario mezclaría clientes de un mes con clientes de un año.
¿Qué hace si faltan datos?
Omite el valor ausente y lo declara aparte.
¿Cómo se ve en el móvil?
El motor la recompone a 480 px de ancho —rótulos, leyenda y alto— en vez de encoger la versión de escritorio.
Relacionadas
Otras formas de responder «cómo cambia en el tiempo»
Lasañamuchas unidades en el tiempo en un mapa de calor
Gráfico de áreasuna medida en el tiempo con el volumen destacado
Gráfico de control por atributostasa de defectos de lotes frente a sus límites
Barras y línea combinadasuna cifra absoluta junto a su tasa
Bandas de Bollingerprecio frente a su rango habitual de variación
Gráfico con selector de rangoexplorar un tramo de una serie larga