Перейти к содержанию
Innovialabs

Когортный анализ в маркетинге: как измерять удержание и LTV

Продвинутое4 мин

Коротко

Когортный анализ группирует клиентов по месяцу первой покупки и каналу привлечения и показывает, сколько из них возвращаются и сколько денег приносят со временем. Сравнение каналов по LTV когорты на одинаковом горизонте против стоимости привлечения показывает, куда выгоднее направлять бюджет.

Зачем нужны когорты

Общие метрики смешивают всех клиентов вместе. Если выручка растёт, непонятно, это новые клиенты покупают больше или старые возвращаются лучше. Когорта — группа клиентов, объединённых общим событием в одном периоде, чаще всего первой покупкой или регистрацией в одном месяце. Отслеживая каждую когорту отдельно, вы видите:

  • как быстро клиенты «отваливаются»;
  • улучшается ли удержание у новых когорт после изменений в продукте;
  • какие каналы приводят клиентов, которые остаются и платят дольше.

Как собрать когорты привлечения

Нужна таблица заказов (или событий активности) с тремя полями: ID клиента, дата, сумма. Плюс канал привлечения клиента — обычно по первому касанию или первому заказу.

  1. Для каждого клиента найдите дату первой покупки — это месяц когорты.
  2. Для каждого заказа посчитайте номер периода с момента первой покупки: месяц 0, 1, 2…
  3. Сгруппируйте по когорте и номеру периода: число активных клиентов и выручку.
WITH first_order AS (
  SELECT customer_id, DATE_TRUNC(MIN(order_date), MONTH) AS cohort_month
  FROM orders
  GROUP BY customer_id
)
SELECT
  f.cohort_month,
  DATE_DIFF(DATE_TRUNC(o.order_date, MONTH), f.cohort_month, MONTH) AS month_n,
  COUNT(DISTINCT o.customer_id) AS active_customers,
  SUM(o.revenue) AS revenue
FROM orders o
JOIN first_order f USING (customer_id)
GROUP BY 1, 2
ORDER BY 1, 2;

Синтаксис приведён для BigQuery; в других СУБД функции дат называются иначе. Для сравнения каналов добавьте канал в first_order и в группировку.

Как читать таблицу удержания

Строки — когорты, столбцы — месяцы с момента первой покупки, ячейки — доля когорты, совершившая покупку в этом месяце. Условный пример:

КогортаКлиентовM0M1M2M3
Январь400100%22%15%12%
Февраль450100%25%17%—
Март380100%30%——

Цифры условные, только для иллюстрации. Таблицу читают в трёх направлениях:

  • По строке — жизненный цикл одной когорты: где самый сильный обвал и выходит ли кривая на плато. Плато — признак того, что у продукта есть ядро постоянных клиентов.
  • По столбцу — сравнение когорт на одном и том же возрасте. Если M1 растёт от когорты к когорте, изменения работают.
  • По диагонали — календарные события: распродажа или сбой затрагивают все когорты в одном календарном месяце.

Когортный LTV и сравнение каналов

LTV когорты на горизонте N — накопленная выручка (лучше — валовая маржа) когорты к месяцу N, делённая на число клиентов в когорте. Сравнивать каналы корректно только на одинаковом горизонте: LTV за 3 месяца с LTV за 3 месяца.

Далее сопоставьте с CAC (стоимостью привлечения клиента) по тому же каналу:

МетрикаЧто показывает
LTV(N) / CACокупился ли канал к месяцу N
Срок окупаемостив каком месяце накопленная маржа догнала CAC
Форма кривой LTVрастёт ли выручка после первой покупки или канал даёт «одноразовых» клиентов

Типичная картина: дешёвый канал приводит клиентов с низким повторным спросом, дорогой — тех, кто возвращается. По первой покупке выигрывает первый, по когортному LTV — второй.

Как использовать для бюджета

  • Перераспределяйте бюджет в каналы с лучшим соотношением LTV/CAC на горизонте, который выдерживает ваш денежный поток.
  • Задайте целевой CAC для каналов через ожидаемый LTV: сколько можно платить за клиента, чтобы окупиться к нужному месяцу.
  • Следите за новыми когортами: если удержание свежих когорт падает, рост бюджета только ускорит потери.
  • Для ранних когорт используйте прогноз LTV по кривым старых когорт, но перепроверяйте его по мере накопления данных.

Частые ошибки

  • Неполные когорты: у мартовской когорты ещё нет M3 — не сравнивайте её «итоговый» LTV с январской.
  • Выручка вместо маржи: канал со скидочными клиентами выглядит лучше, чем есть.
  • Маленькие когорты: при десятках клиентов проценты прыгают от случайности. Укрупняйте период или объединяйте каналы.
  • Смешивание повторных клиентов: когорта должна состоять только из новых.

Частые вопросы

Зависит от частоты покупок. Для приложений и сервисов с ежедневным использованием подходят недели, для e-commerce и B2B — месяцы. Главное, чтобы в когорте было достаточно клиентов для устойчивых процентов.

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.