Мира · маркетолог магазина настолок «Кубик»
На планёрке директор спросил выручку за май. Я сказала 1,76 млн, финансы 1,60, логистика 1,74. Директор спросил, кто из нас не умеет считать. Мы все считали правильно! Как сделать, чтобы такого больше не было?
Все три числа посчитаны правильно: это три разные метрики под одним именем. В уроке про факты и измерения мы спрашивали у таблицы, что значит её строка. Сегодня спросим у метрики, что значит её имя.
Три выручки за май
Все три отдела смотрели в одни и те же таблицы «Кубика»:
| кто | что считал | май 2026, ₽ |
|---|---|---|
| маркетинг | все заказы, созданные в мае, любого статуса | 1 762 495 |
| финансы | заказы мая без отменённых, минус возвраты по ним | 1 599 939 |
| логистика | заказы, доставленные в мае, по дате доставки | 1 743 400 |
Каждое число отвечает на свой вопрос. Маркетингу важно, сколько заказали после кампании, финансам сколько денег осталось, логистике сколько товара уехало за месяц. Беда начинается, когда все три называют это одним словом «выручка» и приносят на одну планёрку.
Числа отличаются не только в мае. Апрель против марта: маркетинг видит падение на 0,9%, финансы на 2,6%, логистика на 9,1%. Один и тот же месяц для одного отдела «почти как обычно», для другого «провал».
Из чего складываются расхождения
Определение метрики это набор решений. Поменяй любое, и число поменяется:
- Фильтры. Считать ли отменённые заказы: в мае их 29 на 107 199 ₽. Считать ли тестовые аккаунты: в «Кубике» их нет, а в «Пограничье» покупки тестировщиков
@studio.devмы чистили в уроке про строки. - Вычеты. Возвраты по майским заказам 55 357 ₽. Вычитать их или нет?
- Дата. Дата заказа, оплаты или доставки. Заказ 30 апреля, доставленный 3 мая, это апрель или май?
- Часовой пояс. Граница месяца по UTC или по местному времени, как в уроке про часовые пояса.
- Зерно. Средний чек на заказ или на позицию отличается в 1,7 раза, это мы видели в прошлом уроке.
Карточка метрики
Лечится это не формулой, а договором. Его записывают в словарь метрик: одна карточка на одну метрику. Вот карточка, о которой договорились в «Кубике» после планёрки.
| поле | значение |
|---|---|
| Название | Чистая выручка, net_revenue |
| Вопрос | Сколько денег принесли заказы периода |
| Формула | сумма qty * price позиций заказа минус сумма refund_rub возвратов этого заказа |
| Источник | orders, order_items, returns |
| Фильтры | заказы со статусом не cancelled |
| Дата | orders.created_at, месяц заказа по UTC, а не месяц возврата |
| Зерно | заказ: позиции и возвраты сворачиваются до заказа до соединения |
| Владелец | финансовый аналитик; формулу меняет только он, с записью в истории карточки |
| Ловушки | возвраты приходят до двух недель после доставки, поэтому последний месяц ещё уменьшится; соединение позиций с возвратами в одном FROM вычитает возврат на каждой позиции |
| Соседи | gross_orders для маркетинга, shipped_revenue для логистики |
Посмотри на последние строки. Ловушки записаны не для красоты. По июньским заказам пока 28 354 ₽ возвратов, а по майским уже 55 357 ₽: через пару недель июньская выручка уменьшится, и это не ошибка отчёта. А если соединить позиции с возвратами в лоб, возврат заказа с тремя играми вычтется трижды: за май вместо 55 357 ₽ вычитается 80 676 ₽.
Соседи тоже важны. Маркетингу никто не запрещает считать заказы мая со всеми статусами, но у этой метрики теперь своё имя, gross_orders. На планёрке звучат три разных слова, и директору не надо гадать.
урок из курса
Урок из курса «Аналитика данных с нуля». Курс покупается один раз и остаётся навсегда: 500 ₽.
Оплата пока не подключена: премиум и курсы открываются промокодом.