Как мы считаем чистую прибыль на Ozon
Кабинет Ozon хорошо показывает обороты: сколько заказали, сколько доставили, сколько начислено к выплате. Но на главный вопрос продавца — «сколько я заработал за месяц?» — он не отвечает: комиссии и услуги размазаны по десяткам типов начислений, себестоимости в кабинете нет вовсе, а налог — тем более. Рассказываем, как SellerAgent собирает из этого честную чистую прибыль.
Формула
Для каждого товара за выбранный период мы считаем:
Чистая прибыль = выручка − удержания Ozon − себестоимость − налог
Дальше из неё выводятся маржа (прибыль ÷ выручка) и ROI (прибыль ÷ себестоимость) — два показателя, по которым видно и «сколько остаётся с рубля продаж», и «как работает вложенный в закупку рубль».
Выручка — по дате доставки
Продажа попадает в отчёт в тот день, когда заказ доставлен покупателю (или уже едет к нему), — именно тогда Ozon начисляет деньги за продажу. Поэтому «выручка за июнь» в SellerAgent — это деньги, которые реально пришли за июнь, а не заказы, оформленные в июне и доехавшие в июле. Для анализа спроса рядом есть режим «по дате заказа» — с него считается процент выкупа.
Удержания: 12 категорий вместо одной строки «комиссия»
Источник удержаний — финансовые начисления Ozon: те же данные, по которым маркетплейс рассчитывает выплату продавцу. Каждое начисление мы относим к одной из категорий:
- комиссия за продажу — базовый процент маркетплейса;
- логистика — пять отдельных статей, а не одна: доставка до покупателя («последняя миля»), кросс-докинг, приёмка поставки на складе, обратная логистика возвратов и обработка возвратов на складе. Так видно, где именно логистика съедает маржу;
- эквайринг — комиссия за приём оплаты;
- хранение на складах Ozon;
- продвижение — трафареты, акции, вывод в топ;
- подписка Ozon Premium — отдельной строкой, это не реклама;
- компенсации от Ozon — брак, утеря, недостача. Категория знаковая: когда Ozon платит продавцу, она уменьшает удержания и показывается зелёным плюсом;
- прочие услуги — всё остальное, вплоть до разовых работ.
Разбивка доступна по каждому товару: открываете карточку — и видите, из чего сложились удержания именно этой позиции.
Удержания «вне товаров» — отдельной строкой
Часть списаний Ozon не привязана ни к одному товару: хранение, продвижение кабинета, подписки, разовые услуги. Размазывать их по товарам — значит искажать маржу и ROI конкретных позиций. Мы показываем их отдельной строкой «Удержания вне товаров»: показатели товаров остаются честными, а итог периода сходится до рубля. Контрольное равенство простое:
Выплата Ozon − чистая прибыль = себестоимость + налог.
Если у вас эти цифры не сходятся — где-то теряются удержания.
Себестоимость — с историей закупочных цен
Закупочная цена меняется, поэтому одной «текущей себестоимости» мало. В SellerAgent у каждого товара — история цен с датами начала действия: продажа умножается на ту себестоимость, которая действовала в день продажи. Отчёт за март считается по мартовским закупочным ценам, даже если в июле вы завезли партию дороже. Заполнять можно вручную или импортом из Excel — сразу на все магазины, в том числе помесячно.
Возвраты и процент выкупа
Возвраты берём из отчёта возвратов Ozon и считаем процент выкупа так же, как это принято в аналитике маркетплейсов:
Выкуп = (доставлено − возвращено) ÷ заказано
Низкий выкуп при хорошей марже — сигнал посмотреть на карточку товара и упаковку: каждая обратная доставка — это две логистики вместо одной.
Налог
Ставка УСН задаётся один раз в настройках — она одна на ИП, а не на магазин. Налог считается от выручки и вычитается из прибыли каждого товара. Не задали ставку — отчёт честно покажет прибыль «до налога» и пометит это.
Что в итоге
ABC-отчёт SellerAgent показывает по каждому товару — по одному магазину или по всем сразу: выручку, все удержания Ozon по категориям, себестоимость на дату продажи, налог, чистую прибыль, маржу, ROI и процент выкупа. Те же принципы работают для Wildberries и Яндекс.Маркета — с поправкой на их отчёты.
Всё это доступно на бесплатном тарифе — без пробного периода: подключение занимает пару минут, первый отчёт — сразу после первой синхронизации.