Содержание:
Out-of-stock по ходовому товару — не форс-мажор склада, а следствие того, как сделан расчёт поставки на маркетплейс. Расчёт отнимает у команды много времени — а товар всё равно кончается. Разбираем, как считать поставку по двум уровням: базовый расчёт и региональную локализацию. С формулой, буфером и ошибками, из-за которых теряются заказы.
Почему товар уходит в ноль, даже когда его «посчитали»
Когда мы разбираем нового клиента на тестовом месяце, чаще всего деньги теряются не на рекламе и не на комиссиях, а на простом: ходового товара не оказывается на складе. Это проблема номер один — она встречается у каждого второго-третьего продавца.
Причём дело обычно не в том, что расчётом не занимаются. Занимаются — и тратят на него огромное количество времени, сил и людей. А товар всё равно уходит в out-of-stock. Разберём, где именно ломается расчёт:
- Скорость заказа посчитали некорректно — взяли заказы за месяц, не заметив, что половину месяца товара на складе не было.
- Не заложили буфер — поставка пришла без запаса, любой всплеск спроса обнуляет остаток.
- Не спрогнозировали изменение скорости — сезон, охлаждение рынка, новая волна конкурентов.
- Вошли в акцию — товар распродали за несколько дней, а следующая поставка ещё в пути.
Каждая из этих ошибок стоит денег: по нашим разборам, OOS по ходовой позиции способен стоить до 30–40% суммы заказов по ней — плюс просадку позиций в выдаче, которую потом приходится отыгрывать заново. Ниже — как считать, чтобы этого не происходило.
Базовый расчёт: товар просто должен быть на складе
Базовый минимум — обеспечить наличие товара на маркетплейсе исходя из скорости заказов и плана продаж. Это доступный и понятный метод: опираемся на историю заказов, чтобы спрогнозировать будущее. Более зрелые компании используют полноценные прогнозы спроса — но начинать стоит с простой модели, которую видно насквозь.

Буфер удобно задавать в днях скорости — дней больше там, где длиннее срок поставки и сильнее скачет спрос (нестабильный товар, запланированное промо). Но это компромисс, а не «чем больше, тем лучше»: занизишь — уйдёшь в out-of-stock, завысишь — заморозишь оборотку и переплатишь за хранение (маркетплейсы тарифицируют и объём, и залёживание). Цель — не максимальный запас, а минимально достаточный: ходовым товарам (A) — с запасом, медленным (C) — по минимуму или под вывод из ассортимента. Ровно для этого и нужны ABC и оборачиваемость.
Три места, где ломается даже правильная формула
Из четырёх причин OOS выше буфер закладывается прямо в формуле, а акция — частный случай изменения скорости. Остаются три места, где расчёт ломается даже у аккуратных:
- Скорость считают по календарю, а не по дням наличия. Привезли 30 платьев, продали за месяц — кажется, скорость одно платье в день. Но если товар был на складе всего три дня и закончился, реальная скорость — десять платьев в день. Заложите «одно в день» — и снова уйдёте в ноль за трое суток. Скорость надо считать только по дням, когда товар физически был на складе.
- Не закладывают планируемое изменение скорости. Идёте в акцию или включаете рекламу и знаете, что это поднимает скорость заказа, скажем, на 10%, — эту прибавку нужно заранее внести в расчёт. Иначе план продаж говорит одно, а поставка обеспечивает другое.
- Не округляют до логистики. Полученное число округляют до вложимости в короб, палету и кратности поставки — иначе число аккуратное, а отгрузка неудобнее и дороже.
Товары в пути: не заказать одно и то же дважды
Формула вычитает остаток, который будет на складе к дате поставки. Но легко упустить ещё один: товары в пути — партии, которые вы уже отгрузили, но которых пока нет в продаже. Они либо едут на склад маркетплейса, либо уже на приёмке. Если их не вычесть, расчёт закажет то же самое повторно — и вместо закрытого OOS вы получите перезатаривание.
И Wildberries, и Ozon показывают эти партии отдельно — это штатные данные из личного кабинета, собирать их через интеграцию с 1С не нужно:
- Wildberries — поставка проходит статусы «в пути» → «идёт приёмка» → «принято» → «поступило в продажу»; в детализации видно, сколько уже принято и сколько реально выложено в продажу.
- Ozon (FBO) — раздел «Товары в пути и приёмка» со статусами «В пути» и «Приёмка на складе».
Важный нюанс — лаг приёмки. Отгрузили — ещё не значит «в продаже». Приёмка на складе занимает время (по регламенту WB — до 10 рабочих дней), и товар выкладывается частями. Поэтому партию «в пути» нельзя считать доступной в день отгрузки: в расчёте она добавляется к остатку не на дату прибытия, а на дату, когда пройдёт приёмку и попадёт в продажу. Не заложите этот лаг — получите OOS в ситуации «отгрузка есть, а купить нельзя».

Региональная локализация: товар там, где его заказывают
Второй уровень сложнее — и здесь теряет заказы уже тот, у кого «на складе всё есть». Товар должен лежать не просто на складе маркетплейса, а на том складе, откуда покупателю его удобно и быстро получить.
Если заказ едет с дальнего склада, покупатель дольше ждёт, маркетплейс поднимает стоимость логистики, и дальше одно из двух: либо карточку не выбирают, либо выбирают — но она выходит за рамки целевой юнит-экономики. Это и есть цена нелокализованного товара.
Индекс локализации
WB и Ozon отдают данные о том, в каком регионе товар заказан и с какого склада реально поехал. Это позволяет посчитать индекс локализации по каждому SKU и региону:

Посчитав его по всем позициям и регионам, вы увидите, насколько оптимально разложен товар по складам. Единого «нормативного» значения по рынку нет — не гонитесь за конкретной цифрой; смысл в другом: чем выше индекс, тем меньше вы переплачиваете за логистику и тем реже проигрываете выдачу более близким к покупателю конкурентам.

Как считать поставку в регион
Логика та же, что на первом уровне, но по каждому региону отдельно. Нужны два измерения: скорость заказа именно в этом регионе (сколько людей заказывают SKU, например, в Татарстане — именно заказы, а не отгрузки) и остаток этого SKU на складе в этом регионе. Дальше — простая арифметика: смотрим скорость в регионе, через сколько там закончится товар, когда сможем сделать поставку, — и получаем, сколько довезти в конкретный регион.
Честная сложность. На уровне региона поправку «скорость по дням наличия» посчитать почти невозможно: если товара не было на местном складе, заказ мог поехать с соседнего, и вычленить, как это повлияло на региональный спрос, не выходит. Здесь мы сознательно упрощаем — лучше рабочая оценка, чем откладывать решение ради недостижимой точности.

Что дальше
Базовый расчёт, локализация и товары в пути — это всё, что можно собрать из данных самого маркетплейса, и этого хватает, чтобы закрыть большую часть типовых причин out-of-stock. Но часть картины лежит за пределами маркетплейса — там уже нужна интеграция с вашим учётом (1С / МойСклад). Об этом — вторая статья серии:
- Базовый расчёт на склад маркетплейса. наличие товара по скорости заказа, формула, буфер и товары в пути
- Региональная локализация товар там, где его заказывают; индекс локализации, расчёт по регионам
- Полная цепочка за пределами маркетплейса.
Как это считается в платформе Data-Power
Чтобы всё описанное не жило в ручных таблицах, расчёт поставки и локализацию мы держим в продукте — но честно разделяем, что работает штатно, а что настраивается под конкретного заказчика:
| ШТАТНО В ПРОДУКТЕ | ПОД ЗАКАЗЧИКА |
| Расчёт поставки для WB, Ozon, Яндекс Маркета | Интеграция с 1С / МойСклад |
| Локализация и распределение по региональным складам (WB, Ozon) | Учёт производства и партий из Китая |
| Скорость заказа с поправкой на дни наличия | Полная цепочка поставок и её визуализация |
| Учёт товаров в пути и на приёмке (чтобы не задвоить поставку) | |
| Единый управленческий SKU (объединение артикулов) |
Коротко: чек-лист расчёта поставки
- Считайте скорость заказа только по дням наличия товара.
- Закладывайте буфер по сезонности, рекламе и категории ABC.
- Учитывайте плановое изменение скорости (акции, реклама).
- Вычитайте остаток на дату поставки и товары в пути — чтобы не заказать то, что уже едет.
- Помните про лаг приёмки: отгружено ≠ в продаже (на WB — до 10 рабочих дней).
- Округляйте до короба/палеты и кратности поставки.
- Считайте индекс локализации и довозите товар в регионы, где его заказывают.
Частые вопросы
Поставка = средняя скорость заказа × период до следующей поставки − остаток на дату поставки + буфер. Скорость считайте по дням, когда товар был на складе, а буфер — по сезонности, рекламе и категории ABC.
Это доля заказов, отгруженных из своего региона, от всех заказов региона. Чем он выше, тем меньше вы платите за логистику и тем чаще выигрываете выдачу у более близких к покупателю конкурентов.
Чаще всего — из-за некорректной скорости заказа (посчитали по календарю, а не по дням наличия), забытого буфера, неучтённого сезона или акции, которая распродаёт товар быстрее плана.
По свежим данным — обычно последние 2–4 недели — и обязательно по дням наличия. Если товар входит в сезон или заметно растёт, опирайтесь на последние недели и добавляйте плановый рост, а не усредняйте с периодом простоя (когда товара не было в наличии или заказов почти не было).
Истории нет — первую-вторую поставку берут по гипотезе (аналог в категории, план продвижения) и возят небольшими частыми партиями, чтобы быстро набрать реальную скорость и пересчитать поставку уже по ней.
Это партии, которые вы уже отгрузили, но которых пока нет в продаже — они едут на склад маркетплейса или на приёмке. WB и Ozon показывают их отдельными статусами. Если не вычесть их из расчёта, закажете то же самое повторно и получите перезатаривание. При этом «в пути» ≠ «в продаже»: приёмка занимает время (на WB — до 10 рабочих дней), поэтому партию учитывают как остаток на дату, когда она пройдёт приёмку и попадёт в продажу.
Хотите увидеть, как расчёт поставки и локализация считаются автоматически по вашим WB и Ozon? Покажем на ваших данных — на онлайн-экскурсии по платформе.