CRM-аналитика
CRM для продуктового ретейла с учётом привычной корзины и остатков
Время чтения: 5 мин
Уровень материала: Для экспертов
Содержание
Покупатель каждую неделю заказывает молоко, кофе и корм для кошки. Магазин предлагает повторить корзину, но молока нет в его районе, кофе доступен только с доставкой через три дня, а корм показывается в другой фасовке. Рекомендация угадала интерес, однако не помогла сделать покупку. Для продуктового ретейла это частая граница между хорошей аналитической идеей и работающим сервисом.
Привычная корзина — набор товаров или товарных потребностей, которые повторяются в покупках человека. Это не точная копия последнего заказа: разовый торт, подарок и закупка к празднику могут не иметь отношения к повседневному спросу. Локальная доступность означает возможность получить конкретный товар выбранным способом, в нужной точке и в подходящее время.
Сначала определите место исполнения заказа
В профиле может быть любимый магазин, но текущую корзину клиент собирает на дачу. Поэтому для рекомендации важнее подтверждённый контекст новой покупки: адрес или зона доставки, выбранная точка самовывоза, доступный интервал. Последний магазин используйте как предположение, которое пользователь может изменить.
Наличие товара на складе компании ещё не означает доступность для заказа. В документации Shopify отдельно описаны остатки в точке самовывоза и возможность перемещения туда товара из другой точки; перемещение влияет на ожидаемый срок получения. Практическое применение для продуктовой сети — проверять сочетание товара, места и срока, а не один общий признак «есть в наличии».
Если место неизвестно, покажите привычные категории и предложите выбрать магазин. Обещание «доставим сегодня» допустимо только после проверки соответствующих условий. Письмо может вести на предварительно собранную корзину, но сайт должен заново проверить цены и доступность, прежде чем клиент подтвердит заказ.
Выделите повторяющиеся потребности
Храните состав оплаченных и исполненных заказов: товар, количество, фасовку, цену, магазин, дату, возврат или исключение при сборке. SKU — идентификатор конкретной товарной позиции. Две фасовки одного корма обычно имеют разные SKU, хотя закрывают похожую потребность.
Для начала достаточно простого правила: выделить товары, повторившиеся в нескольких завершённых заказах за выбранный период. Затем уточнить интервал и количество. Две упаковки кофе могут отодвинуть следующую потребность по сравнению с одной. Механика пополнения запасов должна учитывать этот запас, а не напоминать всем через одинаковые семь дней.
Не превращайте отсутствие покупки в доказательство отсутствия интереса. Человек мог не купить молоко именно потому, что его не было. Если система видит недоступность, отделяйте пропущенный спрос от добровольного отказа. При малом числе заказов лучше предложить человеку самому закрепить список регулярных товаров.
Задайте правила замены до персонализации
Замена требует отдельного решения. Другая марка бумажных полотенец и другой состав детского питания — разные ситуации. Предпочтения по составу, ограничения и отказ от замен должны иметь больший приоритет, чем прогноз вероятности покупки. Не выводите чувствительные характеристики человека из состава корзины.
| Ситуация | Решение в рекомендации | Что проверить |
|---|---|---|
| Привычный товар доступен | Предложить повтор | Фасовка, цена и актуальное количество |
| Товар доступен только позже | Показать реальный срок | Подходит ли срок выбранной доставке |
| Есть разрешённый аналог | Предложить явную замену | Состав, цена за единицу и согласие на замену |
| Подходящего аналога нет | Убрать обещание наличия | Можно ли предложить уведомление о поступлении |
| Контекст магазина неизвестен | Запросить место получения | Не подставлен ли чужой или устаревший адрес |
Сравнивайте аналоги по цене за сопоставимую единицу: килограмм, литр или штуку. Более дешёвая упаковка может оказаться дороже по фактическому объёму. Алгоритм должен сохранять объяснимость: «Этот товар закончился; вот вариант, который вы разрешили предлагать» понятнее, чем незаметная подмена.
Проверьте прибыль всей корзины
Условный пример. После случайного распределения по 5 000 клиентов в каждой группе стандартная коммуникация принесла 1 000 заказов, а предложение привычной корзины — 1 100. При вкладе 400 рублей с заказа в контроле получаем 400 000 рублей. В тесте средний вклад после закупки, скидок, сборки и доставки снизился до 370 рублей: 1 100 × 370 = 407 000 рублей.
Если новый сценарий потребовал ещё 10 000 рублей дополнительных расходов на коммуникации, наблюдаемая разница составляет минус 3 000 рублей, хотя заказов стало на 10% больше. Это учебный расчёт; случайные колебания и неопределённость оценки нужно учитывать отдельно. Разовые затраты разработки покажите следующей строкой, не смешивая их с расходами одного периода.
Основная метрика — вклад за фиксированный срок на каждого распределённого клиента, включая тех, кто ничего не заказал. Дополнительно смотрите отмены из-за отсутствия товара, долю замен, обращения, среднее число недоступных позиций и отписки. Учитывайте все наблюдаемые покупки в сети, иначе переток из магазина в доставку будет выглядеть как новый спрос.
Не дайте эксперименту изменить условия контроля
Если сообщение быстро распродаёт небольшой остаток, контрольная группа тоже сталкивается с последствиями теста. Индивидуальная рандомизация уже не полностью разделяет условия. Возможны ограничение охвата или эксперимент по магазинам; во втором случае расчёт точности должен учитывать число магазинов и сходство покупателей внутри них.
Рабочая схема CRM Lab для первого запуска: одна зона доставки, ограниченный список регулярных категорий, прозрачные замены и сохранение причины исключения каждого товара. Через один заранее выбранный цикл наблюдения команда должна уметь ответить не только «сколько заказов пришло», но и «какую покупку стало проще завершить и сколько бизнес на этом заработал».
Источники
Shopify. Setting up pickup in store for online orders. Shopify Help Center. Проверено 23.09.2026.