Все руководства

Автор 6 сентября 2026 г.8 минут чтения

Как спрогнозировать спрос на компоненты для пакетов продуктов

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

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

Этот пост — арифметика для этого, проработанная от начала до конца. Как Shopify представляет комплекты и уменьшает запас компонентов, описано в руководство по управлению запасами пакетов; этот предполагает, что снижение происходит, и имеет дело с решением о покупке, которое оно создает.

Почему пакеты нарушают прогноз

Каждый метод прогнозирования на этом сайте начинается со столбца прошлых продаж для одного SKU. Это работает, потому что для обычного продукта столбец продаж и движение запасов — это одно и то же событие, учитываемое один раз.

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

Колонка продаж свечи и движение акций свечи перестали быть одинаковыми в тот день, когда вы запустили пакет, содержащий ее.

Расчет

Спрос на компонент = продажи отдельных единиц + сумма по каждому комплекту, содержащему его, (продажа единиц комплекта × количество компонента в комплекте).

Сразу запишу. Чтобы сумма стала истинной, необходимо выполнение двух условий, и оба легко пропустить.

Автономная фигура должна быть автономной. Если номер, по которому вы звоните по отдельным продажам, уже включает единицы, потребляемые пакетами, при добавлении термина «пакет» эти единицы учитываются дважды. Это самая дорогая ошибка в этой теме, потому что она невидима: сумма выглядит больше, большие суммы кажутся более безопасными, а излишек заказа появляется раньше, чем кто-либо усомнится в методе. Какие цифры дает ваш отчет, это тема следующего раздела, и с этим стоит разобраться, прежде чем что-либо рассчитывать.

Все истории должны охватывать один и тот же период после запуска пакетов. Пакетные продажи обычно вытесняют некоторые отдельные продажи, а не добавляются к ним. Предположим, что свеча продавалась по 40 штук в неделю до того, как вы запустили двойную упаковку, и теперь продается по 35 штук в неделю, в то время как двойная упаковка продается по 10 штук в неделю. Пакет добавил 5 единиц реального спроса, а не 10; остальные 5 вышли из автономной колонки. Возьмите предстартовую автономную историю из 40 и добавьте сегодняшнюю полную розыгрыш пакета из 21, и вы получите 61 в неделю против реальных 56, что составляет примерно 9% максимум, что составляет 60 избыточных единиц в квартал и 420 долларов наличными при себестоимости единицы в 7 долларов. Используйте данные после запуска для обеих половин, и смещение уже будет обработано, поскольку оно встроено в отдельное число, которое вы читаете.

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

Проработанный пример

Один компонент, два пакета, двенадцать недель. Cedar & Fig, 250 г, продается отдельно, в подарочной упаковке Cedar & Fig (одна свеча в коробке) и в двойной мультиупаковке (две свечи в упаковке).

  • Автономный: 34, 36, 33, 35, 36, 34, 35, 37, 34, 36, 35, 35. Всего 420 единиц, по 35 в неделю.
  • Подарочная коробка: 6, 14, 9, 22, 5, 12, 8, 18, 7, 11, 10, 10. Итого 132 коробочки, 11 на неделю по одной свече.
  • Двойная упаковка: 4, 6, 5, 7, 3, 5, 6, 4, 5, 6, 4, 5. Итого 60 упаковок, по 5 в неделю по две свечи.

Спрос на компоненты = 420 + (132 × 1) + (60 × 2) = 420 + 132 + 120 = 672 единицы за двенадцать недель. Это 56 единиц в неделю, или 8,0 единиц в день в течение 84 дней, против 5,0 в день, предполагаемых собственными продажами свечи.

420

единиц, продаваемых на собственной странице продукта

252

единицы, потребляемые двумя пакетами

672

единицы, которые фактически сошли с полки

8.0

истинных единиц в день по сравнению с 5,0 в автономном режиме

Неделю за неделей разрыв меняется больше, чем предполагают средние показатели.

неделяАвтономныйИз пакетовИтого
1341448
2362662
3331952
4353671
5361147
6342256
7352055
8372663
9341751
10362359
11351853
12352055

Автономный столбец ни разу не достигает 38. Реальный недельный прирост достигает максимума на 71 на четвертой неделе, потому что два пакета нестабильны, а свеча - нет. Изменчивость компонента наследуется от пакетов, в которые он входит, поэтому стабильный SKU может начать вести себя как нестабильный, при этом ничего не изменится в продукте.

Теперь двойной счет, в тех же цифрах. Если ваша свечная цифра уже включает в себя единицы, управляемые пакетами, она будет равна 672, а не 420. В любом случае добавьте термин «пакет», и вы запланируете 924 единицы, 11 в день, что на 37,5% больше, чем потребляет магазин. За один двенадцатинедельный цикл это 252 избыточные свечи, 1764 доллара наличными при себестоимости единицы в 7 долларов, лежащие на полке, потому что поток был посчитан дважды.

Three demand streams feeding one component stock pool and one reorder pointThree boxes on the left each represent one way the same candle leaves the shelf over twelve weeks: standalone sales at thirty-five units a week for four hundred and twenty units, gift box sales at eleven a week using one candle each for one hundred and thirty-two units, and twin pack sales at five a week using two candles each for one hundred and twenty units. Arrows from all three converge on a single box in the middle labelled as one stock number, holding the combined six hundred and seventy-two units over the twelve weeks, or eight a day. A final arrow leads from there to one reorder point of one hundred and twenty-six units, calculated as eight units a day across a twelve-day lead time plus a thirty-unit safety buffer. The point of the picture is that there is only ever one pool and one trigger, however many streams drain it: forecasting the three streams as if each had its own stock would book the same candles three times over.Three streams. One stock number. One trigger.Cedar & Fig 250g, twelve weeks: 420 + 132 + 120 = 672 unitsStandalone, 35 a week420 unitsGift box, 11 a week1 candle each, 132 unitsTwin pack, 5 a week2 candles each, 120 unitsOne stock number672 units in 12 weeks8 a dayOne reorder point(8 × 12) + 30 = 126Plan the three streams separately and you buy for the same pool three times.
На фото нет ничего из комплекта поставки. Есть один пул свечей, а пучки - еще два крана по нему.

Получение данных из Shopify

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

Shopify документирует, что уровень запасов компонентов снижается при продаже комплекта. Чего мы не смогли найти задокументированного на страницах пакетов Shopify, так это того, как продажи пакетов атрибутируются в отчетах о продажах продуктов, и ответ может вполне отличаться для собственного приложения Shopify Bundles и сторонних пакетных приложений. Так что не принимайте общий ответ, в том числе и этот. Проверьте это:

  • Обратите внимание на текущее доступное количество компонента и его количество, проданное за день.
  • Разместите один реальный заказ на содержащий его комплект в известном количестве.
  • Проверьте доступное количество компонента, перемещенное на ожидаемую сумму.
  • Проверьте отчет о продажах по вариантам продукта за тот же день и посмотрите, изменилось ли количество единиц компонента или только пакета.

Если объем продаж компонента изменился, в вашем отчете уже указан совокупный спрос, а термин пакета будет учитываться дважды. Если переместился только пакет, фигура вашего компонента является автономной, и приведенный выше расчет применяется так, как написано. Десять минут, один раз для каждого пакетного приложения, и это решает вопрос для вашего магазина, а не для гипотетического.

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

Точки заказа компонентов

В формуле ничего не меняется. формула точки повторного заказа учитываются средние ежедневные продажи, время выполнения заказа и страховой запас; компонент пакета просто подает ему другой первый вход.

Кедр и инжир, 250 г, срок поставки 12 дней с буфером в 30 единиц:

  • Только отдельный спрос: (5×12) + 30 = 90 единиц.
  • Комбинированный спрос: (8×12) + 30 = 126 единиц.

Разрыв в 36 единиц между ними составляет четыре с половиной дня реального спроса по 8 единиц в день. Триггер, установленный на 90, не срабатывает громко; он срабатывает с опозданием на четыре с половиной дня в каждом цикле, и буфер поглощает разницу до тех пор, пока не наступит немного тяжелая неделя пакета, а он этого не делает. Это закономерность, лежащая в основе большинства дефицитов, связанных с пакетами: не неправильный метод, а правильный метод питает один из трех потоков.

Два практических замечания. Устанавливайте триггер для компонента, а не для комплекта, поскольку комплект не имеет собственного запаса, по которому можно было бы сработать. И пересчитывайте стоимость компонента всякий раз, когда пакет, содержащий его, добавляется, выводится из эксплуатации или переоценивается, поскольку каждый из них меняет одно из условий суммы.

Рекламные пакеты

Пакетное продвижение — это всплеск спроса на каждый компонент сразу, и компоненты ощущают его совершенно по-разному. Оценка размера поднятия описана в промоакции и прогнозирование запасов. Здесь важно то, как это приземлится.

Скажем, подарочная коробка продается по 40 в неделю в течение двух недель вместо 11. Розыгрыш свечи увеличивается с 56 в неделю до 85, то есть увеличение примерно вдвое. Триммер для фитиля в одной коробке вообще не продается отдельно, поэтому его тираж увеличивается с 11 в неделю до 40, то есть почти в четыре раза. Компонент с наименьшим самостоятельным спросом получает наибольший относительный удар от пакетной акции, и обычно это самый дешевый компонент, который никто не смотрит.

Далее следуют два правила. Прежде чем заказывать что-либо, преобразуйте рекламную акцию в компоненты, а не в комплекты. И сверяйте время выполнения каждого компонента с датой акции, потому что тот, который не может прибыть вовремя, ограничивает все, независимо от того, сколько всего остального вы купили.

Когда компонент является ограничением

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

Имея в наличии 210 свечей и 64 триммера, можно продать 64 подарочные коробки. Еще 200 свечей совершенно не меняют это число. Таким образом, порядок проверки пакета определяется по покрытию и времени выполнения, а не по стоимости: определите, сколько недель покрытия имеет каждый компонент в сравнении с его совокупным спросом, отсортируйте по возрастанию, и верхняя часть этого списка является реальным ограничением пакета. Часто это самая дешевая линия в коробке, поэтому ее редко рассматривают в первую очередь. Наблюдать за тем, как это число падает до того, как оно укусит, — это та же работа, что и прогнозирование дефицита до того, как он произойдет, применяется к компоненту, а не к продукту.

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

Часто задаваемые вопросы

Как рассчитать общий спрос на продукт, который продается отдельно и в пакетах?

Добавьте объем продаж отдельных единиц компонента к объему продаж каждого комплекта, который его содержит, и умножьте на количество единиц этого компонента, используемое в каждом комплекте. Компонент, продающий 420 единиц самостоятельно в течение двенадцати недель, плюс 132 подарочных коробки по одной, плюс 60 двойных упаковок по две в каждой, имеет истинный спрос в 672 единицы, а не 420. Чтобы эта сумма была правильной, необходимо соблюдать два условия: отдельная цифра не должна уже включать единицы, управляемые пакетами, и все три истории должны относиться к одному и тому же периоду после запуска пакетов.

Отображаются ли продажи комплектов в отчетах о продажах продуктов Shopify?

Проверьте это в своем магазине, а не доверяйте общему ответу. В документации по пакетам Shopify указано, что уровни запасов компонентов уменьшаются при продаже пакета, но мы не смогли найти на этих страницах заявления о том, как продажа учитывается в отчетах о продажах продуктов, и поведение может отличаться между собственным приложением Shopify Bundles и сторонними пакетными приложениями. Разместите один тестовый заказ на комплект, а затем посмотрите, изменилось ли количество единиц компонента в отчете о продажах по вариантам продукта. Этот единственный тест покажет вам, является ли ваша цифра компонента только автономной или уже включает в себя потребность в пакете, и от этого зависит все, что происходит дальше.

Как установить точку повторного заказа для компонента пакета?

Используйте ту же формулу точки повторного заказа, которую вы используете для всего остального, с объединенным спросом в качестве входных данных ежедневных продаж, а не с отдельным спросом. Для компонента, потребляющего 672 единицы в течение 84 дней, это 8 единиц в день, поэтому 12-дневный срок поставки дает 96 единиц потребности во времени плюс ваш резерв безопасности. Вместо этого при использовании автономной ставки 5 в день триггер будет установлен на уровне 60 плюс буфер, который сработает после того, как вы уже пересекли реальную ставку.

Что происходит с остальными компонентами, когда один из них заканчивается?

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

STOCKCUE

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

Установите StockCue на Shopify →
Шовон, инженер-программист в Devmerx

Shovon

Инженер-программист

Шовон пишет об операциях инвентаризации Shopify для Devmerx, студии, стоящей за StockCue: Inventory Forecast.

Нужна помощь с вашим магазином Shopify?

Devmerx создает и оптимизирует магазины Shopify для брендов DTC. Запишитесь на бесплатную 20-минутную консультацию.