Партия заказа — это количество товара, которое компания заказывает у поставщика за один раз. Оптимальная партия заказа — не какое-то фиксированное число, а результат расчёта: сколько нужно заказать, чтобы товара хватило до следующей поставки, но склад не был забит лишним. Ниже — как это считается на практике, от чего зависит размер партии, где расчёт чаще всего ломается и когда он вообще не применим. Все расчёты будем вести на одном заказе кондитерского отдела: печенье, вафли, зефир.
В общем виде это разница между тем, сколько товара нужно на период до следующей поставки, и тем, что останется на складе к её приходу:
Оптимальная партия = Оптимальный запас на период поставки − Остаток на дату поставки
Второе слагаемое берётся из учётной системы, а первое тоже считается:
Оптимальный запас на период поставки = Средний спрос в день × Дней до следующей поставки + Страховой запас
Разберём на печенье. Магазин продаёт 50 упаковок в неделю — округлим до 7 упаковок в день. До следующей поставки 14 дней, значит на период нужно 7 × 14 = 98 упаковок (страховой запас пока опустим, он прибавится сверху — про него отдельная статья).
Две оговорки к этим 50 упаковкам, без которых расчёт поедет. Первая: продажи — это не спрос. Если товара неделю не было на полке, продажи за ту неделю занижены не потому, что покупать перестали, а потому, что покупать было нечего. Средняя по таким дням тянет партию вниз, следующая поставка снова кончается раньше срока — и дефицит начинает воспроизводить сам себя. Дни, когда товара не было в наличии, из расчёта средней исключают.
Вторая: деление на семь работает, пока продажи ровные по дням недели. В рознице пятница-воскресенье часто дают половину недельного оборота. Тогда «7 упаковок в день» — фикция: расход за срок поставки надо считать по конкретным дням, на которые он приходится. Партия, посчитанная по средней, будет разной в зависимости от того, приезжает машина в понедельник или в четверг. Дальше в примере мы считаем продажи ровными по дням — так виднее механика; в рознице этот шаг придётся уточнять по дням недели.
Теперь вторая величина, и здесь чаще всего ошибаются. На складе сегодня лежит 30 упаковок, но заказ едет 3 дня, и за это время уйдёт ещё 7 × 3 = 21. К приходу поставки останется не 30, а 9. Значит, партия — 98 − 9 = 89, а не 98 − 30 = 68. Разница в 21 упаковку — это ровно те продажи, которые случатся, пока заказ в пути.
При этом 91 — партия для поставки, пришедшей точно в срок. Остаток на дату прихода мы свели почти в ноль: девять упаковок — это чуть больше дня продаж. Задержка машины на два дня означает пустую полку. Именно этот зазор и закрывает страховой запас.
Важное замечание: в формуле стоит остаток на дату поставки, а не сегодняшний. Подставить текущий остаток — самая частая ошибка ручного расчёта: партия выходит заниженной ровно на объём продаж за срок поставки, и товар заканчивается перед самым приходом машины.
Дальше это число правят ограничения поставщика и срок годности.
Если вы искали формулу EOQ (Уилсона) — ей посвящена отдельная статья «Оптимальный размер заказа: формула, пример и ошибки расчёта».
Что такое партия заказа простыми словами
Партия заказа — это сколько единиц товара уходит в один заказ поставщику. Оптимальная партия — это количество, рассчитанное с учётом текущего остатка на складе, ожидаемого спроса до следующей поставки и ограничений поставщика (минимальная партия, кратность упаковки, срок годности).
Простыми словами: партия — это ответ на вопрос «сколько понадобится», а не «сколько получится заказать». Поэтому одна и та же позиция в разные недели заказывается разным объёмом: спрос вырос — партия выросла, на складе осталось больше обычного — партия ужалась.
EOQ ищет баланс между затратами на хранение и на оформление заказа при допущении, что спрос ровный. Здесь задача другая: спрос колеблется, у поставщиков свои условия отгрузки, у части товаров есть срок годности — и все эти ограничения действуют на одно и то же число одновременно.
От чего зависит размер партии
На практике на размер партии одновременно влияет несколько факторов — и расчёт «на глаз» обычно не учитывает их все сразу:
- Спрос на товар. Основной фактор: чем выше ожидаемые продажи до следующей поставки, тем больше нужно заказать. Спрос меняется — сезонность, акции, изменение цены — и партия должна меняться вместе с ним; постоянная величина «на всякий случай» устаревает уже к следующей поставке.
- Период до следующей поставки. Партия должна покрыть спрос именно на этот период — если поставки раз в неделю, закупать на месяц вперёд нет смысла. Сам период обычно диктует поставщик своим графиком отгрузок, а не расчёт: возит по вторникам — значит, цикл недельный, и партия считается на неделю.
- Текущий остаток на складе. Партия = то, что нужно на период поставки, минус то, что уже есть. Без учёта остатка легко задвоить заказ.
- Страховой запас. Часть партии закладывается на случай задержки поставки или всплеска спроса сверх прогноза — подробнее об этом в статье «Страховой запас: как рассчитать и не переплатить за склад».
- Минимальная партия и кратность поставщика. У большинства поставщиков есть свои условия отгрузки — подробнее ниже, в отдельном разделе.
- Уровень сервиса. Чем выше целевой процент заказов без дефицита, тем больше должна быть партия (и страховой запас внутри неё) — это компромисс между риском упущенных продаж и излишками на складе.
- Срок годности. Для скоропортящихся товаров партия не может превышать объём, который реально продастся до истечения срока — даже если по чистому расчёту спроса можно было бы взять больше.
- Скидка за объём. Единственный фактор из этого списка, который толкает партию вверх не по потребности, а по деньгам: поставщик даёт лучшую цену от определённого объёма — подробнее ниже.
Ни один из этих факторов сам по себе не определяет размер партии — обычно они действуют одновременно и иногда противоречат друг другу (например, минимальная партия поставщика больше, чем реально нужно по прогнозу спроса). Прикиньте на своих цифрах: восемь факторов выше нужно свести по каждой паре «товар — поставщик» в каждом цикле заказа. Умножьте число позиций на минуту на позицию — получите часы в неделю. Сотня позиций это пара часов, тысяча — уже больше рабочего дня каждую неделю, и пересчёт перестаёт успевать за циклом поставки.
Минимальная партия, кратность и минимальный запас — что ограничивает партию снизу
До сих пор речь шла о том, что диктует спрос. Но у партии есть и нижние границы — часть их ставит поставщик, часть компания задаёт себе сама.
Ограничений снизу несколько, и путать их дорого: они приходят из разных мест и по-разному двигают партию.
Минимальная партия, она же MOQ
Минимальная партия — это наименьший объём, который поставщик готов отгрузить за один заказ. Если по расчёту спроса нужно 15 единиц, а минимальная партия у поставщика — 20, заказывать всё равно придётся 20: разница уйдёт в увеличение остатка, но это не ошибка расчёта, а условие, которое нельзя обойти.
В прайсах и коммерческих предложениях импортёров то же самое обозначают английской аббревиатурой MOQ (Minimum Order Quantity), в договорах на русском — «минимальная партия отгрузки». Разницы между терминами нет.
Кратность упаковки
Кратность — это шаг, которым отгружается товар (упаковка из 6 штук, ящик из 12, паллета из 48). Партия округляется вверх до ближайшего кратного значения — если расчёт даёт 27 единиц при кратности 12, заказ будет на 36, а не на 27.
На нашем печенье это выглядит так: расчётная партия — 89 упаковок, поставщик возит коробами по 12. 89 ÷ 12 = 7,4 короба, округляем вверх до 8 — в заказ уйдёт 96 упаковок. Семь лишних штук осядут в остатке и уменьшат следующую партию.
В типовой учётной системе полей под минимальную партию и кратность обычно нет — эти условия живут в прайсе поставщика и в переписке с менеджером. Завести их разом по всему ассортименту — не настройка, а проект на месяцы, поэтому начинают с топ-100 позиций по обороту: там и эффект заметнее, и данных меньше.
Минимальный запас — ограничение не от поставщика, а от себя
Минимальный запас нужен, когда товар должен лежать на полке независимо от спроса: витринный образец, позиция под ассортиментную матрицу, товар для постоянного клиента. Расчёт по прогнозу для таких позиций дал бы ноль, и ограничение снизу не даёт системе обнулить заказ.
Минимальная партия и кратность задаются для пары «поставщик — товар», минимальный запас — на сам товар: он не зависит от того, у кого закупаться. Дальше расчёт учитывает все три при каждом пересчёте.
Брать ли больше ради скидки за объём
Поставщик предлагает минус 7% от 300 упаковок, а по расчёту нужно 96. Соблазн понятный, но считать надо не экономию, а её остаток после расходов. Против скидки играет сразу несколько вещей: деньги, замороженные в товаре на месяцы вперёд; место на складе, которое займёт не эта позиция; риск списания, если у товара есть срок годности; и график отгрузок по остальным позициям этого поставщика.
Прикидка простая: посчитайте, на сколько дней продаж хватит увеличенной партии. 300 упаковок печенья при продажах 7 в день — это 43 дня.
Сравнивать эти 43 дня надо не с общим сроком годности, а с остаточным сроком на приёмке. Товар редко приезжает свежим с конвейера: часть срока съедают производство, склад поставщика и доставка, а сети вдобавок закрепляют в договоре минимальный остаточный срок и разворачивают машину, если он не выдержан. Сколько именно остаётся — вопрос к вашим последним приёмкам: посмотрите даты производства по приходам за месяц. Если из шестидесяти дней доезжает сорок, партия на 43 дня продаж уже уезжает в списание.
Важное замечание: у скидки за объём есть второй счёт, который обычно забывают. Партия на 43 дня при цикле поставок в две недели обнуляет три следующих заказа — машина к вам просто не поедет, а минимальная партия по остальным позициям этого поставщика за один заказ не наберётся. Замороженные деньги по одной позиции — половина счёта. Вторая половина: не ломает ли объём график отгрузок целиком.
Как это выглядит на практике: партия меняется вслед за спросом
Логика на простом примере — возьмём другую позицию того же отдела. Товар продавался стабильно, около 30 штук в неделю. После повышения розничной цены спрос осел до 24 штук. Прогноз пересчитался на новых продажах — снизился оптимальный запас на период поставки, а вместе с ним и партия в следующем заказе. Заказ никто не правил руками: изменение цены отразилось в фактических продажах, а те — в расчёте. Пример иллюстративный, не кейс конкретного клиента.
Это ключевое отличие автоматического расчёта от таблицы Excel с фиксированной формулой: партия не «зашита» один раз, а пересчитывается при каждом изменении входных данных — спроса, остатка, условий поставщика.
Пять ошибок при расчёте партии
- Подставить сегодняшний остаток вместо остатка на дату поставки. Партия выходит заниженной ровно на продажи за срок поставки — на нашем печенье это 21 упаковка из 89.
- Забыть вычесть остаток вообще. Заказ дублирует то, что уже лежит на складе, и позиция уходит в излишки на месяцы.
- Считать по средней за прошлый период вместо текущей динамики. Если спрос осел после повышения цены, средняя за квартал будет тянуть партию вверх ещё долго.
- Не завести MOQ и кратность в расчёт. Партия выглядит правильной на бумаге, но поставщик её не примет, и закупщик правит заказ руками — а это обнуляет смысл автоматического расчёта.
- Брать «на всякий случай» вместо расчёта. Круглое число вместо посчитанного — самый дорогой способ застраховаться: излишки видны сразу, а сэкономленные полчаса — нет.
Что нужно задать один раз, чтобы расчёт партии не расходился с реальностью
Чтобы автоматический расчёт партии совпадал с тем, что реально можно заказать и продать, нужно один раз описать четыре вещи про товар и поставщика — дальше система учитывает их при каждом пересчёте сама.
Базовые параметры расчёта — период до следующей поставки и целевой уровень сервиса. Это основа, от которой считается сам объём партии.

Срок годности — для скоропортящихся товаров партия не должна превышать объём, который успеет продаться до истечения срока. Например, для товара со сроком годности 7 дней система ограничивает размер партии этим сроком, даже если чистый расчёт спроса позволял бы заказать больше. В Forecast NOW! такой параметр задаётся один раз на товар или сразу на группу похожих товаров.

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

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

Здесь же видно, какая из двух границ сработала на конкретной позиции — минимальная партия или округление по кратности:

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

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

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

Важное замечание: без учёта минимальной партии и кратности расчёт может выглядеть правильным на бумаге, но не совпадать с тем, что реально можно заказать у поставщика. Разница вскрывается уже на этапе оформления заказа: поставщик не принимает нестандартный объём.
Когда этот расчёт не работает
У формулы есть входные условия, и честнее назвать их прямо, чем получить неверную партию и списать это на метод.
- У товара нет истории продаж. Новинка, сезонный завоз впервые, замена снятой позиции — считать не из чего. Первую партию берут по аналогу или по договорённости с поставщиком, а расчёт включают, когда наберётся история.
- В истории есть дефицит, и он не размечен — см. оговорку к среднему спросу в начале статьи.
- Спрос сдвинут промо. Недели с акцией — это не базовый спрос, а всплеск и последующий провал. В базу для средней они не идут, акционный объём считают отдельно.
- Учётная система не хранит нужного. Минимум, без которого расчёт не собрать: продажи по дням, остатки на дату и фактический срок поставки по каждому поставщику. Если этих трёх вещей нет, начинать надо с них, а не с формулы.
Частые вопросы
Партия заказа — это сколько?
Оптимальная партия заказа — это количество товара в одном заказе поставщику. Единого числа нет: оно рассчитывается для каждого товара исходя из ожидаемого спроса на период до следующей поставки, текущего остатка на складе и ограничений поставщика (минимальная партия, кратность упаковки).
Чем партия заказа отличается от оптимального размера заказа (EOQ)?
EOQ (формула Уилсона) — математическая модель, минимизирующая сумму затрат на хранение и на оформление заказа при допущении о равномерном спросе. Партия заказа на практике учитывает больше факторов сразу: реальные колебания спроса, срок годности, минимальные партии и кратность поставщика — то, что в чистой формуле EOQ не заложено. Подробнее про формулу — в статье «Оптимальный размер заказа».
MOQ — что это такое в торговле?
MOQ (Minimum Order Quantity) — минимальное количество товара, которое поставщик отгружает одним заказом. Ниже этой границы он либо не примет заявку, либо примет по другой цене. Для закупщика MOQ — это нижний предел партии: расчёт может говорить, что нужно 40 единиц, но при MOQ в 100 придётся либо брать 100, либо искать другого поставщика.
Что делать, если минимальная партия больше, чем успеет продаться?
Это самый частый конфликт на скоропорте: срок годности ограничивает партию сверху, минимальная партия поставщика — снизу, и границы расходятся. Вариантов три: договориться о меньшей отгрузке (обычно за счёт цены), разложить партию на несколько точек или складов, либо сознательно заложить списание и сравнить его со стоимостью дефицита. Расчёт сам этот конфликт не решает — он его показывает, а решение остаётся коммерческим.
Можно ли считать оптимальную партию в Excel?
Технически да, если факторов немного и товаров десятки. Но как только нужно одновременно учитывать спрос, сезонность, срок годности, минимальные партии и кратность по каждому из нескольких сотен или тысяч SKU — таблица перестаёт успевать за изменениями, и партия пересчитывается на основе устаревших данных.
С чего начать
Проверить, живёт ли ваш расчёт отдельно от спроса, можно за один вечер. Возьмите десять самых оборачиваемых позиций и посчитайте по формуле из начала статьи: средний спрос в день × дней до поставки, минус остаток на дату поставки, а не сегодняшний. Перед сравнением округлите расчёт вверх до кратности и поднимите до минимальной партии: сравнивать надо исполнимое с исполнимым. Иначе разницу даст округление, а не привычка — на нашем печенье 89 против 96 это уже 8%, а при коробе на 48 штук разрыв дошёл бы до 46% при полностью корректном заказе. Теперь сравните с тем, что заказали в прошлый раз. Если больше чем на трети позиций расхождение превышает 30%, заказ формируется не по потребности, а по привычке.
Направление расхождения подсказывает, что чинить первым. Если расчёт стабильно даёт больше, чем заказывали, — скорее всего, в заказ подставляли сегодняшний остаток вместо остатка на дату поставки. Если меньше — виновата средняя за прошлый период: спрос уже осел, а заказ считается по старым продажам.
Дальше стоит проверить два системных момента: учитывается ли реальная динамика спроса, а не средняя за прошлый период, и заведены ли минимальная партия и кратность для каждой пары «поставщик — товар». Именно на них чаще всего расходится расчёт с тем, что реально можно заказать.
Дальше это можно автоматизировать: Forecast NOW! пересчитывает партию по каждому товару при изменении спроса, остатка и условий поставки — без ручной правки таблиц. Разобраться в логике расчёта на своих данных можно на демонстрации или в расчёте для конкретного ассортимента.
