За 90 дней выручка по моим магазинам составила 39 693 723 ₽, а после учтённых расходов из каждых 100 ₽ осталось 11,3 ₽. Сам по себе оборот ничего не говорит о том, сколько я заработал. Внутри него лежат деньги поставщика, расходы на площадку, рекламу и налог. Отдельно в этом расчёте себестоимость товара занимает 21,6 ₽ из каждых 100 ₽ выручки. Если убрать её из отчёта или подставить неполную закупочную цену, результат станет красивее, но свободных денег у меня от этого не прибавится.
Когда я проверяю прибыль, мне недостаточно увидеть заполненную колонку «Себестоимость». Я хочу понимать, откуда взялось значение, к какой партии оно относится и какие расходы уже сидят внутри. Иначе можно аккуратно собрать начисления Ozon, сверить рекламу и всё равно ошибиться в главном. Особенно легко это происходит, когда товар уже продавался, потом приехала новая закупка по другой цене, а в таблице осталась единственная ячейка на весь артикул. Поэтому себестоимость я считаю через движение товара и документы по закупке, а не через цену, которую сейчас помню.
Что я включаю в себестоимость кроме цены поставщика
Для своей управленческой аналитики я отделяю подготовку товара к продаже от расходов, возникающих при самой продаже. В первую группу попадает закупка с учётом документально подтверждённых скидок, доставка от поставщика, приёмка, необходимая маркировка и товарная упаковка. Если закупка импортная, отдельно проверяю пошлины, услуги посредников и другие расходы, без которых партия не оказалась бы у меня. Состав зависит от реального маршрута товара: универсального перечня для любой поставки нет. Налоги в закупочных документах тоже нельзя автоматически целиком включать в стоимость — нужно учитывать, какая их часть возмещается при моей системе учёта.
Дальше возникает вопрос, какую часть общего счёта отнести на конкретный товар. Если перевозчик выставил счёт за смешанную поставку, делить доставку поровну между артикулами обычно нет оснований. Я выбираю базу распределения, связанную с причиной расхода: вес, объём, количество мест или стоимость, если именно она определяет платёж. Услуги поштучной маркировки, напротив, логично относить по обработанному количеству. Выбранный способ я сохраняю вместе с расчётом, чтобы при следующей закупке не получить другую себестоимость только из-за смены правила.
Комиссию Ozon, рекламу и расходы на исполнение продажи я держу отдельно от закупочной себестоимости, хотя все они уменьшают результат заказа. С доставкой до склада площадки и складской обработкой граница зависит от принятого способа учёта: их можно распределять на товар или показывать отдельной статьёй. Для меня здесь принципиально, чтобы расход не пропал и не оказался вычтен повторно. Поэтому рядом с каждой статьёй я фиксирую, где именно она учитывается. Если хочется увидеть всю конструкцию целиком, в статье про юнит-экономику товара на Ozon я объясняю, как закупочная стоимость соединяется с остальными расходами продажи.
Почему без себестоимости аналитика прибыли теряет смысл
В моих данных за 90 дней каждые 100 ₽ выручки распределились следующим образом: комиссия Ozon — 40,2 ₽, логистика и прочие сборы — 10,3 ₽, реклама — 13,1 ₽. Себестоимость товара составила 21,6 ₽, налог — 3,5 ₽, а остаток после этих статей — 11,3 ₽. Это фактическая структура расходов по моим магазинам за рассматриваемый период, а не тарифная сетка площадки. Комиссию 40,2 ₽ здесь нельзя переносить на чужую категорию или использовать как прогноз для любой новой карточки. У другого ассортимента, условий продажи и периода распределение может быть иным.
Из этих данных видно, почему я не доверяю прибыли, если закупочные расходы не загружены или заполнены приблизительно. Пропущенные 21,6 ₽ на каждые 100 ₽ выручки превратятся в отчёте в якобы заработанные деньги. Но обязательства перед поставщиком никуда не исчезнут, а для следующей закупки опять потребуется оборотный капитал. Если учтена закупка, но забыты доставка и подготовка, ошибка будет меньше, однако направление останется тем же: прибыль окажется завышена. Точную сумму такого завышения без документов на пропущенные расходы я назвать не могу.
При этом оставшиеся 11,3 ₽ я не предлагаю автоматически считать деньгами, которые можно забрать из бизнеса. По переданному разрезу нельзя установить, покрыты ли все общехозяйственные расходы, проценты и другие обязательства за пределами перечисленных статей. Ещё я проверяю, что выручка и себестоимость относятся к одним продажам, а не просто попали в соседние колонки за одинаковые даты. Оплата поставщику за товар на складе не должна целиком уменьшать прибыль уже проданных товаров. В статье про аналитику Ozon без лишних отчётов я подробнее объясняю, почему начисления, выплаты и результат продаж нужно различать.
Куда уходит 100 ₽ выручки
Магазины автора, 90 дней
Пустая себестоимость не означает, что товар достался бесплатно. Пока стоимость проданных единиц неизвестна, прибыль по ним нельзя считать достоверной. Я оставляю такие продажи с пометкой о неполных данных, а не превращаю отсутствие значения в отсутствие расхода. Иначе самый заметный заработок в отчёте может оказаться обычной дырой в учёте.
Как рассчитать себестоимость единицы товара по шагам
Сначала я выделяю конкретную закупочную партию и собираю связанные с ней документы: счёт поставщика, поступление, доставку и подготовку. Из стоимости приобретения вычитаю подтверждённые скидки и корректировки поставщика, если они ещё не учтены в исходной сумме. При расчётах в разной валюте привожу расходы к общей валюте по последовательно выбранному правилу, а не по курсу на момент открытия таблицы. Затем сверяю количество: сколько заказано, сколько оплачено и сколько действительно принято. Недостачу сразу выношу на проверку, потому что оплаченные и поступившие единицы могут не совпадать.
Следом прибавляю расходы, которые относятся только к этому товару, и его долю общих расходов партии. Расчёт доли делаю так: общий расход умножаю на показатель товара и делю на сумму такого же показателя по всем товарам поставки. Если распределяю перевозку по объёму, в числителе стоит объём конкретного товара, а в знаменателе — объём всей перевозимой партии. После распределения складываю получившиеся суммы и сверяю их с исходным счётом перевозчика. Так я ловлю ситуацию, когда часть доставки потерялась между строками или была распределена повторно.
После этого проверяю брак и определяю, какое количество участвует в расчёте стоимости пригодных единиц. Я не делю любую сумму расходов на уменьшенный остаток автоматически: претензии поставщику, ожидаемые компенсации и отдельные потери нужно разобрать по существу. Расходы, обоснованно отнесённые на пригодный товар, делю на количество таких единиц — так получается себестоимость единицы товара в этой партии. Для расчёта результата продаж беру стоимость выбывших единиц, вычитаю её из соответствующей выручки, затем вычитаю комиссию, логистику продажи, рекламу, налог и остальные принятые расходы без повторов. Порядок вычитания здесь нужен для понятной проверки, а состав и момент признания расходов я держу одинаковыми от периода к периоду.
Как считать товар из партий с разной закупочной ценой
Если на складе смешались закупки одного товара, я сначала выбираю правило списания стоимости, а уже потом смотрю прибыль. При скользящей средневзвешенной стоимости после поступления складываю стоимость прежнего остатка и новой партии, затем делю на их суммарное количество. Полученное значение использую для последующих списаний до следующего поступления. Это средняя с учётом количества товара, а не простое среднее между ценами поставщика. Без достоверных начальных остатков такой расчёт не получится восстановить одним полем «Последняя закупка».
Другой вариант — списывать стоимость сначала из наиболее ранней оставшейся партии, а затем переходить к следующей. Такой порядок обычно называют FIFO, и для него нужно хранить количество и стоимость остатка каждой партии. Речь идёт о последовательности списания в учёте, а не о гарантии, что склад физически отправил именно старую коробку. Если конкретную проданную единицу можно надёжно связать с партией, доступен расчёт по её фактической стоимости. В своих магазинах я бы не переключал методы задним числом ради более приятной прибыли: тогда сравнение периодов потеряет смысл.
Конкретная ошибка возникает, когда продавец меняет закупочную цену в карточке товара, а таблица пересчитывает по ней всю историю продаж. Если новая партия дороже, уже завершённые продажи внезапно становятся менее прибыльными, хотя их расходы не изменились. Если дешевле, в прошлом появляется заработок, которого там не было. Денежное искажение считается прямо: разницу между подставленной и правильной стоимостью единицы нужно умножить на количество затронутых проданных единиц. Поэтому новую цену я привязываю к поступлению и выбранному правилу списания, а пересчёт истории допускаю при исправлении исходной ошибки, с понятным объяснением причины.
Что проверить перед расчётом себестоимости товара онлайн
Рассчитать себестоимость товара онлайн можно, но калькулятор не узнает самостоятельно, какие расходы остались у меня в почте или документах поставщика. Перед загрузкой я проверяю артикул, единицу учёта, количество в закупочной упаковке, дату поступления и связь расходов с партией. Особенно внимательно смотрю на комплекты: закупочная единица и единица продажи могут быть разными. Возвраты тоже требуют отдельной обработки, потому что восстановление пригодного товара на остатке и списание повреждённого товара дают разный результат. При этом удержанные расходы на доставку возврата не исчезают только оттого, что сам товар вернулся.
SellOps я сделал для своих магазинов, потому что не нашёл готового сервиса аналитики, которому доверял бы в расчётах прибыли. Но собственный сервис не даёт мне права считать неизвестную закупочную стоимость известной или пропускать сверку документов. В описании того, как устроен SellOps можно посмотреть устройство сервиса, а здесь мой критерий проще: любую сумму в отчёте я должен суметь объяснить через исходные данные и правило расчёта. Если результат нельзя воспроизвести отдельно, красивому экрану я не доверяю. Автоматизация сокращает повторяющуюся работу, но ответственность за полноту закупочных расходов остаётся у меня.
Вопрос «как посчитать себестоимость товара на Озон» на практике часто означает желание узнать, сколько остаётся с заказа. Поэтому после проверки закупочных партий я отдельно собираю все расходы продажи и сравниваю результат по товарам на одинаковой основе. Не смешиваю стоимость складского остатка с расходом периода и не подменяю прибыль суммой выплаты площадки. Если затем нужно оценить цену, проверяю ещё и знаменатель показателя: отношение прибыли к выручке отвечает не на тот же вопрос, что отношение к затратам. Эту разницу я разбираю в статье о том, чем маржинальность отличается от рентабельности, чтобы правильная себестоимость не превратилась в неправильное решение о цене.
С чего я бы начал проверку завтра
Завтра я бы выбрал товар, который уже закупался по разным ценам, и восстановил по нему цепочку от начального остатка до текущих продаж. Собрал бы документы на партии, дописал доставку и подготовку, сверил пригодное количество и зафиксировал правило списания стоимости. Затем сравнил бы полученную себестоимость проданных единиц с той, которая сейчас стоит в отчёте о прибыли. Каждое расхождение разложил бы по причине: пропущенный расход, неверное количество, повторное списание или новая цена, применённая к старым продажам. После такой проверки уже можно переносить правило на остальные товары, не размножая ошибку вместе с автоматизацией.
Хотите увидеть эти цифры по своим товарам?
Попробовать SellOps бесплатно