Когортный анализ без жаргона
Когортный анализ отвечает на простой бизнес-вопрос: после того как люди пришли, они возвращаются, покупают снова и окупают стоимость привлечения? Здесь разберем тему с нуля, на такой же retention-таблице, которую используют продуктовые, CRM, fintech и e-commerce команды.
Идея в одном предложении
Когорта - это группа людей, которые стартовали из одной точки. Когортный анализ следит за этой группой во времени, а не смешивает всех пользователей в одно среднее.
Начните с аналогии со школьным классом
Представьте всех учеников, которые пошли в первый класс в сентябре 2020 года. Это одна когорта. Можно проверить, сколько из них дошли до 5-го класса, 9-го класса или выпуска. В продукте логика такая же: всех, кто зарегистрировался в марте, сделал первый заказ в апреле или установил приложение из одной кампании, можно отслеживать месяц за месяцем.
Почему средние значения опасны
Среднее смешивает старых лояльных клиентов и новых хрупких клиентов. Выручка может расти, пока качество новых пользователей падает, просто потому что вы покупаете больше трафика. Когорты разделяют историю: январские пользователи вели себя так, февральские иначе, paid search отличается от referral.
Пять слов, без которых таблицу читать трудно
Стартовая группа. Например: пользователи, которые сделали первую покупку в марте.
Событие, которое помещает человека в когорту: регистрация, установка, первая покупка, одобрение кредита, старт подписки.
Сколько времени прошло после birth event. M0 - стартовый месяц, M1 - месяц спустя.
Действие, которое доказывает, что пользователь вернулся. Оно должно создавать ценность: покупка, перевод, завершенный урок, бронь, продление подписки.
Доля исходной когорты, которая сделала return event в следующий период.
Та же таблица, но вместо активности в ней деньги: revenue, gross margin, LTV, payback.
Если в январе зарегистрировались 1 000 пользователей, а в феврале 420 из них сделали покупку, то M1 purchase retention январской когорты равен 42%.
M1 retention = 420 вернувшихся пользователей / 1 000 пользователей в исходной когорте = 42%Читайте когортную таблицу медленно
Таблица ниже выдуманная, но форма реальная. Каждая строка - месячная когорта. Каждый столбец - возраст этой когорты. Пустые ячейки справа не означают ноль: это значит, что еще не прошло достаточно времени.
| Когорта | Размер | Месяцев с регистрации | ||||||
|---|---|---|---|---|---|---|---|---|
| M0 | M1 | M2 | M3 | M4 | M5 | M6 | ||
| Янв | 1 200 | 100% | 62% | 48% | 42% | 39% | 37% | 36% |
| Фев | 1 450 | 100% | 64% | 50% | 44% | 40% | 38% | |
| Мар | 1 380 | 100% | 66% | 52% | 46% | 42% | ||
| Апр | 1 620 | 100% | 68% | 54% | 48% | |||
| Май | 1 750 | 100% | 70% | 56% | ||||
| Июн | 1 900 | 100% | 71% | |||||
Как это читать
Читайте одну строку слева направо
Так вы видите, как одна когорта стареет. Январь начинается со 100%, потом видно, сколько январских пользователей осталось через один, два, три месяца.
Читайте один столбец сверху вниз
Так вы сравниваете когорты в одном возрасте. Если March M1 хуже January M1, что-то изменилось в привлечении, онбординге, продукте, цене или сезонности.
Не сравнивайте старый возраст с молодым
January M6 и June M1 отвечают на разные вопросы. Сравнивайте M1 с M1, M3 с M3 и так далее.
Помните про пустой треугольник
Новые когорты еще не прожили достаточно долго, чтобы иметь M4, M5 или M6. Пустая ячейка - это неизвестно, а не плохо.
Та же таблица в виде кривой
Если усреднить каждый столбец, получится кривая retention. Здоровая кривая сначала падает, а потом выравнивается. Слабая кривая продолжает идти к нулю.
Когорта, сегмент, воронка: не путайте
Эти инструменты отвечают на разные вопросы. Команды путаются, когда называют когортой любую группу пользователей.
| Инструмент | Что группирует | Вопрос | Пример |
|---|---|---|---|
| Сегмент | Пользователи с общим признаком | Кто они? | Пользователи из Алматы на iOS |
| Воронка | Последовательность шагов | Где они отваливаются? | Визит -> регистрация -> покупка |
| Когорта | Группа, за которой следим во времени | Остаются и окупаются? | Мартовские first-purchase пользователи через 3 месяца |
Канал может выглядеть дешевым по CAC и все равно быть плохим, если клиенты не повторяют покупку, не возвращают деньги или уходят до payback. Поэтому зрелые команды строят и retention cohorts, и revenue cohorts.
| Канал | CAC | M1 gross margin | M3 cumulative margin | Payback |
|---|---|---|---|---|
| Discount TikTok | $18 | $7 | $10 | Не окупился |
| SEO | $45 | $12 | $58 | Месяц 3 |
| Referral | $28 | $20 | $76 | Месяц 2 |
Не начинайте с огромного дашборда. Начните с одного бизнес-вопроса и одной чистой таблицы.
- Выберите вопрос: новые пользователи возвращаются? paid users прибыльны? какой канал дает повторные покупки?
- Выберите birth event. Нужна настоящая стартовая точка: первая покупка, открытый счет, старт подписки. Не берите расплывчатые события вроде page view.
- Выберите период когорты. Для consumer apps подойдут дни или недели; для e-commerce и подписок - месяцы.
- Выберите return или value event. Для fintech это может быть completed transfer; для e-commerce - второй заказ; для EdTech - завершенный урок.
- Добавляйте разрезы только после того, как базовая таблица работает: channel, campaign, city, platform, first category, language.
- Превратите таблицу в решение: отключить канал, починить onboarding, изменить CRM-тайминг, убрать продуктовое трение или продолжить масштабирование.
Локальные примеры для KZ и СНГ
Не останавливайтесь на открытии счета. Стройте когорты по первому одобренному продукту, потом следите за первой транзакцией, повторной транзакцией, пополнением карты, погашением кредита и маржой.
Black Friday и Kaspi-style промо могут создать огромные first-order когорты со слабым повторным поведением. Отделяйте discount cohorts от normal-price cohorts.
Смотрите второй и третий заказ. Дешевый первый заказ может быть шумом, если люди пришли только за промокодом.
Signup cohort слишком слабая. Смотрите оплату, первый урок, первое домашнее задание, активность второй недели, завершение курса, refund и referral.
Частые ошибки новичков
Брать "app open" как return event
Открытие приложения часто слишком слабое. Берите действие, которое доказывает ценность: перевод, заказ, бронь, урок, продление.
Менять определения каждый месяц
Если январская когорта строится по signup, а февральская по first purchase, сравнение сломано.
Слишком уверенно читать маленькие когорты
Когорта из 40 человек может двигаться на 10-20 п.п. из-за нескольких людей. Объединяйте маленькие когорты или помечайте результат как directional.
Путать качество привлечения с качеством продукта
Плохая когорта может быть следствием слабого трафика, сломанного онбординга, сезонности, цены, задержек поддержки или продуктового изменения. Сегментируйте до обвинений.
Смотреть только retention, а не маржу
Когорта, которая возвращается из-за больших скидок, может выглядеть активной и все равно терять деньги.
Считать неполные ячейки нулем
Новые когорты еще не дошли до M4 или M6. Оставляйте эти ячейки пустыми, пока период не наступит.
Текста выше достаточно, чтобы понять механику. Видео полезно, если хочется услышать ту же идею голосом перед тем, как собирать таблицу самостоятельно.
FAQ
Когортный анализ нужен только продуктовым командам?
Нет. Маркетинг использует когорты для оценки качества каналов, CRM - для retention, финансы - для payback, продукт - для поиска проблем активации.
Какой период брать: день, неделю или месяц?
Берите естественный ритм продукта. День подходит для mobile apps и игр. Неделя - для контента, marketplace и onboarding. Месяц - для e-commerce, подписок и банковских продуктов.
Сколько пользователей нужно?
Универсального минимума нет, но очень маленькие когорты шумные. Если один пользователь меняет результат на несколько процентных пунктов, объединяйте когорты или считайте вывод сигналом, а не доказательством.
Можно ли построить это в GA4, Amplitude или Mixpanel?
Да. В GA4 есть Cohort exploration, а Amplitude и Mixpanel хорошо подходят для event-based retention analysis. Сложность не в инструменте, а в выборе чистых событий.
Полезные источники
Нужна когортная таблица, связанная с CRM-выручкой, рекламными расходами и продуктовыми событиями? Напишите.