Как посчитать GMROI: формула рентабельности товарных запасов

GMROI простыми словами: формула валовой прибыли к среднему запасу, расчёт по категории и SKU, сравнение отделов и решения по закупке в рознице.

Как посчитать GMROI: формула рентабельности товарных запасов

Коротко: за 12 месяцев снимите выручку, COGS и средний запас @cost, посчитайте валовую прибыль в ₽ и разделите на запас. Выше 1 - маржа покрыла остаток; ниже 1 - запас тяжёлый. Сравните от 5 категорий в 1 таблице: стоп-закупка, markdown или сжатие матрицы.

GMROI - это отдача валовой маржи с денег в товарном запасе перепродажи (Gross Margin Return on Investment). BrightBoard - IMS и помощник закупок в ритейле: ниже формула, расчёт по категории и SKU и решения по ассортименту, не SRM.

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

Что такое GMROI простыми словами

Это метрика продуктивности товарного запаса в коммерческой рознице и опте: связка валовой прибыли и среднего остатка. Не путайте с голым ROI по проекту и не сводите всё к оборачиваемости в днях. Оборачиваемость говорит, как быстро уходит товар; этот показатель добавляет, сколько маржи вы снимаете с денег, лежащих в остатке.

Считайте его по сети, отделу, категории или одному SKU перепродажи. Чем уже срез, тем понятнее решение: где избыток, где «пустая» высокая маржа, где стоит пересмотреть закупку у поставщика.

Делайте: объясняйте команде показатель как «маржа к среднему запасу», а не как абстрактный KPI. Не делайте: не объявляйте отдел успешным только по выручке или только по проценту наценки.

Формула GMROI: какие данные брать в расчёт

Базовая формула простая:

Показатель = валовая прибыль (₽) ÷ средний запас по себестоимости (₽)

Валовая прибыль = выручка − себестоимость продаж (COGS) за выбранный период. Средний запас обычно считают как (остаток на начало + остаток на конец) ÷ 2 или как среднее по нескольким срезам за тот же период. Единица знаменателя - себестоимость, не розничная цена полки.

Мини-пример (учебные цифры, не норматив сети). Категория за 12 месяцев: выручка 10 000 000 ₽, COGS 6 500 000 ₽, валовая прибыль 3 500 000 ₽, средний запас @cost 2 000 000 ₽. Результат: 3 500 000 ÷ 2 000 000 = 1,75. На каждый рубль среднего запаса категория дала 1,75 ₽ валовой прибыли.

ОбъектВыручка, ₽COGS, ₽Валовая прибыль, ₽Средний запас @cost, ₽РезультатКомментарий
Категория A10 000 0006 500 0003 500 0002 000 0001,75Маржа покрывает запас с запасом
Категория B8 000 0006 800 0001 200 0002 400 0000,50Тяжёлый остаток при слабой марже
SKU X900 000540 000360 000120 0003,00Высокая отдача на узком срезе
SKU Y600 000420 000180 000300 0000,60Кандидат на markdown / стоп-закупку

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

Чем показатель отличается от обычного ROI и оборачиваемости?

Обычный ROI часто считают по проекту, рекламе или капвложениям: прибыль к вложенным деньгам в широком смысле. Здесь в знаменателе именно товарный запас перепродажи. Оборачиваемость (turns) и запас в днях показывают скорость движения остатка, но молчат о рублях маржи.

Практическое правило чтения:

  • высокая маржа % + низкая отдача запаса → часто избыток или медленный уход;
  • скромная маржа % + высокая отдача → быстрый оборот «спасает» запас;
  • значение больше 1 значит валовая прибыль покрыла стоимость среднего запаса за период; «норма» зависит от вертикали и стратегии, чужой бенчмарк (в т.ч. цифры вроде 3,2 из зарубежных обзоров) - ориентир источников, не закон вашей сети и не SLA.

В учебном сравнении двух отделов с одинаковым средним запасом 2 000 000 ₽ отдел с валовой прибылью 6 500 000 ₽ даёт результат 3,25, а отдел с 1 500 000 ₽ - всего 0,75. Одна и та же «полка денег» работает в разы по-разному.

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

1. Посчитайте по категории и по SKU пошагово

Ниже протокол «сделайте руками» для среза перепродажи. Тот же порядок работает и для поставщика, если собираете продажи и остатки по его SKU.

  1. Выберите объект расчёта: вся сеть, отдел, категория или один SKU перепродажи.
  2. Снимите выручку и себестоимость продаж за один сопоставимый период (лучше 12 месяцев).
  3. Посчитайте валовую прибыль в рублях: выручка минус себестоимость продаж (COGS).
  4. Соберите средний запас по себестоимости за тот же период (начало + конец / 2 или среднее по срезам).
  5. Разделите валовую прибыль на средний запас: получите значение показателя.
  6. Интерпретируйте: больше 1 значит маржа покрывает стоимость запаса; норму задавайте относительно своей вертикали и медианы сети, не копируйте чужой бенчмарк как закон.
  7. Сравните категории и SKU между собой и решите: сократить избыток, пересмотреть закупку, markdown неликвида или усилить оборачиваемость.

Workflow: Данные из учёта (выручка, COGS, остатки) → расчёт по категории/SKU → сравнение отделов → решение по закупке и ассортименту → повторный замер через период

Если ведёте учёт в МойСклад, удобно выгружать остатки и продажи в одном контуре; для связки заказов и перемещений смотрите интеграцию БрайтБорд с МойСклад.

Делайте: фиксируйте период и метод среднего запаса в шапке отчёта. Не делайте: не сравнивайте строки, посчитанные на разных окнах, как будто они равны.

Почему отдел с высокой маржой может иметь низкий результат?

Потому что процент наценки не учитывает, сколько денег лежит на полке и складе. Отдел с наценкой 55% и огромным неликвидом легко проигрывает отделу с наценкой 28%, но быстрым оборотом и тонким остатком.

Типичные причины просадки:

  • крупные «выгодные» закупки впрок без плана ухода;
  • широкая матрица с хвостом SKU без продаж;
  • сезон, который уже закончился, а markdown не запускали;
  • поставщик с редкой отгрузкой, из-за которого держите страховой «бугор».

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

Делайте: ищите «тяжёлый» запас при высокой марже и наоборот. Не делайте: не защищайте отдел фразой «у нас же высокая маржа», пока не посмотрели средний остаток @cost.

Сравните отделы и поставщиков в одной таблице

Сила метрики - в сравнении похожих объектов. Выручка и маржа % сами по себе не показывают продуктивность запаса.

ОтделПродажи, ₽Маржа, %Средний запас @cost, ₽Значение показателяВывод
A12 000 000324 500 0000,85Лидер по выручке, слабая отдача запаса
B7 500 000483 800 0000,95Высокая маржа %, но запас тяжёлый
C6 800 000301 100 0001,85Средние продажи, лучшая продуктивность запаса
D4 200 00022700 0001,32Низкие продажи и маржа %, но запас работает

Тот же приём применим к поставщикам: соберите продажи и средний остаток по их SKU и сравните отдачу. Это меняет разговор с «дайте скидку» на «ваш запас у нас заморожен».

Делайте: сравнивайте похожие категории и сопоставимые периоды. Не делайте: не объявляйте победителем отдел только по выручке или только по % маржи.

Проверьте годовой и периодный расчёт

Годовой расчёт (12 месяцев прибыли к среднему запасу за год) лучше для решений по матрице и контрактам. Короткое окно (месяц, квартал) полезно для оперативного контроля, но легко врёт на сезоне: высокая маржа одного месяца на фоне раздутого сезонного остатка даст заниженную цифру, и наоборот.

ОкноЧислительЗнаменательРиск несопоставимости
12 месяцевГодовая валовая прибыльСредний запас за годНизкий, если метод среднего стабилен
1 кварталКвартальная валовая прибыльСредний запас за кварталСезон и акция искажают сравнение с годом
«Неделя × 52»Недельная маржа × 52Текущий on-hand @costБыстрый черновик; не равен полноценному году

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

Улучшите отдачу запаса: закупка, ассортимент, markdown

Цифра без действия бесполезна. После расчёта выбирайте рычаг:

  • закупка: уменьшить партию, участить поставку, пересмотреть MOQ и глубину страхового запаса;
  • ассортимент: сузить хвост SKU, усилить ядро, перераспределить остатки между точками;
  • цена и markdown: ускорить уход неликвида до того, как знаменатель «съест» сезон;
  • прогноз и аналитика: снизить систематический перезаказ; см. материалы про прогнозирование спроса и аналитику и про автоматизацию и управление закупками.

Делайте: после цифры сразу фиксируйте решение и дату повторного замера. Не делайте: не обещайте рост прибыли «от внедрения отчёта» без изменения закупки и матрицы.

BrightBoard помогает категорийщику видеть связку маржи и запаса на дашборде (20+ метрик), искать неликвиды и принимать решения по ассортименту и закупкам. Если нужен разбор на ваших данных, запишитесь на онлайн-встречу или откройте помощник закупок БрайтБорд.

FAQ

Что означает значение больше или меньше 1?

Больше 1: валовая прибыль за период покрыла стоимость среднего запаса. Меньше 1: запас «съедает» маржу, деньги в остатке работают слабо. Это порог покрытия запаса, а не гарантия чистой прибыли после аренды, ФОТ и маркетинга.

Какое значение считать хорошим в рознице?

Универсальной нормы нет: вертикаль, ценовой сегмент и стратегия (дискаунтер vs премиум) сильно двигают цифру. Ориентируйтесь на медиану своей сети и динамику топ-категорий; чужие бенчмарки из обзоров используйте только как внешний ориентир, не как KPI BrightBoard.

Как рассчитать показатель для категории или отдельного SKU?

Тот же протокол: выручка и COGS объекта → валовая прибыль ₽ → средний остаток @cost за то же окно → деление. Для SKU убедитесь, что остатки и продажи собраны в одних единицах и без «чужих» перемещений без пометки.

Чем годовой расчёт отличается от короткого периода?

Год сглаживает сезон и акции, короткое окно ловит оперативный перекос. Не сравнивайте квартал одной категории с годом другой без пересчёта. Для решений по контракту и матрице обычно берут 12 месяцев.

Чем показатель отличается от обычного ROI?

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

Что сделать дальше и что замерить

Запустите расчёт на топ-10 категориях и на хвосте SKU с подозрением на неликвид. Зафиксируйте четыре метрики на повторный срез через один полный период:

  • значение показателя по топ-категориям и проблемным SKU до и после решения;
  • доля запаса с результатом ниже 1 или ниже медианы сети;
  • средний запас @cost и валовая прибыль ₽ по тем же объектам;
  • доля неликвида и частота корректировок закупки после разбора.

Дальше - не новый отчёт ради отчёта, а конкретное действие: стоп-закупка, markdown, переброс или сжатие матрицы. Без изменения потока товара цифра сама не вырастет.

Построй системную работу с ассортиментом, закупками и неликвидом

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

Без замены учётной системы · Без обязательств после первого разбора