Прогнозирование закупок в ресторане: от интуиции к алгоритмам
Закупать «на глаз» — значит постоянно выбрасывать деньги. Рассказываем, как внедрить алгоритмическое прогнозирование закупок и сократить food waste на 30%.
📑 Содержание
- Почему интуиция не работает
- Уровни прогнозирования
- Уровень 1: Историческое среднее
- Уровень 2: Взвешенное среднее с коэффициентами
- Уровень 3: ML-прогнозирование
- Что нужно для внедрения прогнозирования
- Реальный кейс: снижение food waste
- Как начать без дорогих систем
- Чек-лист для применения на практике
- Реальные кейсы и цифры
- Типичные ошибки
- Часто задаваемые вопросы
- Как быстро алгоритм начинает работать точно?
- Что делать, если у меня маленький ресторан и мало данных?
- Может ли алгоритм ошибаться из-за непредвиденных событий (например, пандемия или блокировка улицы)?
- Нужно ли мне менять поставщиков для работы с прогнозами?
- Как алгоритм учитывает акции и промо-активности?
- Безопасно ли передавать данные о продажах в облачные сервисы?
«Закажу как обычно» — самая дорогая фраза в ресторанном бизнесе. Шеф-повар, который закупает продукты «на глаз», систематически либо выбрасывает продукты, либо сталкивается с их нехваткой в пиковый момент.
Почему интуиция не работает
Человеческий мозг плохо учитывает одновременно:
- День недели и время года
- Погоду (в дождь заказов на доставку на 40% больше)
- Локальные события (концерт в 500 метрах = +60% трафика)
- Остатки на складе по каждой позиции
- Сроки годности
- Время доставки поставщика
Уровни прогнозирования
Уровень 1: Историческое среднее
Самый простой метод. Берём продажи за последние 4 недели в тот же день недели и выводим среднее.Пример: пятницы за 4 недели продали 45, 52, 48, 51 порцию стейка → закупаем на 50 порций.
Погрешность: 15–20%. Лучше, чем интуиция, но не учитывает тренды и сезонность.
Уровень 2: Взвешенное среднее с коэффициентами
Добавляем коэффициенты сезонности, праздников, погоды.Погрешность: 8–12%.
Уровень 3: ML-прогнозирование
Модель обучается на всей истории продаж с учётом десятков факторов. С каждой неделей точность растёт.Погрешность: 4–7%.
Что нужно для внедрения прогнозирования
Данные: минимум 3–6 месяцев истории продаж по блюдам. Без данных алгоритм не работает.
Связка с меню: каждое блюдо должно быть привязано к ингредиентам (ТК). Иначе прогноз продаж нельзя перевести в прогноз закупок.
Связка со складом: алгоритм должен знать текущие остатки, чтобы не заказывать то, чего и так достаточно.
Реальный кейс: снижение food waste
Московская сеть из 3 ресторанов итальянской кухни внедрила AI-прогнозирование:
- До: food waste 9% от выручки = 180 000 руб/месяц на выброс
- После 3 месяцев: food waste 3,5% = 70 000 руб/месяц
- Экономия: 110 000 руб/месяц
Как начать без дорогих систем
Шаг 1. Ведите учёт продаж по блюдам — в любой системе (даже в Excel, хотя это неудобно).
Шаг 2. Заведите ТК для всех блюд с нормами ингредиентов.
Шаг 3. Еженедельно анализируйте расхождение между прогнозом (историческое среднее) и фактом.
Шаг 4. Подключите систему с AI-прогнозированием как только наберёте 3+ месяца данных.
RestPilot начинает прогнозировать закупки сразу после подключения кассы, постепенно улучшая точность по мере накопления данных.
<!-- expansion-v1 -->
Чек-лист для применения на практике
Чтобы алгоритм прогнозирования работал корректно, недостаточно просто установить софт. Необходимо подготовить операционный процесс. Выполните следующие шаги перед запуском или для аудита текущей системы:
- Проведите инвентаризацию и очистку номенклатуры. Убедитесь, что в базе данных нет дублей (например, «Молоко 3.2%» и «Молоко 3,2%»). Алгоритм не сможет объединить остатки и продажи, если названия или артикулы различаются.
- Актуализируйте технологические карты (ТК). Проверьте, что вес ингредиентов в готовом блюде совпадает с реальностью. Если в системе указано 100 г курицы, а повара кладут 120 г, прогноз закупок будет занижен на 20%, что приведет к дефициту.
- Настройте учет списаний (Food Waste). Все испорченные продукты, ошибки поваров и пробные дегустации должны фиксироваться в системе. Если списания «летают мимо» учета, алгоритм будет думать, что продукт был продан, и в следующий раз предложит закупить меньше, чем нужно.
- Синхронизируйте каналы продаж. Убедитесь, что данные с маркетплейсов (Yandex.Eda, Delivery Club), собственной доставки и зала приходят в единую систему без задержек. Прогноз должен учитывать общий трафик, а не только офлайн-гостей.
- Загрузите календарь событий. Внесите в систему локальные мероприятия: фестивали в парках рядом, дни открытых дверей у партнеров, школьные каникулы и государственные праздники. Пометьте их как «высокий трафик» или «низкий трафик» в зависимости от вашей статистики.
- Установите минимальные пороги заказа у поставщиков. Настройте в системе минимальную сумму или объем партии для каждого поставщика. Алгоритм должен понимать, что заказывать 2 кг помидоров бессмысленно, если минимальная партия — 10 кг, и скорректирует прогноз на ближайшую неделю.
- Настройте зоны ответственности. Четко определите, кто подтверждает заказ: закупщик, шеф-повар или управляющий. Алгоритм дает рекомендацию, но человек должен иметь право (и обязанность) отклонить её при наличии форс-мажора (например, срыв поставки ключевым ингредиентом).
- Проведите «тестовый запуск» на одной категории. Не внедряйте прогноз сразу на всё меню. Начните с сухих продуктов или напитков, где сроки годности долгим, а вариативность низка. Оцените точность в течение месяца, прежде чем доверить алгоритму скоропортящиеся продукты (мясо, рыба, зелень).
- Обучите линейный персонал. Повара и бариста должны понимать, почему заказ пришел именно такой. Объясните, что это не микроменеджмент, а инструмент их помощи, чтобы не искать продукты в последний момент.
- Внедрите еженедельный аудит отклонений. Раз в неделю собирайте данные: что заказали по прогнозу, что продали, что списали. Анализируйте разницу. Если отклонение стабильно выше 10% по определенной группе товаров, ищите причину в данных или процессе, а не в алгоритме.
- Проверьте интеграцию с банком/бухгалтерией. Убедитесь, что сформированные заказы автоматически уходят поставщикам или формируются в PDF/Excel в нужном формате, чтобы не тратить время на ручную переписку.
- Создайте резервный фонд («буфер»). Для критически важных ингредиентов (специи, масло, основной белок) настройте в системе коэффициент запаса прочности (например, +5% к прогнозу), чтобы избежать ситуации «нет блюда» из-за небольшой погрешности модели.
Реальные кейсы и цифры
Кейс 1: Сеть кофеен с высоким оборотом (5 точек) Проблема: Ежедневная потеря свежей выпечки и молока. Шеф-кондитер закупал ингредиенты «на пессимистичный сценарий», боясь нехватки. Решение: Внедрение AI-прогноза с учетом погоды и дней недели. Результат:
- Снижение списания молочной продукции на 18%.
- Экономия: 45 000 руб./месяц на одну точку.
- Увеличение доступности хитовых десертов в пиковые часы (суббота 11:00–14:00) на 100% (ранее часто заканчивались к обеду).
- Оптимизация складских остатков дорогостоящего сырья на 30%.
- Освобождение 40% места в холодильных камерах, что позволило расширить ассортимент свежих салатов без закупки нового оборудования.
- Снижение риска списания из-за истечения срока годности охлажденного филе с 5% до 1,2%.
- Количество ситуаций «десерт закончился» снизилось с 8 раз в месяц до 0 раз.
- Рост выручки за счет реализации дополнительных позиций (cross-sell), которые ранее не закупались в достаточном объеме.
- Экономия времени закупщика: 5 часов в неделю вместо ручного расчета и звонков поставщикам.
Типичные ошибки
- «Мусор на входе — мусор на выходе». Самая частая ошибка — попытка заставить работать алгоритм на нечистых данных. Если в кассе не бьются чеки, если остатки на складе не инвентаризированы регулярно, прогноз будет абсурдным. Алгоритм не магический, он математический.
- Игнорирование сезонности и трендов. Использование только исторического среднего без учета меняющихся предпочтений гостей. Например, если в прошлом году летом был хитом один коктейль, а в этом году тренд сместился на другой, старый алгоритм будет закупать ингредиенты для устаревшего хита.
- Отсутствие гибкости поставок. Алгоритм может предложить ежедневные маленькие заказы (JIT — Just In Time), но если поставщик привозит товар раз в неделю и только от 50 000 руб., система окажется бесполезной. Нужно либо менять поставщиков, либо настраивать алгоритм под логистику текущих партнеров.
- Чрезмерное доверие без контроля. Полное делегирование закупки машине без участия человека. Алгоритм не знает, что завтра у главного поставщика забастовка водителей или что на складе сломался холодильник. Человеческий надзор необходим.
- Попытка прогнозировать всё подряд. Не стоит применять сложный ML-прогноз на товары с постоянным спросом (соль, сахар, бумага для салфеток). Для них достаточно простых правил пополнения по минимальным остаткам. Сложные модели нужны для позиций с волатильным спросом.
- Неучет потерь на производстве. Если повара «пересыпают» специи или режут мясо с большим обрезком, система считает, что продукт ушел в продажу. Со временем это создает систематическую погрешность, и ресторан будет хронически недопокупать продукты.
- Игнорирование маркетинговых активностей. Если вы планируете распродажу или акцию «2+1», но не внесли это в систему как событие, алгоритм предложит закупить стандартный объем, и вы останетесь без товара в момент пикового спроса.
Часто задаваемые вопросы
Как быстро алгоритм начинает работать точно?
Первые прогнозы (на основе исторического среднего) доступны сразу после загрузки данных за 3–4 недели. Однако точность ML-моделей (Уровень 3) стабильно высокая только после обучения на данных минимум за 3–6 месяцев. В первые 2 месяца работы рекомендуется держать коэффициент запаса прочности выше, так как модель «учится» на ваших специфических паттернах.Что делать, если у меня маленький ресторан и мало данных?
Если у вас нет истории продаж за полгода, используйте Уровень 2 (взвешенное среднее с коэффициентами) и ручную корректировку. Для маленьких заведений часто достаточно простого Excel-файла с формулами, который учитывает день недели и погоду. Сложные AI-системы окупаются, когда объем закупок и количество SKU (товарных позиций) достаточно велики, чтобы ошибки стоили дорого.Может ли алгоритм ошибаться из-за непредвиденных событий (например, пандемия или блокировка улицы)?
Да, алгоритм опирается на исторические данные. Резкие внешние шоки (force majeure) он не предсказывает. В таких ситуациях необходимо вручную корректировать прогноз или временно отключать автоматические заказы. Однако алгоритм быстро адаптируется к «новой норме» после нескольких недель работы в новых условиях.Нужно ли мне менять поставщиков для работы с прогнозами?
Не обязательно, но это помогает. Идеальный сценарий — поставщики, готовые работать с частыми небольшими поставками (2–3 раза в неделю) и имеющие API-интеграцию для автоматической передачи заказов. Если вы привязаны к поставщикам с еженедельными отгрузками, настройте алгоритм так, чтобы он генерировал один большой заказ раз в неделю, суммируя прогнозы на 7 дней.Как алгоритм учитывает акции и промо-активности?
Большинство современных систем позволяют вручную закладывать ожидаемый прирост продаж по конкретным блюдам. Вы можете указать: «В эту субботу мы делаем скидку 20% на ризотто, ожидаем рост продаж на 40%». Алгоритм включит этот коэффициент в расчет закупок ингредиентов для ризотто. Если этого не сделать, система закупит обычный объем, и вы потеряете прибыль из-за отсутствия товара.Безопасно ли передавать данные о продажах в облачные сервисы?
Да, если вы выбираете сертифицированных провайдеров. Данные о продажах не являются коммерческой тайной в том же смысле, что и финансовые отчеты или персональные данные клиентов. Однако важно проверять политику конфиденциальности провайдера: ваши данные не должны использоваться для обучения моделей конкурентов. В B2B-сегменте HoReCa это стандартная практика, защищенная договорами о неразглашении (NDA).Как вам статья?
Подпишитесь на обновления
Новые статьи по управлению рестораном — раз в неделю, без спама.
Автоматизируйте управление рестораном
RestPilot поможет снизить фуд-кост, автоматизировать склад и повысить рейтинг заведения
Попробовать бесплатно →