Калькулятор поставки на склад: сколько штук везти

Речь о поставке товара на склад маркетплейса — сколько единиц отгрузить, чтобы не встать без остатка и не заморозить деньги в неликвиде. Считает по четырём неделям заказов, которые вы вписываете сами: свежие недели весят больше, из потребности вычитается и то, что лежит на площадке, и то, что уже едет, а итог приводится к кратности вашей партии.

Регистрации нет, считает прямо в браузере — данные никуда не уходят.

Заказы по неделям, шт

Полные недели, без текущей неполной. Считаем заказы, а не доставленные: для поставки важен спрос, а не итог доставки.

Что уже есть

Как везём

Спрос, шт в неделю
Потребность на горизонт
Сколько везти
Хватит того, что есть

Как получилось это число

Каждая строка проверяется на калькуляторе — никакой чёрной коробки и никакого «машинного обучения» тут нет.

    Четыре места, где расчёт поставки обычно ломается

    Каждое из них по отдельности заставляет либо встать без товара, либо заморозить деньги в неликвиде.

    Простое среднее за четыре недели врёт на тренде

    Растущий и падающий товар при одинаковом среднем планируются одинаково — а это разные товары. Поэтому недели взвешены: 40 / 30 / 20 / 10 % от самой свежей к самой старой.

    Веса именно такие, а не экспоненциальное затухание: их можно сложить на бумаге и проверить, а на четырёх точках разница между этими двумя способами — единицы процентов.

    «В пути» не считают — и везут второй раз то же самое

    Поставка идёт до недели. Всё это время товар уже отгружен, но на остатке его ещё нет, и расчёт каждый день предлагает отправить то, что уже едет.

    Поэтому отправленное вычитается наравне с лежащим: для вопроса «сколько ещё довезти» едущее и лежащее равнозначны. Отдельным полем, а не прибавленным к остатку молча, — чтобы было видно, почему потребность вдруг упала.

    Одна аномальная неделя удваивает поставку

    Неделя 100–100–100–400 при весе свежей недели 40 % даёт уровень, которого не было. Поэтому свежая неделя подрезается, если она выше полутора раз от того, что предсказывают предыдущие недели своим же шагом роста.

    Важно, что опора — предсказание, а не медиана: ровный рост 10–20–30–40 иначе объявлялся бы всплеском, и защита от аномалии убивала бы ровно тот сигнал роста, ради которого тренд и считается.

    Горизонт покрывают целиком, хотя запас ещё есть

    Если вы запускаете отгрузку не в ноль, а за неделю-две до него, то эти недели закроет остаток, который ещё на руках. Покрывать надо горизонт минус фора, иначе каждая поставка на эту фору и переезжает.

    Потолки роста и падения — разные, и это не небрежность

    Прогноз не может уйти вверх больше чем на +30 % от сегодняшнего уровня, а вниз — на −60 %. Асимметрия сделана намеренно, по двум причинам.

    Первая — так бывает в жизни: к концу сезона спрос падает вдвое за месяц, то есть примерно на 64 % к середине периода покрытия. Симметричный потолок ±30 % срезал бы это до −30 % и заставил отгрузить вдвое больше, чем реально продастся.

    Вторая — цена ошибки разная. Перезаказ — это замороженные деньги и неликвид, который потом ещё и платно лежит. Недозаказ лечится следующей поставкой.

    Поверх обоих потолков стоит ещё один, привязанный не к процентам, а к настоящим штукам: план не может превысить трёх лучших недель, которые этот товар вообще показывал.

    Отмены вычитаются один раз, в самом конце

    Отменённый заказ не покидает склад, поэтому в поставку идёт спрос без отмен. Но вычитать их по неделям нельзя: отмены дозревают, и у свежей недели их набралось меньше, чем у старой, — понедельный вычет создал бы мнимый рост на каждом товаре. Поэтому это один множитель в конце.

    Чего этот калькулятор не делает

    Честно, чтобы не было сюрприза

    Не знает вашей истории продаж. Четыре недели заказов вы вписываете руками. Подставлять числа из вашего кабинета страница не умеет — это работа сервиса, а не публичной страницы.

    Не считает сезонность. И это не пропуск на странице: сезонности нет и в самом недельном прогнозе. Она живёт отдельным модулем и считается только по собственной истории товара — никаких зашитых «универсальных» профилей вроде «зимой шапки идут лучше». Про конкретный товар конкретного продавца мы этого не знаем, а красивый выдуманный профиль на экране неотличим от измеренного.

    И даже там сезонность есть далеко не у всех. Профиль дня недели требует четырёх полных недель — по трём субботам «сильная суббота» это ещё не факт, а совпадение. Годовой профиль требует 400 суток истории, а не 365: по одному году помесячный профиль вывести нельзя — единственный декабрь это не «декабрь такой», это «тот декабрь был такой». На живых данных месячные коэффициенты посчитаны у 36 товаров из 915 — 3,9 %. У остальных мы честно пишем «на годовую не хватает», а не подставляем правдоподобный профиль из полугода.

    Не делит поставку между складами. Здесь один общий остаток на площадке. Внутри сервиса поставка ещё и раскладывается по кластерам по доле нехватки — но для этого нужны заказы и остатки по каждому складу, а их у страницы нет.

    Не поправляет недели, когда товара не было. Внутри сервиса неделя с неполным наличием либо растягивается на полную, либо исключается из расчёта целиком — иначе околонулевая неделя без остатка тянет вниз весь план. Для этого нужна посуточная история остатков; вручную её не впишешь.

    Что делает сервис поверх этого расчёта

    Всё ниже работает по вашему кабинету и входит в подписку — на этой странице этого нет и быть не может.

    Считает по всем артикулам сразу, каждый день

    Четыре недели заказов, отмены, дни без остатка, тренд — по каждому товару, без ручного ввода. И заранее предупреждает, когда до нуля остаётся меньше вашей форы на запуск.

    Раскладывает поставку по складам

    Итог «сколько всего везти» считается по кабинету целиком и не меняется от того, какие склады вы отметили на карте — галочки решают только, между кем делить. Делится по доле нехватки: спрос склада за период минус то, что на нём уже лежит и уже едет.

    Склад, которому не хватает меньше чем на одну партию, в дележе не участвует: везти в дальний регион одну майку дороже, чем не везти.

    Показывает, из чего сложилось число

    По каждой строке видно долю нехватки склада и построчное объяснение прогноза: какая неделя подрезана и почему, применялся ли тренд, сработал ли потолок. Спорить с числом вслепую не приходится.

    Говорит, чего не знает

    «Нет данных» и «не продаётся» — разные состояния, и на экране они выглядят по-разному. Если все наблюдённые недели упирались в остаток, число помечено как нижняя граница: спрос был не меньше, а насколько больше — по этим данным сказать нельзя.

    Частые вопросы

    Почему недели взвешены 40/30/20/10, а не просто среднее?

    Потому что простое среднее одинаково планирует растущий и падающий товар. Свежие недели должны весить больше. Веса выбраны такими, чтобы их можно было сложить на бумаге и проверить: на четырёх точках разница с экспоненциальным затуханием — единицы процентов, а проверяемость теряется целиком.

    Зачем отдельное поле «уже в пути»?

    Поставка идёт до недели, и всё это время товар уже отгружен, но на остатке его ещё нет. Без этого поля расчёт каждый день предлагал бы отправить то, что уже едет. Отправленное вычитается наравне с лежащим, но отдельной строкой — чтобы было видно, почему потребность упала.

    Учитывается ли сезонность?

    В этом расчёте — нет, и в недельном прогнозе внутри сервиса тоже нет. Сезонность считается отдельным модулем и только по собственной истории товара: зашитых «универсальных» профилей мы не используем принципиально. Профиль дня недели требует четырёх полных недель, годовой — 400 суток истории. На живых данных месячные коэффициенты есть у 36 товаров из 915.

    Почему итог округляется вниз, а не вверх?

    Потому что кратность партии — это и есть минимальная отгрузка: неполная коробка либо не поедет, либо поедет дороже, чем стоит. Остаток при округлении остаётся на вашем складе и попадает в следующую поставку, а не теряется.

    Это калькулятор про договор поставки и пени?

    Нет. Здесь только про то, сколько единиц товара везти на склад маркетплейса. Юридической стороны договора поставки — сроков, неустоек, претензий — эта страница не касается вовсе.

    Данные, которые я ввожу, куда-то отправляются?

    Нет. Расчёт целиком идёт в вашем браузере, на сервер ничего не уходит. Обновите страницу — введённое пропадёт.

    Что ещё посчитать

    Калькулятор прибыли Wildberries

    Что остаётся с проданной штуки: комиссия, логистика с поправкой на выкуп, хранение, приёмка, реклама и налог.

    Калькулятор прибыли Ozon

    Своя механика: последняя миля долей от цены, эквайринг отдельной строкой, обработка отправления, индекс цен.

    Как оспорить удержания Wildberries

    Сроки возражений из действующей оферты и калькулятор даты, после которой отчёт уже не оспорить.

    Посчитали один товар — а их у вас сотни

    Nelar считает эту же поставку по каждому вашему артикулу каждый день, раскладывает её по складам и предупреждает заранее — до того, как остаток кончится, а не после.

    Для работы достаточно ключа с правами только на чтение.