Перейти к содержимому
Назад в Академию

Когортный анализ: как читать retention и LTV

09.09Email, CRM и retention
Содержание статьи

В начале ноября владелец центра подготовки к IELTS выгружает оплаты из CRM и считает, сколько в среднем заплатили ученики каждого набора. У августовских вышло по 112 500 ₸, у октябрьских по 45 000 ₸. Вывод напрашивается: в октябре реклама привела не тех. Но октябрьские ученики успели оплатить только первый месяц, потому что второй у них ещё не начался.

Когортный анализ сравнивает людей одного «возраста»: первый месяц августовских учеников с первым месяцем октябрьских. Разберём на оплатах центра когортную таблицу, посчитаем LTV ученика и найдём, когда окупается реклама. Курс и экономика взяты из плана масштабирования рекламы: 45 000 ₸ в месяц, три месяца, центру остаётся 16 000 ₸ в месяц с ученика. Цифры условные.

Когорта: кто в неё входит и что считать возвратом

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

Перед подсчётом запишите четыре правила:

  • Вход: первая оплата курса.
  • Возврат: оплата следующего месяца курса.
  • Возраст: М0 - месяц первой оплаты, М1 - следующий календарный месяц, М2 - ещё через месяц, последний месяц курса.
  • Срез: 31 октября, все месяцы до него закончились.

Для августовской когорты М1 - это сентябрь, для сентябрьской - октябрь.

От того, что считать возвратом, меняются цифры. В продуктовой аналитике этот выбор делают в самом отчёте: Amplitude, например, в настройках retention различает возврат ровно в выбранный период (Return On) и в этот период или позже (Return On or After). Поэтому правила записывают рядом с таблицей. Без них два аналитика по одним и тем же оплатам получат разные проценты.

Когортная таблица центра

КогортаУчениковМ0М1М2
Август20100%80%70%
Сентябрь15100%73%ещё нет
Октябрь12100%ещё нетещё нет

Строка - одна когорта, вправо по строке растёт её возраст. Чтобы сравнить когорты, смотрите в один столбец. В М0 везде 100%: первая оплата и есть вход в когорту, так что это следствие определения, а не идеальное удержание.

Разберём одну ячейку: август, М1. Из 20 учеников, впервые оплативших курс в августе, 16 оплатили второй месяц в сентябре.

Retention М1 = 16 оплативших второй месяц / 20 учеников когорты = 80%.

В М2 стоит 70%: третий месяц оплатили 14 из тех же 20. Знаменатель остаётся 20, а не 16. Если делить на 16, ушедшие после первого месяца выпадут из расчёта, и вместо 70% получится почти 88%.

Считают людей, а не платежи. Ученик, который оплатил сентябрь двумя переводами, в числителе всё равно один.

На картинке тот же приём на когортах магазина: слева покупатели разложены по календарю, справа по возрасту, и М1 январской и февральской когорт оказывается в одном столбце.

Слева когорты магазина по календарным месяцам, справа те же когорты по возрасту: в столбце М1 рядом стоят 42% январской и 38% февральской когорты, а заштрихованные ячейки ещё не наступили.
Слева когорты магазина по календарным месяцам, справа те же когорты по возрасту: в столбце М1 рядом стоят 42% январской и 38% февральской когорты, а заштрихованные ячейки ещё не наступили.

«Ещё нет» - не ноль

Сентябрьская когорта дойдёт до М2 в ноябре. 31 октября этот месяц ещё не наступил, поэтому в ячейке «ещё нет». Поставьте туда 0%, и таблица скажет, что никто из сентябрьских учеников не оплатил третий месяц, хотя этого пока никто не знает.

То же с незаконченным месяцем. Если взять срез 15 ноября, у октябрьской когорты М1 будет посчитан наполовину. Такой месяц либо убирают из сравнения, либо помечают как неполный. В инструменте для когортных таблиц такую ячейку оставляют пустой: пустая значит «период не наступил», а 0 - что никто не вернулся.

Сначала одинаковый возраст, потом размер, маржа и состав

Вернёмся к выгрузке владельца. 112 500 ₸ у августовских - это 45 000 ₸, умноженные в среднем на 2,5 оплаченных месяца: когорта в возрасте М2, курс пройден. 45 000 ₸ у октябрьских - возраст М0. В М0 разницы нет и быть не может: первый месяц оплатили все. Октябрьских можно будет сравнить с августовскими по М1 в начале декабря, а пока по М1 сравнимы только сентябрьские.

Та же ошибка бывает в днях. Новая когорта наблюдается 7 дней, старая 90, и по накопленной выручке новые клиенты выглядят хуже. За 7 дней ученик центра успевает оплатить один месяц, за 90 - все три. Сравнивать нужно седьмой день старой когорты с седьмым днём новой, а итог за 90 дней - когда новой тоже исполнится 90.

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

Размер. В М1 у августовской когорты 80%, у сентябрьской 73%. Это 16 из 20 и 11 из 15. Оплати ещё один сентябрьский ученик второй месяц, было бы 12 из 15, те же 80%. В когорте из 15 человек один ученик сдвигает долю почти на 7 процентных пунктов, в когорте из 12 - больше чем на 8. Разницу в одного человека таблица не отличит от случайности.

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

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

От удержания к деньгам: LTV ученика

Retention показывает людей. Чтобы перейти к деньгам, умножим их на вклад: 16 000 ₸ с каждого оплаченного месяца. Августовская когорта:

Месяц курсаПлатятВклад когортыНакопленоНа одного ученика когорты
М020320 000 ₸320 000 ₸16 000 ₸
М116256 000 ₸576 000 ₸28 800 ₸
М214224 000 ₸800 000 ₸40 000 ₸

LTV (lifetime value) - вклад, который приносит один привлечённый клиент за всё время с бизнесом. У курса это три месяца: 800 000 / 20 = 40 000 ₸ на ученика. Тот же результат даёт строка retention: 16 000 × (1 + 0,8 + 0,7) = 40 000 ₸.

В знаменателе все 20 учеников, в том числе ушедшие после первого месяца. Если разделить на 14 доучившихся, выйдет 57 143 ₸, и центр будет готов платить за привлечение больше, чем приносит средний ученик.

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

Теперь сравните с планом. В плане центра ученик приносил 48 000 ₸, потому что считалось, что доучиваются все. По августовской когорте выходит 40 000 ₸. Если владелец, как и раньше, готов отдавать на рекламу половину, предел цены ученика опускается с 24 000 до 20 000 ₸. Решать ему, но теперь по своим оплатам, а не по предположению. В начале декабря, когда сентябрьская когорта закончит курс, пересчитайте LTV на сентябрьской: двадцати учеников одного набора мало, чтобы менять предел надолго.

Окупаемость тоже видна по когорте. Допустим, центр платит за ученика нынешний предел, 24 000 ₸. После первого месяца на ученика когорты набирается 16 000 ₸, до цены привлечения не хватает 8 000. После второго 28 800 ₸: реклама окупилась, и сверху 4 800 ₸. После третьего 40 000 ₸, на 16 000 ₸ больше цены привлечения. Даже с учётом ушедших реклама на августовских учеников вернулась во втором месяце. Вклад здесь тот же, что в юнит-экономике: платёж ученика минус переменные затраты на него, то есть преподаватель и материалы.

Окупаемость в калькуляторе

Тот же расчёт для одного клиента делает калькулятор окупаемости CAC. CAC (customer acquisition cost) - сколько стоит привлечь одного платящего клиента. Окупаемость CAC - через сколько месяцев вклад клиента покрывает эту сумму.

Вкладка сделана для магазина, поэтому поля в ней магазинные. Для центра «заказ» - это месячный платёж. Откройте вкладку «E-commerce маркетплейс» и введите:

  1. CAC: 24000.
  2. AOV: 16000. В поле среднего чека сразу ставим ту часть платежа, которая остаётся центру.
  3. «Валовая маржа»: 1, чтобы калькулятор не вычел расходы второй раз.
  4. «Скидки / промо», «Доставка / заказ», «Склад / заказ» и «Доля возвратов»: 0.
  5. «Заказов / год · Y1»: 3. Заказы первого года калькулятор берёт целиком, поэтому для курса короче года сюда ставят все платежи ученика.
  6. «Срок жизни клиента»: 0.25, длина курса в годах. Стрелки этого поля шагают по 0,5, поэтому значение впечатайте с клавиатуры: калькулятор его принимает.

Калькулятор покажет LTV 48 000 ₸, LTV : CAC 2.0× (вклад ученика вдвое больше цены его привлечения) и окупаемость CAC 2 мес. Точное значение 24 000 / 16 000 = 1,5 месяца, а калькулятор округляет до целых месяцев. Для центра это и есть ответ в деньгах: платежи приходят раз в месяц, после первого набирается 16 000 ₸, после второго 32 000 ₸, так что цена привлечения возвращается со вторым платежом.

Срок жизни здесь влияет только на окупаемость. Калькулятор делит LTV на срок жизни в месяцах, получает средний вклад в месяц и делит на него CAC. С 0.5 он растянет те же 48 000 ₸ на шесть месяцев и покажет окупаемость 3 мес, хотя LTV не изменится: при любом сроке до года в него идут все заказы первого года.

Задание: абзац про окупаемость для владельца

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

Для центра абзац мог бы выглядеть так:

Допустим, реклама обходится вам в 24 000 ₸ на ученика, это ваш предел. Курс длится три месяца, и с каждого месяца, после оплаты преподавателю и материалов, вам остаётся 16 000 ₸. Значит, деньги на рекламу возвращаются со вторым платежом ученика: после первого у вас 16 000 ₸, после второго 32 000 ₸, а всё, что он платит дальше, идёт на аренду, другие постоянные расходы и в прибыль. По расчёту это полтора месяца, калькулятор округляет срок до двух. Ученик, который уходит после первого месяца, рекламу не окупает: из 20 августовских учеников так ушли четверо.

Абзац готов, когда в нём есть числа, которые вы ввели, срок окупаемости из калькулятора и ни одного необъяснённого термина.

В таком абзаце легко ошибиться в четырёх местах. Первое - CAC из рекламного кабинета. CPL в тесте был 896 ₸, но это цена заявки, а не ученика: у центра до оплаты доходит примерно одна заявка из двенадцати. Второе - вписать в AOV весь платёж, 45 000 ₸. Калькулятор покажет LTV 135 000 ₸ и окупаемость 1 мес: зарплату преподавателя никто не вычел. Третье - оставить поля магазина как есть: скидку 7%, доставку 1 800 ₸, склад 600 ₸ и 18% возвратов. У центра нет ни доставки, ни склада, а калькулятор насчитает LTV 27 990 ₸ и окупаемость 3 мес. Четвёртое - термины: если в абзаце остались «LTV : CAC» или «юнит-экономика», владелец на них споткнётся, так что объясните их или уберите.

Видео: ещё одно объяснение когорт

Что такое когортный анализ - Calltouch

Вводный разбор связывает когорты с отложенным спросом и повторными покупками.

Нужна помощь с аналитикой вашего проекта? Обсудить задачу с Goodlabs →