Как обнаружить скрытое ухудшение клиентской базы, отделить устойчивый рост от покупки всё новых клиентов и рассчитать, сколько денег бизнес теряет из-за оттока.
У компании есть два отчёта. Один показывает рост продаж на 16%. Другой — падение доли покупателей, которые возвращаются. Оба отчёта верны. Ошибка возникает, когда собственник смотрит только на первый.
Допустим, компания продаёт услугу за 10 000 ₽. В апреле она получила 100 заказов от новых клиентов и 150 от повторных. В мае — 180 заказов от новых и 110 от повторных. Для простоты считаем, что один клиент совершает один заказ за месяц, а средняя стоимость заказа одинакова.
| Показатель | Апрель | Май | Изменение |
|---|---|---|---|
| Новые клиенты | 100 | 180 | +80% |
| Вернувшиеся клиенты | 150 | 110 | −26,7% |
| Всего заказов | 250 | 290 | +16% |
| Выручка | 2 500 000 ₽ | 2 900 000 ₽ | +400 000 ₽ |
| Доля заказов повторных клиентов | 60% | 37,9% | −22,1 п. п. |
По выручке компания выглядит успешной. Но рост обеспечен прежде всего увеличением числа новых покупателей. Повторные продажи упали.
Это ещё не доказательство ухудшения удержания: в разные месяцы структура клиентской базы может отличаться. Чтобы проверить подозрение, нужно сравнить группы клиентов, пришедших в разное время, на одинаковом этапе их жизни в бизнесе.
Главный вопрос: если завтра сократить привлечение новых клиентов, какая часть выручки сохранится благодаря уже существующей базе?
Ответ зависит от характера услуги. Для аренды это продления, для магазина — повторные покупки, для B2B — новые проекты, продление договора, увеличение объёма закупок. Во всех случаях важно не путать приобретение новых клиентов с сохранением старых.
Когорта — группа клиентов, объединённая общим событием. В простом варианте это люди или компании, совершившие первую платную покупку в одном месяце.
Вместо смешивания всех покупателей в общую статистику мы наблюдаем за каждой такой группой по мере её взросления.
«В июне у нас 546 активных клиентов. В мае было 458. Рост 19,2%».
Показывает текущий объём, но не качество клиентской базы.
«Через месяц после покупки возвращались 80% январских клиентов, но только 60% майских».
Показывает, что происходит с клиентом после первого заказа.
Для корректного сравнения нужно заранее зафиксировать три вещи:
Клиенты могут входить в разные когорты по первому продукту, рекламному каналу, тарифу или сегменту. Но нельзя менять определение метрики между строками одной таблицы: это лишит сравнение смысла.
M0 — месяц первой оплаты. M1 — следующий месяц. M3 — третий месяц после первой оплаты. Это не календарный март.
Для периодически повторяющихся покупок стоит называть этот показатель «долей клиентов когорты, купивших в M3». Клиент, пропустивший M2, может вернуться в M3. Для подписки с непрерывным доступом логика отличается: показатель означает сохранение активной подписки.
Допустим, компания оказывает услугу с ежемесячной оплатой. Ниже показаны шесть когорт клиентов: по строкам — месяц первой оплаты, по столбцам — сколько человек из исходной группы продолжили оплачивать услугу в соответствующем месяце жизни.
| Когорта | M0 | M1 | M2 | M3 | M4 | M5 |
|---|---|---|---|---|---|---|
| Январь | 100 | 80 | 68 | 60 | 55 | 51 |
| Февраль | 120 | 90 | 72 | 62 | 55 | — |
| Март | 130 | 91 | 65 | 51 | — | — |
| Апрель | 150 | 96 | 61 | — | — | — |
| Май | 180 | 108 | — | — | — | — |
| Июнь | 220 | — | — | — | — | — |
Все числа условные. «—» означает, что у когорты ещё не наступил соответствующий месяц наблюдения. Это не нулевое удержание.
На первый взгляд новость хорошая: новых покупателей становится больше — с 100 в январе до 220 в июне. Но посмотрим на долю оставшихся к M1.
| Когорта | Исходный размер | Активны в M1 | Удержание M1 |
|---|---|---|---|
| Январь | 100 | 80 | 80% |
| Февраль | 120 | 90 | 75% |
| Март | 130 | 91 | 70% |
| Апрель | 150 | 96 | 64% |
| Май | 180 | 108 | 60% |
Удержание падает: из каждых 100 январских покупателей через месяц оставалось 80, из каждых 100 майских — уже 60. Это тревожный сигнал, даже если выручка растёт.
Можно посмотреть и на одинаковый возраст M3. В январской когорте сохранились 60%, в февральской — около 51,7%, в мартовской — около 39,2%. Здесь сравнение тоже указывает на ухудшение.
Суть когортного анализа: сравнивать не январь с маем как календарные месяцы, а январских и майских покупателей на одинаковом сроке после начала отношений с компанией.
Изменяйте размеры когорт и число клиентов, активных в каждом месяце. Таблица пересчитает удержание по строкам, построит сравнение M1 и покажет изменение общего количества активных клиентов между маем и июнем.
Начальные данные повторяют пример выше. Для наглядности активным считается клиент с действующей оплаченной услугой в конкретном месяце; повторные заказы внутри месяца не учитываются.
В ячейках — количество активных клиентов из исходной группы. M0 — число новых клиентов; процент под числом рассчитан от M0. Светлые ячейки «—» относятся к будущим месяцам. На телефоне прокрутите таблицу вправо для просмотра M2–M5.
| Когорта | M0 | M1 | M2 | M3 | M4 | M5 |
|---|---|---|---|---|---|---|
| Январь | 100% | 80% | 68% | 60% | 55% | 51% |
| Февраль | 100% | 75% | 60% | 52% | 46% | — |
| Март | 100% | 70% | 50% | 39% | — | — |
| Апрель | 100% | 64% | 41% | — | — | — |
| Май | 100% | 60% | — | — | — | — |
| Июнь | 100% | — | — | — | — | — |
Общий объём растёт, но удержание M1 новых когорт снижается.
Это демонстрационная модель одного варианта непрерывной услуги. Не используйте такие проценты как прогноз для сезонных покупок или проектного B2B без адаптации определения активности.
Обратите внимание: калькулятор не суммирует покупателей разных возрастов в одну когорту. Каждая календарная точка собирается по диагонали таблицы, а доля удержания рассчитывается внутри исходной группы.
Чаще всего когортный отчёт ошибочно читают так: январские клиенты принесли больше денег, чем майские, значит январский канал лучше. Но в июне январская когорта существует уже шесть месяцев, а майская — два. У них было разное время для повторных покупок.
Сравнивать нужно клиентов на одинаковом возрасте: M1 с M1, M3 с M3, первые 90 дней с первыми 90 днями. А ещё нельзя считать не наступившие месяцы нулями.
«Январская когорта принесла 2,4 млн ₽ за шесть месяцев, а майская 0,9 млн ₽ за два. Значит, январские клиенты ценнее».
«Сравним маржинальный доход на клиента за первые 60 дней обеих когорт. Затем отдельно — удержание в M1».
Если вы одновременно поменяли продукт, цену, рекламу и правила учёта, когортная таблица покажет изменение, но сама по себе не объяснит его причину. Для причинного вывода нужны дополнительные проверки.
Выручку полезно разделять по происхождению, а не только по продуктам. Иначе маркетинг может постоянно «заменять» ушедших клиентов новыми, создавая видимость устойчивого роста.
Совершили первую покупку в рассматриваемом периоде. По ним важно знать CAC и доход первого заказа.
Сохранили отношения и покупают в нормальном цикле продукта. Здесь важны удержание, частота, маржа.
Не покупали дольше установленного периода, затем вернулись. Возврат нужно показывать отдельно от непрерывного удержания.
Для простой подписки достаточно помесячно составлять уравнение клиентской базы:
Если клиент не может одновременно числиться в нескольких категориях. Для покупок без подписки нужны специальные определения «активного», «спящего» и «ушедшего» клиента.
Представим, что у компании 500 активных договоров на начало месяца. Она привлекла 100 новых клиентов, потеряла 80, вернула 10 старых. На конец месяца 530 активных договоров — рост на 6%.
Но без 100 новых продаж база сократилась бы на 70 договоров. Это повод выяснить, можно ли снизить отток или выгоднее работать только на расширение привлечения.
Для выручки уравнение сложнее: нужно отдельно учитывать новые продажи, потери от ушедших клиентов, сокращение объёма закупок и расширение действующих контрактов. Количество клиентов может расти, а выручка падать — и наоборот.
Практическое правило: рядом с каждым графиком фиксируйте определение клиента, входное событие, период, критерий активности, размер когорты и дату окончания наблюдения. Без этого данные сложно повторить и проверить.
Нельзя переносить одну и ту же формулу удержания на любой бизнес. Первым делом следует определить естественный цикл использования продукта и событие, которое означает сохранение ценности.
Если клиент оплачивает услугу каждый месяц, можно рассчитывать, какая часть исходной когорты продолжает оплачивать её в M1, M3 и M6. Для аренды склада важно отслеживать не только факт продления, но и тариф, используемую площадь, скидки и расходы на обслуживание.
Пример. Из 100 новых арендаторов через месяц остаются 82, через три месяца — 65. Удержание M1 = 82%, M3 = 65%. Но если оставшиеся 65 клиентов перешли на более дорогие модули, удержание выручки может измениться иначе, чем удержание количества клиентов.
Покупатель не обязан совершать заказ каждый месяц. Для сезонного товара разумно смотреть повторную покупку за 90, 180 или 365 дней. Значимы доля вернувшихся покупателей, число заказов на клиента, средняя маржа заказа, возвраты и стоимость реактивации.
Пример. Клиент купил зимнюю куртку в ноябре и не совершал покупок до следующего октября. Признавать его ушедшим через 60 дней неправильно: продукт просто не предполагает такой частоты покупок.
В B2B компания может покупать услугу один раз в год или реже. Здесь полезнее отслеживать переходы через значимые этапы: первый договор, выполнение проекта, повторный запрос, продление, расширение контракта. Когортой часто становится именно компания-клиент, а не каждый её сотрудник и не каждый счёт.
Пример. Производитель оборудования получил 40 новых корпоративных клиентов в одном квартале. Через 12 месяцев 12 компаний заказали сервис, 8 — дополнительные комплектующие и 5 — второе оборудование. При этом некоторые компании входят сразу в несколько групп. Их нельзя автоматически складывать в 25 разных клиентов: нужно считать уникальные компании и выручку по каждой.
Практический критерий: выбирать длительность окна не по удобству отчёта, а по тому, как часто клиенту действительно требуется продукт и как часто компания может ожидать повторный экономический результат.
Процент удержания важен сам по себе только для диагностики. Для решения об инвестициях его нужно связать с маржинальным доходом, стоимостью привлечения и расходами на удержание.
Допустим, из двух рекламных источников пришло по 100 покупателей. Каждый оплаченный заказ приносит компании 5 000 ₽ маржинального дохода до затрат на привлечение. Сравним результат за первые 12 месяцев одинакового возраста.
| Показатель | Источник А | Источник Б |
|---|---|---|
| Новых клиентов | 100 | 100 |
| CAC на клиента | 6 000 ₽ | 9 000 ₽ |
| Заказов на привлечённого клиента за 12 месяцев в среднем | 1,4 | 2,8 |
| Маржинальный доход на клиента | 7 000 ₽ | 14 000 ₽ |
| Маржинальная ценность после CAC | 1 000 ₽ | 5 000 ₽ |
| Результат всей когорты после CAC | 100 000 ₽ | 500 000 ₽ |
На первый взгляд источник Б дорогой: стоимость привлечения в 1,5 раза выше. Но за год он приводит клиентов, которые покупают вдвое чаще. При одинаковой марже одного заказа итоговый результат когорты после CAC оказывается в пять раз выше.
Такое сравнение имеет смысл, только если маржа действительно рассчитана с учётом дополнительных расходов на выполнение заказов, а повторные продажи наблюдались за сопоставимый период. Если заказам требуются новые скидки, обслуживание, платная реактивация или доставка, эти затраты нужно учитывать.
Маржинальный результат после привлечения = маржинальная ценность − CAC. В отдельных случаях нужно дополнительно учитывать затраты на удержание, возвраты и стоимость денег во времени.
Если небольшая группа крупных покупателей даёт большую часть выручки, средний LTV всех клиентов может казаться высоким. Это не значит, что новый клиент из массового канала будет столь же ценным.
Поэтому маржинальную ценность нужно смотреть по когортам, каналам, сегментам, первым продуктам и тарифам. А для управленческих решений важно отделять фактически наблюдавшийся доход от прогнозируемого.
Этот калькулятор показывает финансовую чувствительность бизнеса к ежемесячному удержанию. Он не доказывает, что конкретная инициатива улучшит retention: это модель «что будет, если» при заданных допущениях.
Каждый новый клиент приносит маржинальный доход за M0. В следующем месяце его сохраняет указанная доля клиентов, затем та же условная доля от оставшихся. Такая модель подходит для демонстрации регулярной ежемесячной услуги, но не для сезонных покупок.
Модель упрощает реальные кривые удержания до постоянного коэффициента между месяцами; M0 = 100%. Дополнительные расходы на инициативы удержания, дисконтирование, налоги, реактивация и изменение маржи не включены. Разница результатов — потенциальная валовая выгода, а не гарантированная прибыль.
Допустим, модель показывает потенциальный прирост маржинального дохода когорты на 800 000 ₽. Это не означает, что можно сразу потратить 800 000 ₽ на программу лояльности.
Сначала нужно выяснить, какие действия способны повлиять на уход клиентов, сколько они стоят и насколько вероятно достижение нового удержания. Затем вычесть расходы программы, проверить сроки поступления денег и сопоставить прогноз с фактическими данными новых когорт.
Одинаковая стоимость первой покупки не означает одинаковую экономику клиентов. Источники могут различаться по реальной потребности, ценовой чувствительности, риску отказа, вероятности повторной покупки и стоимости обслуживания.
Представим два канала, каждый привёл 200 покупателей. В первый месяц их поведение одинаково. Но через полгода доля активных покупателей различается:
| Возраст | Канал А | Канал Б |
|---|---|---|
| M0 | 200 из 200 — 100% | 200 из 200 — 100% |
| M1 | 140 — 70% | 170 — 85% |
| M3 | 90 — 45% | 130 — 65% |
| M6 | 50 — 25% | 100 — 50% |
Канал Б приводит более устойчивую клиентскую базу — по крайней мере, в этом примере. Однако причинный вывод «реклама Б удерживает лучше» преждевременен: возможно, она привлекает другой продуктовый сегмент, клиентов с более высокой платёжеспособностью или аудиторию в другом регионе.
Если есть возможность, сначала сравнивайте когорты одинакового сегмента и первого продукта. Это позволит хотя бы частично отделить вклад канала от характеристик аудитории.
Практический вывод: канал с более дорогими заявками или клиентами может быть более прибыльным в долгосрочном периоде. Но ценность этого вывода появляется только после расчёта маржинального результата на одинаковом возрасте клиента.
Когортная таблица обнаруживает проблему, но не объясняет её автоматически. Чтобы перейти от диагноза к решению, нужно найти момент, после которого клиент перестаёт получать ценность или готов платить.
Клиенты активно покупают первый раз, но почти не возвращаются в следующий период. Возможные причины: реклама сформировала неверные ожидания, обещанная ценность не реализована, первый опыт неудобен, продукт не соответствует аудитории.
Что проверить: срок от продажи до первого полезного результата, причины обращений в поддержку, качество работы на первом заказе, долю отказов и возвратов, содержание рекламных обещаний.
Это может быть связано с окончанием скидки или пилотного тарифа, завершением естественного срока потребления, неудобным продлением, накоплением проблем обслуживания или появлением конкурента.
Что проверить: условия договора, изменение цены, даты продления, историю использования, повторяющиеся претензии и причины отказа именно на проблемном возрасте.
Возможны рост себестоимости, расширение скидок, дорогие обращения в поддержку, снижение среднего чека или переход на менее маржинальные продукты.
Что проверить: маржинальный доход по возрасту когорты, количество обращений в поддержку, структуру покупок и фактические затраты на обслуживание.
«Когорта M1 снизилась. Нужно срочно запустить больше CRM-рассылок».
«В новых когортах выросла доля отмен после первого использования. Сравним обещания рекламы, исполнение услуги и причины отказов».
Хорошая практика — регулярно выбирать несколько десятков клиентов из проблемных когорт и разбирать их путь до отказа: что обещали, что произошло при покупке, какой результат был получен, почему отношения прервались. Количественный анализ указывает место проблемы, а качественное исследование помогает формулировать проверяемые причины.
Для компаний с повторяющейся контрактной выручкой важно различать удержание количества клиентов и удержание выручки. Один крупный заказчик может увеличить договор, компенсируя потерю нескольких небольших.
Допустим, на начало периода существующие клиенты приносили 1 000 000 ₽ регулярной выручки. Затем часть клиентов ушла, часть уменьшила тариф, а остальные расширили договоры.
| Изменение исходной клиентской базы | Сумма |
|---|---|
| Регулярная выручка на начало периода | 1 000 000 ₽ |
| Потери из-за полностью ушедших клиентов | −100 000 ₽ |
| Сокращение покупок действующих клиентов | −50 000 ₽ |
| Расширение закупок действующих клиентов | +200 000 ₽ |
| Выручка той же исходной базы на конец периода | 1 050 000 ₽ |
(1 000 000 − 100 000 − 50 000) / 1 000 000. Рост контрактов не учитывается.
(1 000 000 − 100 000 − 50 000 + 200 000) / 1 000 000.
NRR выше 100% означает, что исходная база в целом увеличила регулярную выручку без новых клиентов. Но GRR 85% показывает существенные валовые потери. Компания может быть зависима от нескольких крупных расширений и одновременно терять большое количество небольших клиентов.
Для модели с разовыми проектами эти показатели нельзя механически называть MRR или NRR: там обычно лучше отслеживать повторные контракты, маржинальную выручку по исходным клиентам и долю компаний, совершивших новую покупку за установленный период.
Для начального анализа не требуется покупка отдельной платформы. Нужна выгрузка из CRM или учётной системы с устойчивыми идентификаторами и датами. В простом варианте достаточно таблицы оплаченных заказов.
| Поле | Пример | Для чего нужно |
|---|---|---|
| client_id | COMPANY-0142 | Не считать одну компанию несколько раз |
| Дата оплаты | 2026-05-17 | Определить период покупки |
| Сумма без НДС (при выбранной логике учёта) | 90 000 ₽ | Рассчитать сопоставимую выручку |
| Прямые затраты | 55 000 ₽ | Получить маржинальный доход |
| Продукт / канал | Сервис / поиск | Разделить сегменты и источники |
Дополнительно полезны даты заключения и окончания договора, статус выполнения, сумма и дата возврата, расходы на обслуживание, сегмент клиента и стоимость привлечения.
Связать заказы с единым client_id. Для B2B решить, что считать клиентом: юридическое лицо, группу компаний или обособленное подразделение — и зафиксировать правило.
Для каждого client_id определить минимальную дату оплаты. Её месяц становится месяцем входа в когорту.
Возраст в месяцах = разница календарных месяцев между датой покупки и первой покупкой. M0 — месяц первой оплаты.
Первая: количество уникальных активных клиентов из каждой когорты по возрастам. Вторая: накопленный маржинальный доход на клиента по тем же возрастам.
Добавить стоимость привлечения по исходному каналу и сравнить результаты на одном горизонте, выделив продукты и сегменты.
При использовании даты оплаты «возраст» измеряется по календарным месяцам, а не по точным интервалам в 30 дней. Это допустимо, если определение одинаково для всех. Для бизнеса с недельным циклом удобнее возраст в неделях.
Первую версию можно построить в Excel или Google Sheets. В сложной компании лучше автоматизировать расчёт, но сперва важнее добиться воспроизводимости: два аналитика должны получать одинаковый результат из одной выгрузки.
Снижение retention — повод начать проверку, а не команда немедленно увеличивать рекламный бюджет или запускать скидки. Последовательность действий должна зависеть от того, в каком месте ухудшается экономика.
| Что обнаружили | Что проверить | Какое решение возможно |
|---|---|---|
| Падает M1 сразу после первой покупки | Обещания рекламы, первый опыт, скорость получения ценности | Исправить продажу, выполнение или адаптацию клиента |
| Становится больше дешёвых клиентов, но они быстро уходят | Каналы, сегменты, условия первого заказа | Изменить медиамикс и критерии качества привлечения |
| Удержание не падает, но маржа снижается | Себестоимость, скидки, расходы на поддержку | Изменить цены, сервисную модель или продукт |
| Клиенты уходят перед продлением | Изменение цены, результаты пилота, договор, конкурент | Проверить продукт, поддержку и процесс продления |
| Частота повторных покупок падает | Естественный цикл потребления, ассортимент, наличие товара | Проверить спрос, ассортимент и момент предложения |
Выбрать единицу клиента, событие первой покупки и период наблюдения. Сформировать минимум шесть сопоставимых когорт и проверить размеры групп.
Сравнить один и тот же возраст по когортам. Разделить новые когорты по продуктам, каналам и сегментам. Проверить изменения состава клиентов.
Разобрать конкретные отказы, записи продаж, обращения в поддержку, сроки выполнения. Сформулировать две-три гипотезы, которые можно проверить.
Определить ответственного, стоимость теста, ожидаемый прирост маржинального дохода и контрольные показатели. Первые результаты измерять по мере созревания новых когорт.
Важное ограничение: четыре недели достаточно для первоначальной диагностики и запуска проверки, но недостаточно для доказательства роста удержания на горизонте шести или двенадцати месяцев. Молодым когортам ещё предстоит прожить эти месяцы.
Не надо сразу раздавать скидки всем уходящим клиентам. Скидка может удержать покупателей, которые и так остались бы, и одновременно снизить маржу. Не следует также сводить любую проблему удержания к email-рассылкам и CRM: причиной может быть сам продукт, неудобная логистика, работа менеджера или невыполненное обещание.
И наконец, не стоит оценивать программу удержания только по проценту возвратов. Считайте дополнительный маржинальный доход после расходов программы и проверяйте, не произошло ли простое перераспределение покупок по времени.
Выручка и количество заказов отвечают на вопрос «сколько мы продали сейчас». Когортный анализ добавляет другой вопрос: «что происходит с клиентами после первой продажи и становится ли каждая новая группа экономически качественнее предыдущей?»
Если соединить эти ответы с маржинальным доходом, CAC и сроком окупаемости, аналитика превращается в основу решений: какие продукты менять, какие каналы масштабировать и в каком месте бизнес теряет будущую прибыль.
Алексей Черныш
Все примеры и расчёты на этой странице учебные. Они иллюстрируют управленческие методы, но не являются результатами конкретных клиентских проектов.