ROI и ROMI: что это, формулы и чем они отличаются
ROI и ROMI — показатели окупаемости вложений и маркетинга. Формулы, расчёт на примере, ROMI по каналам и почему ROMI по выручке завышает результат.
Содержание статьи
Маркетолог приносит на планёрку отчёт: реклама в поиске за квартал дала ROMI 150%, партнёрская программа — 90%. Финансовый директор спрашивает, почему тогда маржа не растёт. Оказывается, ROMI считали по выручке, а у продукта дорогая себестоимость, и «окупившийся» канал на деле работает в ноль. ROI (return on investment) — это окупаемость вложений: насколько доход от вложения превысил его стоимость, в процентах к этой стоимости. ROMI (return on marketing investment) — тот же показатель для маркетинговых расходов: сколько заработала реклама сверх того, что на неё потратили. ROI 50% значит, что вложенное вернулось и сверху пришла ещё половина.
Коротко
- ROI = (доход − вложения) / вложения × 100%. Ноль — вложения просто вернулись, минус — не вернулись.
- ROMI — частный случай ROI для маркетинга. В числителе должен стоять доход, который принесла именно реклама.
- ROMI по выручке почти всегда выше, чем по валовой прибыли. Решения о бюджете принимают по второму.
- ROMI зависит от окна: клиенты платят и после отчётного месяца. На учебной базе выручка июньских регистраций к концу августа выросла в 3,09 раза.
- ROAS — выручка, делённая на расходы. ROAS 250% и ROMI 150% по выручке — одно и то же число, записанное по-разному.
Что такое ROI простыми словами
ROI отвечает на вопрос, стоило ли вкладывать деньги. Его считают для чего угодно, что требует затрат сейчас и приносит доход потом: закупки оборудования, внедрения CRM, найма отдела продаж, запуска рекламной кампании.
Пример. Компания купила станок за 600 000 ₽. За два года он принёс 900 000 ₽ дополнительной прибыли. ROI = (900 000 − 600 000) / 600 000 = 50% за два года. Обратите внимание на «за два года»: ROI без периода несравним. 50% за два года и 50% за полгода — очень разные вложения.
В числителе ROI стоит прибыль, которую принесло вложение, а не выручка. Если станок увеличил продажи на 3 млн ₽, но на сырьё и работу ушло 2,1 млн, доход от вложения — 900 000 ₽, а не 3 млн.
ROI = (доход от вложения − вложения) / вложения × 100%Доход — прибыль, которую принесло именно это вложение, за оговорённый период.
Что такое ROMI и формула ROMI
ROMI — ROI маркетинговых расходов: рекламы, партнёрских выплат, бонусов за приглашения. На практике у него две версии, и их постоянно путают.
Версия по выручке проще: берут выручку от привлечённых клиентов и сравнивают с бюджетом. Её выдают рекламные кабинеты и сквозная аналитика, потому что выручку они видят, а себестоимость — нет. Версия по валовой прибыли вычитает из выручки себестоимость проданного: закупку товара, доставку, эквайринг, серверы. Она и показывает, заработала ли компания на рекламе.
ROMI = (выручка от маркетинга − расходы на маркетинг) / расходы на маркетинг × 100%Если в отчёте написано просто «ROMI», уточните, какая это версия: по выручке или по валовой прибыли.
Как посчитать ROMI: пример вручную
Условный пример. Интернет-магазин потратил на рекламу 200 000 ₽. Привлечённые клиенты купили на 500 000 ₽. Наценка такова, что валовая маржа — 40%: после закупки товара и доставки от каждого рубля выручки остаётся 40 копеек.
ROMI по выручке = (500 000 − 200 000) / 200 000 = 150%. Выглядит как успех. Валовая прибыль = 500 000 × 0,4 = 200 000 ₽. ROMI по валовой прибыли = (200 000 − 200 000) / 200 000 = 0%. Кампания ровно окупила себя: магазин отдал рекламе всю заработанную на этих заказах маржу.
ROMI = (валовая прибыль от маркетинга − расходы на маркетинг) / расходы на маркетинг × 100%Валовая прибыль = выручка − себестоимость проданного: закупка, доставка, эквайринг, серверы.
| Показатель | По выручке | По валовой прибыли |
|---|---|---|
| Расходы на рекламу | 200 000 ₽ | 200 000 ₽ |
| Доход от рекламы | 500 000 ₽ выручки | 200 000 ₽ валовой прибыли |
| ROMI | 150% | 0% |
| ROMI, при котором реклама в ноль | 150% | 0% |
При валовой марже m реклама окупается, когда ROMI по выручке выше (1 / m − 1) × 100%. При марже 40% это 150%, при марже 80% — 25%. Поэтому одинаковый ROMI по выручке у магазина электроники и у онлайн-сервиса означает разные вещи.
ROI и ROMI: разница, и где здесь ROAS
ROI — общий показатель для любых вложений. ROMI — его версия для маркетинга, где главная сложность не в формуле, а в том, какой доход приписать рекламе. ROAS (return on ad spend) — ещё более узкая метрика: выручка, делённая на рекламные расходы, без вычитания самих расходов.
| Метрика | Формула | Для чего | Точка «в ноль» |
|---|---|---|---|
| ROI | (доход − вложения) / вложения | любые вложения: оборудование, найм, IT-проекты | 0% |
| ROMI | (доход от маркетинга − расходы) / расходы | маркетинговый бюджет целиком или канал | 0% по прибыли |
| ROAS | выручка от рекламы / расходы на рекламу | рекламные кампании и объявления | 100% / валовая маржа: при марже 40% — 250% |
ROMI по каналам на учебной базе
В учебной базе SQL-курса — онлайн-сервис с подписками за 19, 29 и 39 долларов. У каждого пользователя записан канал привлечения, у оплат — сумма. Расходов на рекламу в базе нет, поэтому бюджеты ниже условные: 4000 долларов на поисковую рекламу, 2500 на партнёров, 2000 на бонусы за приглашения за июнь–август. Органику не берём: прямых расходов на неё в этой модели нет. Выручка — реальная, из таблицы payments.
| Канал | Платящих | Выручка, $ | Бюджет, $ (условно) | ROMI по выручке | ROMI по валовой прибыли |
|---|---|---|---|---|---|
| referral | 278 | 9 326 | 2 000 | 366,3% | 273,0% |
| partner | 138 | 4 732 | 2 500 | 89,3% | 51,4% |
| paid_search | 86 | 2 467 | 4 000 | −38,3% | −50,7% |
| Три канала | 502 | 16 525 | 8 500 | 94,4% | 55,5% |
| organic | 410 | 14 114 | — | — | — |
select u.channel,
count(distinct p.user_id) as paying_users,
sum(p.amount) as revenue
from payments as p
join users as u on u.user_id = p.user_id
group by u.channel
order by revenue desc;Что показывает таблица, а что нет
Порядок каналов при выбранных бюджетах устойчив: приглашения окупаются с запасом, поисковая реклама в минусе в обеих версиях. Но делать вывод «выключить поиск» рано, и причина не в формуле.
Поисковая реклама в базе появилась только 1 июля, а партнёры и приглашения работают с 1 июня. У пользователей поиска было меньше времени заплатить, и продлений у них меньше. Сравнивать каналы с разным сроком жизни клиентов по накопленной выручке — всё равно что сравнивать выручку магазина за три месяца и за два.
Почему ROMI зависит от окна атрибуции
Подписочный клиент платит не один раз. Если посчитать ROMI июньской рекламы 30 июня, в числитель попадут только первые оплаты. Запрос ниже берёт всех, кто зарегистрировался в июне, и показывает их выручку по месяцу оплаты.
Учебная база SQL-курса, DuckDB. Август — по 30-е число, на котором обрываются данные.
select date_trunc('month', p.paid_at) as payment_month,
sum(p.amount) as revenue,
sum(sum(p.amount)) over (order by date_trunc('month', p.paid_at)) as cumulative_revenue
from payments as p
join users as u on u.user_id = p.user_id
where u.signup_date between date '2026-06-01' and date '2026-06-30'
group by payment_month
order by payment_month;Как читать выручку когорты
За июнь июньские пользователи принесли 3983 доллара. К концу августа — 12 309, в 3,09 раза больше. В июле пришло 5548: 115 человек впервые оплатили с опозданием (2935) и 107 продлили подписку (2613). В августе было уже только 112 продлений на 2778.
ROMI той же июньской рекламы, посчитанный 30 июня и 30 августа, отличается втрое. Поэтому окно атрибуции — часть определения: «ROMI по выручке первых 90 дней после регистрации». Каналы сравнивают по одинаковому окну и только по когортам, которые это окно уже прожили.
ROMI через LTV
Когда клиенты платят месяцами и годами, ждать, пока когорта «доживёт», долго. Тогда в числитель ставят прогноз: ожидаемую валовую прибыль с клиента за всё время (LTV) × число привлечённых клиентов.
Такой ROMI отвечает на вопрос «окупится ли канал», а не «окупился ли». Его качество равно качеству прогноза LTV. Если LTV посчитан по старым когортам, а новый канал приводит людей, которые уходят быстрее, ROMI через LTV будет завышен. Проверка простая: через два-три месяца сравнить прогноз с фактической выручкой когорты.
ROMI = (LTV × привлечённые клиенты − расходы на маркетинг) / расходы на маркетинг × 100%LTV — по валовой прибыли, а не по выручке, и посчитанный для того же сегмента, откуда пришли клиенты.
Что значит отрицательный ROI
Отрицательный ROI значит, что вложения не вернулись: −38% — вернулось 62 копейки с рубля. Минимум — −100%: денег потратили, дохода ноль.
Отрицательный ROMI канала — повод разобраться, а не выключить его сразу. Проверьте окно: не слишком ли молодые когорты. Проверьте атрибуцию: не забирает ли себе продажи другой канал по последнему клику. И проверьте, не приводит ли канал клиентов, которые потом идут через органику: такие связи видны только в когортах по первому касанию.
Как понять, хороший ли ROMI
Универсального «нормального ROMI» нет: он зависит от маржи, модели оплаты, длины цикла сделки и окна. Цифры из чужих отчётов не переносятся, потому что никто не пишет, по выручке они или по прибыли и за какой срок.
Рабочие ориентиры свои. ROMI по валовой прибыли выше нуля за выбранное окно — канал окупается. Выше вашего целевого уровня — можно масштабировать. Сравнение с прошлыми периодами того же канала при том же определении показывает, стало ли лучше. И ROMI полезно держать рядом со стоимостью клиента и сроком окупаемости из unit-экономики: они отвечают на тот же вопрос с другой стороны.
Частые ошибки при расчёте ROI и ROMI
- Выручка вместо прибыли. ROMI 150% по выручке при марже 40% — это ноль.
- Разные окна у каналов. Молодой канал всегда выглядит хуже, потому что его клиенты ещё не успели заплатить.
- Двойной счёт. Каждая рекламная система приписывает себе одну и ту же продажу, и сумма ROMI по кабинетам больше, чем денег в кассе.
- Неполные расходы. В бюджет канала забывают включить зарплату специалиста, подрядчиков, креативы и бонусы, которые выплачиваются позже.
- Средний ROMI скрывает плохие кампании. 94% по трём каналам вместе складываются из +366% и −38%.
- ROI без периода. «ROI 200%» ничего не говорит, пока не сказано, за какой срок.
Что читать дальше
ROMI говорит, окупилась ли реклама. Соседние метрики объясняют, сколько стоил каждый шаг и каждый клиент.
Материалы по теме
Unit-экономика продукта: CAC, LTV и срок окупаемости
Как связать стоимость привлечения, маржинальную выручку и поведение когорт: разбираем CAC, LTV, payback period и типичные ошибки в unit-экономике.

CPA, CPC и CPM: что это, формулы и какую модель выбрать
CPA, CPC и CPM — стоимость действия, клика и тысячи показов. Формулы, связь через CTR и конверсию, разница модели оплаты и метрики, что выбрать.

CPO: что это, формула и чем отличается от CPA и CAC
CPO — стоимость одного заказа: маркетинговые расходы, делённые на число заказов. Формула, пример расчёта, отличие от CPA и CAC и безубыточный CPO.