B2BPRO.KZ | Рекламное агентство в Алматы

Шаблон расчета CPL, CAC и ROMI в таблице: пример на рекламном бюджете 100 000 тг

Обложка: Окупилась ли реклама? Стеклянные воронки, через которые шарики-заявки превращаются в одну зеленую монету-клиента, расчет CPL, CAC и ROMI

Чтобы посчитать CPL, CAC и ROMI в таблице, хватит трех листов: расходы по каналам, лиды со статусом и суммой сделки, сводка с формулами. CPL равен расходу, деленному на число заявок, CAC равен расходу на одного оплатившего клиента, ROMI показывает, сколько валовой прибыли вернул каждый вложенный тенге. Ниже шаблон и разбор на бюджете 100 000 тг.

Часто бывает так: подрядчик присылает отчет, где есть клики, CTR и стоимость заявки, а руководитель не может ответить на простой вопрос, окупились ли эти 100 000 тг. Клики живут в рекламном кабинете, заявки в почте или CRM, оплаты у бухгалтера. Таблица ниже сводит эти три источника в одну строку на каждый канал.

Что такое CPL, CAC и ROMI и чем они отличаются

Эти три метрики отвечают на разные вопросы, и путать их опасно: дешевая заявка еще не означает дешевого клиента. Чтобы в формулах не было разночтений, договоримся об определениях.

CPL (cost per lead) — это стоимость одного обращения: расход на рекламу, деленный на количество заявок за тот же период. Заявкой считается любое обращение, которое попало к менеджеру: форма на сайте, звонок, сообщение в мессенджере.

CAC (customer acquisition cost) — это стоимость привлечения одного оплатившего клиента: все затраты на привлечение, деленные на число новых клиентов. Заявка, которая не дошла до оплаты, в знаменатель не попадает.

ROMI (return on marketing investment) — это окупаемость маркетинговых вложений в процентах: валовая прибыль от привлеченных клиентов минус затраты на маркетинг, деленная на эти затраты. ROMI 0% означает, что реклама вернула ровно столько, сколько стоила. Отрицательный ROMI означает убыток.

Метрика Формула На какой вопрос отвечает Кто смотрит
CPL Расход / Заявки Сколько стоит одно обращение Маркетолог, подрядчик по рекламе
CAC Затраты на привлечение / Новые клиенты Сколько стоит один покупатель Руководитель отдела продаж, собственник
ROMI (Валовая прибыль — Затраты) / Затраты x 100% Заработали мы на рекламе или потеряли Собственник, финансовый директор
ROAS Выручка / Расход x 100% Сколько выручки принес тенге рекламы Интернет-магазины, рекламные кабинеты

ROAS мы добавили в таблицу для полноты: его показывают рекламные системы, и его часто путают с ROMI. Разница в том, что ROAS считается от выручки, а ROMI от прибыли. Для бизнеса с маржой 30-40% ROAS 300% может означать убыток, и это главный повод не принимать красивую цифру из кабинета за окупаемость.

Как устроен шаблон расчета окупаемости рекламы

Шаблон состоит из трех листов, и каждый заполняется из своего источника. Так данные не смешиваются, а ошибку легко найти: если CAC выглядит странно, вы сразу видите, в каком листе искать.

  1. Лист «Расходы». Колонки: дата, канал, кампания, сумма в тенге. Сюда раз в неделю переносятся расходы из Google Ads, Яндекс Директа, рекламного кабинета Meta. Если подрядчик выставляет счет с НДС, договоритесь заранее, какую сумму вы вносите: с налогом или без. Главное, чтобы правило было одно для всех каналов.
  2. Лист «Лиды». Колонки: дата обращения, канал, номер заявки или имя клиента, статус («новый», «в работе», «отказ», «оплачено»), сумма оплаты. Источник: CRM или журнал заявок. Канал должен называться так же, как на листе «Расходы», буква в букву, иначе формулы его не найдут.
  3. Лист «Сводка». По строке на канал и итоговая строка. Здесь ничего не вводится руками, кроме маржинальности: все остальное считают формулы.

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

Какие формулы нужны в таблице

Для всей сводки достаточно двух функций: суммирования по условиям и обработки ошибки деления на ноль. Обе есть и в Google Таблицах, и в Excel.

Функция СУММЕСЛИМН (SUMIFS) складывает значения, которые подходят под одно или несколько условий. Синтаксис и примеры есть в справке Google Таблиц по функции СУММЕСЛИМН. Функция ЕСЛИОШИБКА (IFERROR) возвращает запасное значение, если в формуле возникла ошибка, например деление на ноль в канале, где еще нет продаж. Ее описание есть в справке Google Таблиц по функции ЕСЛИОШИБКА.

Колонки листа «Сводка» и формулы для строки 2 (канал записан в ячейке A2). Разделитель аргументов в примерах точка с запятой: так формулы вводятся в таблицах с российскими региональными настройками.

Колонка Что считает Формула
B Расход Сумма расходов канала за период =SUMIFS(Расходы!D:D; Расходы!B:B; A2)
C Заявки Число обращений из канала =COUNTIFS(Лиды!B:B; A2)
D Клиенты Число оплативших =COUNTIFS(Лиды!B:B; A2; Лиды!D:D; «оплачено»)
E Выручка Сумма оплат =SUMIFS(Лиды!E:E; Лиды!B:B; A2; Лиды!D:D; «оплачено»)
F Маржа Доля валовой прибыли в выручке вводится вручную, например 40%
G Валовая прибыль Выручка x Маржа =E2*F2
H CPL Расход на заявку =IFERROR(B2/C2; «»)
I CAC Расход на клиента =IFERROR(B2/D2; «»)
J ROMI Окупаемость =IFERROR((G2-B2)/B2; «»)

В Google Таблицах английские названия функций работают при любом языке интерфейса. В русской версии Excel формулу придется писать с локальными именами функций, например СУММЕСЛИМН и ЕСЛИОШИБКА. Колонку J отформатируйте как процент, колонки B, E, G, H, I как число без копеек: тиыны в отчете для руководителя только мешают читать.

Отдельно стоит подумать про фильтр по датам. Самый простой вариант: держать по файлу или по набору листов на каждый месяц. Вариант удобнее: добавить в SUMIFS и COUNTIFS еще два условия по колонке даты (больше или равно первому числу месяца, меньше первого числа следующего) и вынести эти даты в две ячейки вверху сводки. Тогда период меняется одной правкой.

Как посчитать CPL, CAC и ROMI на бюджете 100 000 тг: пример

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

Исходные данные за месяц. Бюджет 100 000 тг поделен между двумя каналами: 60 000 тг в контекстную рекламу Google Ads и 40 000 тг в таргет Instagram. Средний чек 90 000 тг, валовая маржа 40%, то есть с каждой продажи компании остается 36 000 тг до вычета расходов на рекламу.

Канал Расход, тг Заявки Клиенты Выручка, тг Валовая прибыль, тг CPL, тг CAC, тг ROMI
Google Ads 60 000 30 4 360 000 144 000 2 000 15 000 140%
Instagram 40 000 20 2 180 000 72 000 2 000 20 000 80%
Итого 100 000 50 6 540 000 216 000 2 000 16 667 116%

Проверим итоговую строку руками. CPL: 100 000 / 50 = 2 000 тг. CAC: 100 000 / 6 = 16 667 тг. Валовая прибыль: 540 000 x 40% = 216 000 тг. ROMI: (216 000 — 100 000) / 100 000 = 116%. Реклама окупилась и принесла сверху 116 000 тг валовой прибыли.

У обоих каналов одинаковый CPL, 2 000 тг. Если смотреть только на стоимость заявки, каналы равны, и бюджет логично делить поровну. Но заявки из Google Ads превращаются в оплату чаще: 4 клиента из 30 против 2 из 20. Поэтому CAC в контексте на 5 000 тг ниже, а ROMI почти вдвое выше. Именно ради этой разницы таблицу и стоит вести до колонки «Клиенты», а не останавливаться на заявках.

При этом вывод «отключить Instagram» из этих цифр не следует. ROMI 80% тоже положительный, канал зарабатывает. Полезнее спросить, куда добавить следующие 20 000 тг. И здесь важно помнить, что при росте бюджета CPL обычно растет, поэтому решение проверяют следующим месяцем, а не экстраполируют линейно.

Какие затраты включать в CAC

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

Добавим в пример то, что обычно остается за кадром. Допустим, ведение рекламы подрядчиком стоит 60 000 тг в месяц, а часть зарплаты менеджера, который обрабатывает именно рекламные заявки, оценивается в 40 000 тг. Тогда затраты на привлечение равны 200 000 тг, а не 100 000.

Показатель Только рекламный бюджет Полные затраты на привлечение
Затраты, тг 100 000 200 000
Клиенты 6 6
CAC, тг 16 667 33 333
ROMI 116% 8%

ROMI с полными затратами: (216 000 — 200 000) / 200 000 = 8%. Реклама по-прежнему в плюсе, но запас почти исчерпан. Любое удорожание клика переведет ее в минус. Эту цифру собственник должен видеть, даже если она неприятная.

Чтобы не спорить каждый месяц, договоритесь о составе затрат один раз и запишите его в отдельную ячейку-примечание на листе «Сводка». Типичный состав полного CAC: рекламный бюджет, оплата подрядчика или штатного маркетолога, сервисы (коллтрекинг, конструктор форм, сервисы рассылок), доля времени менеджеров, которые работают с новыми заявками. Аренду офиса и бухгалтерию обычно не включают: эти расходы не зависят от рекламы.

Сколько можно платить за заявку и за клиента

Предельный CAC равен валовой прибыли с одного клиента: если привлечение стоит дороже, каждая продажа убыточна. В нашем примере это 90 000 x 40% = 36 000 тг. Полный CAC 33 333 тг стоит очень близко к этой границе, поэтому ROMI всего 8%.

Из предельного CAC выводится предельный CPL: его умножают на конверсию заявки в оплату. У нас 6 клиентов из 50 заявок, конверсия 12%. Значит, заявка не должна стоить дороже 36 000 x 12% = 4 320 тг. Добавьте эти две строки в сводку отдельными ячейками:

  1. Предельный CAC: =средний_чек * маржа.
  2. Конверсия в оплату: =клиенты / заявки.
  3. Предельный CPL: =предельный_CAC * конверсия.

Эта цифра полезна в разговоре с подрядчиком. Вместо «сделайте заявки дешевле» вы ставите задачу: CPL не выше 3 000 тг при сохранении конверсии в оплату. С запасом от предела в 4 320 тг остается пространство на рост ставок.

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

Как связать таблицу с рекламными кабинетами и CRM

Таблица считает правильно ровно настолько, насколько правильно в нее попадает канал каждой заявки. Это самое слабое место, и на проектах B2BPRO.KZ мы чаще всего видим именно его: расходы разнесены аккуратно, а у трети заявок в колонке «канал» стоит «не знаю» или «звонок».

Что помогает навести порядок:

  • UTM-метки во всех рекламных ссылках и передача их в форму на сайте, чтобы канал записывался автоматически, а не со слов клиента.
  • Подменные номера телефона по каналам, если значимая часть клиентов звонит.
  • Обязательное поле «Источник» в CRM, без которого менеджер не может перевести заявку дальше.
  • Одинаковые названия каналов в CRM и в рекламном отчете.

Рекламные системы тоже умеют считать часть этих показателей, если передать им данные о конверсиях. В Google Ads стратегия «Целевая цена за конверсию» оптимизирует ставки под заданную стоимость конверсии, это видно из справки Google Рекламы о стратегии «Целевая цена за конверсию». Стратегия «Целевая рентабельность инвестиций в рекламу» требует, чтобы для конверсий была задана ценность, как сказано в справке о стратегии «Целевая рентабельность инвестиций в рекламу». Но кабинет видит только свой канал и не знает о марже и зарплате менеджера, поэтому сводную таблицу он не заменяет.

Когда таблица перестает справляться (каналов больше пяти, заявок сотни в месяц, данные переносятся по два часа в неделю), расчет имеет смысл перенести в CRM. Как посчитать стоимость клиента по стадиям воронки прямо в Битрикс24, описано в статье о стоимости сделки по воронке в Битрикс24.

Если вы хотите, чтобы реклама сразу запускалась с правильной разметкой и отчетом до оплаты, а не до заявки, можно заказать настройку контекстной рекламы с учетом окупаемости: мы начинаем с того, что договариваемся о формуле CAC и ROMI, и только потом настраиваем кампании.

Частые ошибки при расчете ROMI в таблице

Самая частая ошибка: считать ROMI от выручки, а не от валовой прибыли. В нашем примере это дало бы (540 000 — 100 000) / 100 000 = 440% вместо 116%. Разница в четыре раза, и руководитель, который увидит 440%, решит, что бюджет можно смело удваивать.

Остальные ошибки, которые встречаются регулярно:

  1. Разные периоды в числителе и знаменателе. Расход за октябрь делят на оплаты за октябрь, хотя половина октябрьских оплат пришла из сентябрьских заявок. Для короткого цикла сделки это терпимо, для длинного нужен когортный расчет.
  2. Повторные клиенты в числе новых. Постоянный клиент, который зашел по рекламной ссылке, попадает в CAC как новый и занижает его. Отмечайте в листе «Лиды», первая это покупка или повторная.
  3. Неоплаченные сделки в выручке. В колонку E попадают суммы со статусом «счет выставлен». Считайте только фактические оплаты, иначе отказ клиента через неделю испортит прошлый отчет.
  4. Бюджет с НДС в одном канале и без НДС в другом. Разница в 16% искажает сравнение каналов. Правило должно быть одно.
  5. Возвраты и отмены. Если клиент вернул деньги, строку в листе «Лиды» нужно перевести в статус «возврат», а не удалить: так видно, сколько таких случаев дает каждый канал.

Последнее замечание касается маржи. Если в компании несколько направлений с разной маржинальностью, одна цифра 40% для всех исказит картину. Добавьте колонку «направление» в лист «Лиды» и считайте валовую прибыль по каждой продаже отдельно, а в сводке суммируйте уже прибыль.

Как пользоваться шаблоном каждый месяц

На практике ведение такой таблицы занимает час-полтора в месяц, если CRM и кабинеты настроены. Удобный ритм выглядит так.

  1. Первого числа выгрузите расходы за прошлый месяц из всех рекламных кабинетов и внесите их на лист «Расходы».
  2. Выгрузите из CRM заявки за месяц с каналом, статусом и суммой оплаты, вставьте на лист «Лиды».
  3. Проверьте, что у каждой заявки заполнен канал. Пустые строки разберите с менеджерами сразу, через месяц никто уже не вспомнит.
  4. Посмотрите сводку: CPL, CAC и ROMI по каналам рядом с предельными значениями.
  5. Решите по каждому каналу: добавить бюджет, оставить или сократить. Запишите решение в примечание, чтобы через месяц сравнить ожидание и результат.

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

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

Как посчитать CAC, если у меня нет CRM?

CAC можно посчитать и без CRM, если вести журнал заявок в той же таблице. Записывайте каждое обращение с датой, каналом и статусом, а при оплате ставьте сумму. В конце месяца разделите затраты на привлечение на число новых оплативших клиентов. Главное условие: канал записывается в момент обращения, а не по памяти в конце месяца.

Какой ROMI считается хорошим?

Хорошим считается любой ROMI выше нуля с запасом на рост цены клика, но единого норматива нет. Для услуг с маржой 30-50% ROMI ниже 20-30% по полным затратам обычно означает, что канал работает на грани и любое удорожание сделает его убыточным. Сравнивайте ROMI каналов между собой и со своей историей, а не с цифрами из чужих кейсов.

Чем ROMI отличается от ROAS?

ROMI считается от валовой прибыли, а ROAS от выручки. ROAS равен выручке, деленной на рекламный расход, и его показывают рекламные кабинеты. ROMI вычитает из прибыли затраты на маркетинг и показывает, заработала ли компания. При марже 40% ROAS 250% соответствует ROMI 0%: выручки много, а денег реклама не принесла.

Можно ли считать CPL и CAC в одной таблице для разных городов Казахстана?

Да, для этого в листы «Расходы» и «Лиды» добавляют колонку «город» и еще одно условие в формулы SUMIFS и COUNTIFS. Так в одной сводке видно, что заявка в Алматы и в Астане стоит по-разному. Важно, чтобы рекламные кампании тоже были разделены по городам, иначе расход нельзя будет честно разнести.

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