Когортный анализ для оценки удержания клиентов и повторных покупок

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

Короткие выводы для внедрения когортного анализа

  • Определите когорту по первой покупке, регистрации или другому проверяемому событию.
  • Считайте удержание по относительным периодам после старта когорты, а не только по календарным месяцам.
  • Разделяйте повторную покупку, активность и выручку: это разные признаки поведения.
  • Не сравнивайте маленькие когорты без указания размера выборки и периода наблюдения.
  • Проверяйте дубли, возвраты, отмены, часовые пояса и пропуски идентификаторов клиентов.
  • Для решений используйте динамику нескольких когорт, а не одну удачную или неудачную группу.

Понимание когортного анализа: цели и ключевые концепции удержания

Когортный анализ клиентов - способ сравнить группы пользователей, объединённых общим стартовым событием. Например, в одну когорту входят все клиенты, совершившие первую покупку в определённом месяце. Затем проверяется, сколько из них вернулись в следующий и последующие периоды.

Метод подходит для интернет-магазинов, подписочных сервисов, приложений, образовательных продуктов и B2B-продаж с повторными заказами. Он особенно полезен, когда нужно понять, меняется ли качество новых клиентов после рекламной кампании, изменения продукта или запуска новой коммуникации.

Когортный подход не стоит использовать как единственный метод, если:

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

Сбор и подготовка данных: как сформировать когорты и выбрать события

Для базового анализа понадобятся таблица заказов или событий, стабильный идентификатор клиента, дата и время события, его тип, сумма и статус. Подойдут SQL-хранилище, электронная таблица для небольшой выборки или BI-система, если расчёты можно проверить на исходных данных.

Минимальная структура записи

  • client_id - постоянный идентификатор клиента, а не только идентификатор сессии;
  • event_time - дата и время события с единым часовым поясом;
  • event_type - покупка, вход, продление, заявка или другое выбранное действие;
  • order_status - признак оплаты, отмены, возврата или тестового заказа;
  • revenue - сумма после согласованной обработки скидок, возвратов и налогов.

Для когорты по дате используйте дату первого подтверждённого события клиента. Для когорты по поведению можно объединять клиентов по первой покупке определённой категории, каналу привлечения, тарифу или другому признаку. Выбирайте только тот вариант, который связан с конкретным бизнес-вопросом.

Минимальные проверки качества данных

  • уберите дубли событий и проверьте повторяемость идентификаторов;
  • исключите отменённые и тестовые заказы по согласованному правилу;
  • проверьте, что дата первого события действительно является первой в доступной истории;
  • сопоставьте сумму заказов с отчётом финансовой или операционной системы;
  • зафиксируйте границы периода и часовой пояс до начала расчётов.

Выбор метрик и временных окон для оценки повторных покупок

Перед расчётом определите, что именно означает возвращение клиента. Для магазина это может быть оплаченный заказ, для подписки - активное продление, для сервиса - завершённое целевое действие.

  1. Сформулируйте объект удержания.

    Выберите событие, которое считается активностью. Не смешивайте в одной матрице просмотр страницы, добавление товара и оплаченный заказ, если они отвечают на разные вопросы.

  2. Назначьте старт когорты.

    Обычно стартом служит первая покупка или регистрация. Если клиент мог совершить несколько событий в один день, оставьте первое подтверждённое событие по выбранному правилу.

  3. Выберите размер периода.

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

  4. Рассчитайте размер когорты.

    Размером считается число уникальных клиентов, вошедших в группу. Он используется как знаменатель для каждой последующей доли удержания.

  5. Рассчитайте удержание.

    Базовая формула: число клиентов когорты с целевым событием в периоде делится на размер когорты и умножается на сто процентов. Так определяется коэффициент удержания клиентов для каждого относительного периода.

    • период 0 обычно отражает стартовую активность;
    • период 1 - поведение в следующем выбранном окне;
    • последние периоды показывают долгосрочное удержание только для старых когорт.
  6. Добавьте коммерческие показатели.

    Отдельно рассчитайте выручку на клиента, среднее число заказов и долю клиентов с повторной покупкой. Не заменяйте ими удержание: рост суммы заказа не означает рост числа возвращающихся клиентов.

  7. Сравните когорты с одинаковой зрелостью.

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

Построение и интерпретация матрицы удержания (с примером таблицы)

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

Когорта по старту Размер когорты Период 0 Период 1 Период 2 Период 3
Январь Базовое число клиентов Стартовая доля Доля с событием через 1 период Доля с событием через 2 периода Доля с событием через 3 периода
Февраль Базовое число клиентов Стартовая доля Доля с событием через 1 период Доля с событием через 2 периода Недоступно, если наблюдение не завершено
Март Базовое число клиентов Стартовая доля Доля с событием через 1 период Недоступно, если наблюдение не завершено Недоступно, если наблюдение не завершено

Диагональное чтение показывает поведение клиентов через одинаковое время после старта. Если новые строки систематически выше старых на одинаковой глубине, качество привлечения или продукта могло улучшиться. Если провал появляется в одном относительном периоде у всех когорт, ищите проблему в коммуникации, оплате, ассортименте или сценарии использования.

Проверка результата перед публикацией

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

Когортный анализ для расчёта LTV и частоты повторных покупок

Когортный анализ помогает строить LTV по фактической динамике выручки каждой группы. Для периода суммируют выручку клиентов когорты, затем делят её на число клиентов в исходной группе. Накопленный показатель сравнивают между когортами одинаковой зрелости.

Для анализа удержание клиентов и повторные покупки полезно рассматривать вместе: одна метрика показывает, возвращаются ли люди, а другая - сколько покупок и выручки они создают. Частоту повторных покупок можно считать как число оплаченных заказов на клиента за выбранное окно, исключая отменённые и тестовые заказы.

Ошибки, которые искажают выводы

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

Ограничения, источники смещения и контроль статистической значимости

Риск смещения возникает, если в разные когорты попадают неодинаковые типы клиентов или события фиксируются с разной полнотой. Например, смена системы аналитики может создать видимый провал удержания, который вызван не поведением пользователей, а потерей идентификаторов.

Для небольших когорт не ограничивайтесь сравнением процентов. Храните числитель и знаменатель, показывайте доверительные интервалы для долей и проверяйте различия между группами тестом для двух пропорций или точным критерием Фишера, если наблюдений мало. Для выручки и числа заказов рассмотрите бутстрэп или непараметрический тест, поскольку распределение таких показателей часто асимметрично.

Альтернативы базовой схеме

  • Когорта по дате. Подходит для контроля качества привлечения и сравнения маркетинговых периодов.
  • Когорта по поведению. Уместна, когда нужно сравнить клиентов по первой категории, тарифу или сценарию использования.
  • Окно по неделям. Подходит для частых действий и быстрых продуктовых изменений.
  • Окно по месяцам или кварталам. Уместно для редких покупок и длинного цикла сделки.

Практический порядок внедрения: сначала зафиксируйте бизнес-вопрос и событие, затем проверьте идентификаторы и статусы заказов, после этого постройте матрицу удержания, добавьте выручку и частоту покупок, а выводы подтвердите сравнением зрелых когорт и проверкой неопределённости.

Короткие ответы на практические вопросы по внедрению

Какое событие лучше выбрать для когорты?

Выбирайте первое подтверждённое событие, которое отражает начало клиентского отношения: регистрацию, первую оплату или активацию. Для оценки повторных покупок чаще всего подходит первая оплаченная покупка.

Чем удержание отличается от повторной покупки?

Удержание - доля клиентов, вернувшихся к целевому действию в периоде. Повторная покупка - конкретный вид такого действия; один клиент может совершить несколько повторных заказов.

Какой период выбрать для анализа магазина?

Ориентируйтесь на обычный цикл покупки и доступную глубину данных. Период должен быть достаточно длинным для повторного действия и одинаковым для всех когорт.

Можно ли сравнивать свежую и старую когорты?

Только по одинаковой зрелости, например через один период после старта. Новая когорта не имеет наблюдений за будущие периоды, поэтому её нельзя считать менее успешной по незавершённым данным.

Что делать с возвратом товара?

Заранее определите, считается ли заказ активностью, а возврат уменьшает ли выручку. Для финансового LTV возвраты обычно нужно отражать отдельно и последовательно во всех когортах.

Как понять, что различие между когортами значимо?

Сравните числители и знаменатели, рассчитайте доверительные интервалы и выберите тест для долей или выручки. При малых выборках используйте точный критерий и не делайте сильный вывод по одной метрике.

Какие данные нужны для анализа повторных покупок?

Нужны стабильный идентификатор клиента, дата события, статус заказа, сумма и признак типа события. Без этих полей трудно отличить новую покупку от отмены, дублирования или технического события.

Прокрутить вверх