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