
Ключевые метрики маркетплейсов: что реально важно продавцу Ozon, Wildberries и Яндекс.Маркет
28.01.2026
2 мин
Статьи

Егор Дёмин
Аналитик данных с опытом автоматизации маркетинговой аналитики. Специализируется на работе с рекламными системами, настройке сквозной аналитики и разработке автоматизированных отчётов. Использует Python и SQL для обработки данных — от сбора статистики через API до визуализации в различных BI-системах. Разрабатывает интеллектуальные Telegram-боты с интеграцией нейросетей и подключением к различным базам данных.
- Опыт работы:
- 3 года
Метрики маркетплейсов могут выглядеть неплохо, а денег почему‑то больше не становится — знакомо. На маркетплейсах так и бывает: заказы есть, а маржа тает. Комиссии, логистика, скидки, возвраты, реклама — и итог не сходится. Эта статья — про метрики маркетплейсов, которые реально помогают управлять продажами на Ozon, Wildberries и Яндекс.Маркет. Не полный справочник показателей из кабинетов, а базовый набор, который отвечает на вопросы бизнеса: где теряем деньги, что мешает расти, какие SKU (идентификаторы товаров) усиливать, а какие — тормозить, и как свести продажи с рекламой и внешним трафиком. Если вы строите отчет по маркетплейсам, логика ниже — хорошая база. Как минимум это помогает связать витрину метрик с реальными деньгами (в том числе в рамках сквозной аналитики). Дорогие читатели и пользователи платформы StreamMyData! Хотим пригласить вас в наш телеграм канал, в котором публикуются важные новости, обновления, статьи и кейсы.
Основная логика: 3 блока метрик
Чтобы не тонуть в показателях, удобно держать в голове три блока:
Спрос и карточка (видимость → интерес → заказ)
Операционка (наличие → доставка → отмены/возвраты)
Деньги (маржа с учётом комиссии → реклама → прибыль)
Если у вас нет третьего блока, вы можете расти по выручке и при этом терять прибыль. Ниже — метрики по каждому блоку. Названия в кабинетах могут отличаться (и формулы тоже), но смысл — одинаковый. В любом отчёте важно не спорить, как именно это названо на площадке, а договориться о единой витрине метрик. Диагностируйте проблемные SKU и операционные сбои
Спрос и карточка: что происходит до заказа
Показы
Показы — это сколько раз товар/предложение увидели в поиске, каталоге и рекомендациях. Если показы падают, это часто не про спрос, а про то, что карточка стала менее конкурентной: цена, наличие, скорость доставки, рейтинг, конкуренты. Смотреть лучше в динамике по SKU и отдельно по органике и рекламе.
CTR (клики / показы)
CTR показывает, насколько хорошо товар “цепляет” в выдаче: фото, цена, название, рейтинг, доставка. Типовая проблема — показы есть, а CTR падает: товар видят, но не выбирают.
Просмотры карточки
Просмотры карточки — это уже тёплый интерес. Если просмотров много, а заказов мало, обычно проблема внутри карточки или в условиях покупки (цена, доставка, отзывы, комплектация).
Добавления в корзину и конверсия в корзину
Добавления в корзину и конверсия в корзину — быстрый индикатор интереса. Часто это реагирует на изменения быстрее, чем заказы.
Конверсия в заказ
Конверсию в заказ обычно считают как заказы / просмотры (или / визиты — зависит от того, что у вас в данных). Важно помнить: высокая конверсия сама по себе ещё не гарантирует хороший результат — дальше решают выкуп, возвраты и экономика.
BuyBox и доля выигрыша
BuyBox — это выделенное предложение в карточке товара, из которого покупатель чаще всего добавляет товар в корзину одной кнопкой. А метрика, которая реально помогает в аналитике, — доля выигрыша BuyBox: какой процент времени или показов ваше предложение было главным в карточке. Площадки не раскрывают точную формулу, но на практике на выигрыш BuyBox почти всегда влияют цена (в том числе финальная с доставкой), наличие, скорость доставки/склады и рейтинг/отзывы. Если прямой метрики BuyBox у вас нет, в отчёте можно считать близкие по смыслу доли: долю ваших заказов по SKU на площадке (если есть общий спрос) или долю показов/кликов по вашему предложению. Чтобы автоматически забирать эти метрики в свою базу, можно использовать готовые коннекторы: Wildberries (автоматизация выгрузки Wildberries) и Яндекс.Маркет (выгрузка из Яндекс Маркета).
Операционка: где ломается продажа после заказа
Наличие и OOS
Отсутствие товара режет показы и делает рекламу бессмысленной: вы платите за трафик, а товар недоступен. Если есть история спроса, полезно оценивать упущенную выручку из‑за OOS (out of stock, "нет в наличии") хотя бы прогнозно.
Оборачиваемость / дни запаса
Оборачиваемость и дни запаса — это баланс между риском OOS и переплатой за хранение. Чем сильнее сезонность и чем длиннее поставка, тем важнее держать этот показатель под контролем.
Отмены
Отмены часто сигнализируют об ошибках остатков, сборки, сроков и пересорта. Смысл смотреть их в разрезе причин, складов/регионов и SKU: тогда видно, где именно ломается процесс.
Доля покупаемости / процент выкупа
Это один из самых важных показателей. Особенно в связке с рекламой.
Простая формула для отчёта:
buyout_rate = выкупленные_заказы / все_заказы
У WB метрика процент выкупа — базовая, и её обычно смотрят в аналитике/воронке продавца. Официальная справка по отчёту воронки: seller.wildberries.ru — Sales funnel report.
Возвраты и rate возврата
С возвратами часто ошибаются: это не просто минус выручка. Это ещё и обратная логистика, уценка/брак и замороженный оборот.
Простой показатель:
return_rate = возвраты / выкупленные_заказы (или / заказы — главное договориться)
Самая полезная детализация — причина возврата + SKU + партия/поставщик (если есть).
Чтобы автоматически забирать продажи и возвраты в свою базу, можно использовать готовые коннекторы: Ozon Seller (выгрузка данных OZON Seller) и Wildberries (автоматизация выгрузки Wildberries).
Деньги: маржа, комиссия, логистика, скидки, реклама
Выручка, заказы, средний чек
Это база. Но без затрат это половина картины.
Комиссия маркетплейса и услуги
В отчёте важно разнести затраты по понятным корзинам: комиссия (процент от продажи), логистика (доставка/последняя миля/обратная), хранение (если применимо) и прочие удержания/штрафы.
Маржа с учётом комиссии
Простая версия:
margin_1 = выручка - комиссия - себестоимость
Маржа с учётом логистики и возвратов
Более честная:
margin_2 = выручка - комиссия - логистика - себестоимость - потери_от_возвратов
Потери от возвратов можно считать по факту (если есть точные списания и обратная логистика) или нормативом (процент потерь по SKU, если факта нет).
ДРР (доля рекламных расходов), CPO, CPC/CTR
Для Ozon реклама часто живёт в Ozon Performance, и там логика классическая: показы/клики/CTR/CPC/заказы/выручка и ДРР. Если нужно свериться с терминами и доступностью полей на стороне Ozon, смотрите официальную документацию Ozon API: docs.ozon.ru/api/seller/. Если вы собираете рекламные метрики Ozon в своё хранилище, полезный ориентир по подключению — выгрузка данных OZON Performance. Но ключевой нюанс: даже нормальный ДРР не гарантирует прибыль. Товар может показывать отличную конверсию в рекламе, но быть убыточным из‑за низкой маржи или высоких возвратов. Поэтому в отчёте полезно добавить ещё две производные: ad_share_of_margin (реклама / маржа, сколько рекламы съедает маржи) и TACoS (реклама / вся выручка по SKU, не только атрибутированная рекламе). Это полезная проверка: товар может показывать хороший ДРР по рекламе, но держаться только на платном трафике и быть убыточным.
Схема: как сводить метрики маркетплейсов в единый отчёт
Когда метрик много, главная задача — свести их в понятный формат, чтобы можно было сравнивать площадки между собой и быстро находить, где меняется экономика. На практике удобнее держать два уровня данных: детальный (заказы/возвраты) и агрегированный (месячная экономика).
Источники данных (маркетплейсы/реклама/себестоимость)
|
v
Детальный блок данных (заказы/товары/возвраты по дням)
- единые поля: дата, площадка, SKU, статус, сумма
|
+-----------------------> агрегирование по месяцу
(комиссия/логистика/хранение/реклама/прочее)
|
v
Финансовая сводка (месяц × площадка)
|
v
Отчёт: воронка + операционка + деньгиСмысл: вы не пытаетесь засунуть всё в одну таблицу на каждый день и SKU. Часть расходов и рекламы естественно живёт на уровне периода, так что удобнее держать и детальные строки, и итоговую сводку.
Примеры и SQL: простая витрина для отчёта
Ниже пример SQL под ClickHouse. Идея: собрать дневные факты и посчитать показатели.
1. Дневные продажи и выкупы
WITH orders AS (
SELECT
date,
marketplace,
sku,
SUM(orders_qty) AS orders_qty,
SUM(buyouts_qty) AS buyouts_qty,
SUM(gmv) AS gmv
FROM dwh.mp_orders_daily
GROUP BY 1,2,3
),
returns AS (
SELECT
date,
marketplace,
sku,
SUM(returns_qty) AS returns_qty,
SUM(returns_amount) AS returns_amount
FROM dwh.mp_returns_daily
GROUP BY 1,2,3
),
fees AS (
SELECT
date,
marketplace,
sku,
SUM(marketplace_fee) AS marketplace_fee,
SUM(logistics_cost) AS logistics_cost,
SUM(other_charges) AS other_charges
FROM dwh.mp_fees_daily
GROUP BY 1,2,3
),
ads AS (
SELECT
date,
marketplace,
sku,
SUM(ad_spend) AS ad_spend,
SUM(ad_orders_qty) AS ad_orders_qty,
SUM(ad_gmv) AS ad_gmv
FROM dwh.mp_ads_daily
GROUP BY 1,2,3
),
cost AS (
SELECT
sku,
cost_price AS cogs_per_item
FROM dwh.sku_cost
)
SELECT
o.date,
o.marketplace,
o.sku,
o.orders_qty,
o.buyouts_qty,
o.gmv,
ifNull(r.returns_qty, 0) AS returns_qty,
ifNull(r.returns_amount, 0) AS returns_amount,
ifNull(f.marketplace_fee, 0) AS marketplace_fee,
ifNull(f.logistics_cost, 0) AS logistics_cost,
ifNull(f.other_charges, 0) AS other_charges,
ifNull(a.ad_spend, 0) AS ad_spend,
ifNull(a.ad_orders_qty, 0) AS ad_orders_qty,
ifNull(a.ad_gmv, 0) AS ad_gmv,
-- KPI продавца Ozon/WB/Яндекс.Маркет: выкуп и возвраты
o.buyouts_qty / nullIf(o.orders_qty, 0) AS buyout_rate,
ifNull(r.returns_qty, 0) / nullIf(o.buyouts_qty, 0) AS return_rate,
-- Деньги (упрощённо)
(o.buyouts_qty * c.cogs_per_item) AS cogs_total,
-- Маржа до рекламы (примерная): выручка - комиссии - логистика - себестоимость - прочие удержания - возвраты
(
o.gmv
- ifNull(f.marketplace_fee, 0)
- ifNull(f.logistics_cost, 0)
- (o.buyouts_qty * c.cogs_per_item)
- ifNull(f.other_charges, 0)
- ifNull(r.returns_amount, 0)
) AS margin_before_ads,
-- ДРР (на атрибутированной выручке рекламы)
ifNull(a.ad_spend, 0) / nullIf(ifNull(a.ad_gmv, 0), 0) AS drr_ads,
-- TACoS (на всей выручке SKU)
ifNull(a.ad_spend, 0) / nullIf(o.gmv, 0) AS tacos,
-- Доля рекламы в марже (очень полезно)
ifNull(a.ad_spend, 0) / nullIf((
o.gmv
- ifNull(f.marketplace_fee, 0)
- ifNull(f.logistics_cost, 0)
- (o.buyouts_qty * c.cogs_per_item)
- ifNull(f.other_charges, 0)
- ifNull(r.returns_amount, 0)
), 0) AS ad_share_of_margin
FROM orders o
LEFT JOIN returns r
ON r.date = o.date AND r.marketplace = o.marketplace AND r.sku = o.sku
LEFT JOIN fees f
ON f.date = o.date AND f.marketplace = o.marketplace AND f.sku = o.sku
LEFT JOIN ads a
ON a.date = o.date AND a.marketplace = o.marketplace AND a.sku = o.sku
LEFT JOIN cost c
ON c.sku = o.sku;2. Пример диагностики по SKU
Сценарий: заказы растут, прибыль падает. Что проверяем в порядке важности. Сначала buyout_rate: если он упал, вы начинаете платить за логистику и возвраты. Затем return_rate: рост часто упирается в товар, карточку, упаковку и ожидания покупателя. Дальше — ad_share_of_margin: реклама может съедать маржу даже при нормальном ДРР. И отдельно смотрим, не выросли ли marketplace_fee/logistics_cost из‑за тарифов, складов или плеча доставки. Часто проблема не в ставках или креативах, а в базовых вещах: товар стал чаще возвращаться или начал ехать дольше. Попробуйте коннекторы для Wildberries, Ozon и Яндекс.Маркета
Вывод
Если выбирать самое важное, то держите в голове три вещи: воронку карточки (показы → CTR → просмотры → корзина → заказы), качество продаж (выкуп и возвраты) и деньги (маржа с учётом комиссии, логистики, возвратов и рекламы). Это и есть практичные KPI продавца Ozon, Wildberries и Яндекс.Маркет: не только сколько продали, но и сколько заработали. Главное — всегда сводить воронку к деньгам. Показатели карточки и операционки отвечают на вопрос "почему не продаётся?". Финансовые метрики — на вопрос "а стоит ли оно того?".


