Surrika

Структура прибыли по категориям за квартал

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

Продажи и ассортимент

Как считать

  1. Беру продажи за последний квартал и суммирую их по категориям.
  2. Чистую выручку считаю как выручку после скидок минус возвраты.
  3. Из чистой выручки вычитаю себестоимость, комиссию площадок и логистику.
  4. Рекламный расход распределяю между категориями пропорционально чистой выручке.
  5. Прибыль каждой категории делю на общую прибыль и получаю долю в структуре.

Расчет на выгрузках магазина

Пример посчитан на выгрузках вымышленного мебельного магазина: продажи сайта и трех маркетплейсов, реклама, сделки CRM и остатки за 2024-2025 годы.

Хочу увидеть структуру прибыли по категориям за последний квартал. Какая категория приносит больше всего прибыли и какую долю она занимает?

Прибыль по категориям за последний квартал

SQL, по которому посчитано

WITH bounds AS (
    SELECT
        date_trunc('month', max(date)) - INTERVAL '2 months' AS start_date,
        date_trunc('month', max(date)) + INTERVAL '1 month' AS end_date
    FROM sales
),
sales_agg AS (
    SELECT
        category,
        SUM(revenue - returned_revenue) AS net_revenue,
        SUM(cost_of_goods) AS cogs,
        SUM(commission) AS commission,
        SUM(logistics) AS logistics
    FROM sales, bounds
    WHERE date >= bounds.start_date AND date < bounds.end_date
    GROUP BY category
),
ads_total AS (
    SELECT SUM(cost) AS ad_cost
    FROM ads, bounds
    WHERE date >= bounds.start_date AND date < bounds.end_date
),
total_revenue AS (
    SELECT SUM(net_revenue) AS net_revenue
    FROM sales_agg
),
profit_calc AS (
    SELECT
        s.category,
        s.net_revenue,
        s.net_revenue - s.cogs - s.commission - s.logistics
            - (a.ad_cost * s.net_revenue / NULLIF(t.net_revenue, 0)) AS profit
    FROM sales_agg s
    CROSS JOIN ads_total a
    CROSS JOIN total_revenue t
)
SELECT
    category,
    round(net_revenue, 0) AS net_revenue,
    round(profit, 0) AS profit,
    round(profit / NULLIF(SUM(profit) OVER (), 0), 4) AS profit_share
FROM profit_calc
ORDER BY profit DESC
LIMIT 30

Где взять цифры для структуры прибыли по категориям

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

Почему доля категории в прибыли не совпадает с долей в выручке

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

Как читать структуру прибыли по категориям

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

Что делать с категориями с низкой долей прибыли

Сравните рентабельность категории со средней по магазину и с другими категориями. Проверьте, не тянет ли категория продажи сопутствующих товаров. Если вклад в прибыль мал, а расход рекламы высок, сократите кампании или поднимите цену. Решение по выводу категории принимайте после проверки остатков и плана продаж. Категорию с низкой прибылью можно оставить как входной товар, если она приводит покупателей к более дорогим покупкам.

Частые ошибки

Один месяц вместо квартала

По одному месяцу структура прибыли скачет из-за сезонности и акций. Для сравнения категорий берите квартал или год на одном наборе ставок.

Разные ставки в одном сравнении

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

Категория кампании вместо категории продажи

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

Вопросы

Почему прибыль по категориям не равна прибыли в отчете о финансовых результатах?

Структура показывает вклад категорий после переменных расходов. Постоянные расходы и налоги в ней не распределены.

Можно ли сравнивать структуру прибыли за квартал и за год?

Да, если считать каждый период отдельно. Год сглаживает сезонность, квартал точнее показывает текущие ставки и расходы.

Посчитайте это на своих выгрузках

Бросьте выгрузки на доску Surrika и задайте вопрос обычными словами. Ответ придет графиком, а под ним будет SQL, по которому он посчитан.

14 дней бесплатно, карта не нужна.

По теме

Все задачи