Volta — Retention и когорты
Ситуация
Ship — не конец: эффект KYC-фикса проверили на удержании когортными треугольниками (месяц регистрации × возраст) вместо «среднего по всем».
Задача
Мне нужно было отвечать за проверку эффекта на удержании и за выбор метода, который не размывает эффект усреднением.
Действия
Эффект на удержании я читал не средним по базе, а когортными треугольниками — по месяцу регистрации и возрасту когорты, чтобы сдвиг был виден во времени.
- Когортная матрица. Когортные кривые и матрица удержания M0–M11 — строки по месяцу регистрации, столбцы по возрасту когорты.
- Pre/post сравнение. Welch t-test + Cohen’s d, bootstrap-ДИ на M1/M3/M6: разделил когорты на «до» и «после» фикса KYC и сравнил удержание на ключевых месяцах.
- LTV по планам. Plan-specific LTV с разложением ARPU × удержание, чтобы увидеть, чем именно Premium дороже Free.
- Проверка устойчивости. Посмотрел, сохраняется ли разрыв на дальних месяцах, а не только на первом.
- Очистка когорт. Исключил неполные когорты и короткие наблюдения, чтобы ступенька не оказалась артефактом разного числа периодов.
- Инструменты. Python и pandas/NumPy для когорт, SciPy/Statsmodels для тестов, Matplotlib/Seaborn для heatmap и кривых; прогоны через uv + ruff.
Результат
- Ступенчатый сдвиг: пост-фикс когорты (2024-09+) держат M1 ≈ 61–67% против 51–53% у пре-фикс.
- M3 +9,2 п.п.; эффект не выцветает — на M6 разрыв сохраняется.
- LTV Premium = 4,3× Free (ARPU 2,66× × удержание 1,62×).
- Эффект на портфеле: +€227K/год инкрементального LTV.
Рекомендации
- Нацелить апгрейды на high-intent Free в первые 1–2 месяца — там максимальный рычаг.
- Мониторить затухание когорт, а не только средний retention.
- Читать последние ячейки диагонали осторожно (мало периодов наблюдения).