Каждый оформленный заказ в вашем магазине — это готовая подсказка от покупателя: он своими руками собрал корзину и показал, какие товары в его голове идут в комплекте. К дрели берут набор свёрл, к смартфону — чехол и стекло, к краске — валик и малярную ленту. Проблема в том, что эти подсказки обычно лежат мёртвым грузом в таблице заказов и никак не влияют на витрину.
Эта статья — о том, как на 1С-Битрикс превратить историю заказов в рабочий инструмент: проанализировать корзины, найти товары, которые покупают вместе, и показать их в карточке товара и корзине так, чтобы вырос средний чек. Разберём метрики, механику расчёта и связь с 1С. Если анализ данных из учётной системы для вас узкое место, его закрывает услуга аудита и оптимизации 1С.
Коротко
- Анализ корзины ищет не топ продаж, а пары и наборы товаров внутри одного заказа.
- Данные берутся из заказов модуля «Интернет-магазин» (sale.order и строки заказа) через D7.
- Связи оценивают по метрикам: поддержка, достоверность и особенно лифт — он отделяет реальную связь от популярности.
- Расчёт выносят в агент или cron, витрина отдаёт готовые рекомендации из кэша, а эффект меряют через средний чек и A/B-тест.
Зачем знать, что покупают вместе
Рост выручки в магазине идёт двумя путями: привести больше покупателей или получить больше с каждого. Первый путь дорогой — трафик стоит денег и конкуренции. Второй почти бесплатный: покупатель уже пришёл и уже готов платить, нужно лишь вовремя предложить сопутствующий товар. Анализ корзины отвечает ровно на этот запрос — что предложить, чтобы человек добавил ещё одну позицию.
Важно, что предложение должно быть уместным. «К этому товару часто берут» работает только тогда, когда рекомендация действительно связана с покупкой, а не набита случайными хитами каталога. Поэтому в основе хорошего кросс-сейла лежат не догадки маркетолога, а реальные данные заказов — то, что покупатели уже подтвердили рублём.
Что такое анализ корзины
Анализ корзины (в англоязычной практике — market basket analysis) — это поиск закономерностей в составе заказов. Он работает не с отдельными товарами, а с транзакциями: каждый заказ рассматривается как набор позиций, и по всей истории считается, какие товары регулярно встречаются в одних и тех же корзинах.
Результатом становятся ассоциативные правила вида «если в корзине A, то часто есть и B». В отличие от обычного рейтинга продаж, такой анализ находит связи, а не популярность. Товар может продаваться средне, но почти всегда идти в паре с другим — и эту пару стоит показывать вместе.
Что можно получить на выходе
- Рекомендации в карточке. Блок «с этим товаром покупают» на реальных данных, а не на ручных связках.
- Допродажи в корзине. Уместное предложение сопутствующего перед оформлением.
- Готовые комплекты. Наборы товаров, которые и так берут вместе, оформленные как единое предложение.
- Идеи для акций. Скидка на пару, которую покупают вместе, поднимает и её, и связанные позиции.
Откуда брать данные в 1С-Битрикс
Источник данных для анализа — оформленные заказы модуля «Интернет-магазин». В терминах D7 это сущности продаж из пространства имён Bitrix\Sale: заказ (Order) и его корзина со строками-позициями (Basket, BasketItem). По каждому заказу мы получаем список товаров, а по всей истории — множество транзакций для анализа.
Технически выборку удобно строить на D7-ORM: она даёт типизированный доступ к таблицам заказов и позиций и позволяет собрать пары «заказ — товар» одним-двумя запросами без ручного SQL. Как устроен этот слой и почему он предпочтительнее старого API, мы разбираем в статье про D7 ORM в 1С-Битрикс.
Метрики: поддержка, достоверность, лифт
Чтобы отличить настоящую связь от случайного совпадения, используют три метрики ассоциативных правил. Без них легко принять за закономерность то, что просто оба товара популярны.
| Метрика | Что показывает | Как читать |
|---|---|---|
| Поддержка (support) | Как часто набор встречается во всех заказах | Отсекает слишком редкие пары |
| Достоверность (confidence) | Вероятность купить B, если купили A | Показывает силу правила A→B |
| Лифт (lift) | Во сколько раз связь сильнее случайной | Больше 1 — реальная связь |
Главная метрика для рекомендаций — лифт. Он нормирует связь на популярность: если оба товара просто ходовые, их совместная покупка вероятна и без всякой связи, и лифт это учитывает. Пара с высоким лифтом и достаточной поддержкой — то, что стоит показывать; пара с большой достоверностью, но лифтом около единицы — скорее иллюзия из-за популярности.
Как считать связи между товарами
Полноценные алгоритмы поиска ассоциативных правил (например, Apriori или FP-Growth) перебирают частые наборы товаров. Но для большинства магазинов не нужен тяжёлый математический аппарат — достаточно попарного подсчёта, который считается простым проходом по заказам.
- Соберите транзакции. По каждому состоявшемуся заказу — список ID товаров.
- Посчитайте пары. Для каждого заказа переберите пары товаров и увеличьте счётчик их совместных встреч.
- Посчитайте одиночные частоты. Сколько раз встречается каждый товар по отдельности — это база для лифта.
- Вычислите метрики. Для каждой пары — поддержку, достоверность и лифт.
- Отфильтруйте. Отбросьте пары ниже порога поддержки и лифта, оставьте топ связей на каждый товар.
- Сохраните результат. Готовые рекомендации по каждому товару — в отдельную таблицу или кэш.
Такой расчёт линеен и хорошо масштабируется, если ограничить размер корзины и порог поддержки. Разовые тяжёлые выгрузки и сложную аналитическую логику поверх учётных данных удобно собирать в связке с автоматизацией на 1С, когда часть отчётности живёт на стороне учётной системы.
Где показывать рекомендации
Найти связи — половина дела; вторая половина — показать их там, где покупатель готов добавить товар. У каждой точки контакта своя логика.
- Карточка товара. Классический блок «с этим покупают» — работает на этапе интереса, когда человек изучает позицию.
- Корзина. Предложение сопутствующего перед оформлением ловит момент готовности платить и часто даёт лучший отклик.
- Страница «спасибо за заказ». Мягкий дозаказ забытого расходника без давления на решение о покупке.
- Письма после покупки. Напоминание о сопутствующих товарах, у которых заканчивается срок или ресурс.
Не заваливайте покупателя: две-четыре по-настоящему релевантные позиции работают лучше, чем длинная лента «похожего». Качество связи важнее их количества.
Комплекты и наборы из данных
Если два-три товара покупают вместе особенно часто, их логично оформить как готовый комплект. Покупателю удобнее взять набор в один клик, а магазину проще управлять маржой и остатками набора. Данные анализа корзины подсказывают, какие комплекты собирать, чтобы они действительно продавались, а не пылились.
В 1С-Битрикс наборы реализуются штатными средствами торгового каталога или через свою логику формирования комплекта в корзине. Ключевое — чтобы состав и цена набора корректно уходили в учётную систему при обмене, иначе склад и себестоимость разойдутся. Логику продаж и склада под такие сценарии удобно выстраивать вместе с автоматизацией продаж и склада на 1С.
Фоновый расчёт: агенты, cron, кэш
Главное правило производительности — никогда не считать связи в момент показа страницы. Тяжёлый проход по истории заказов выносится в фон, а витрина работает только с готовым результатом.
- Агент или cron. Ночью задание пересчитывает связи по свежим заказам и обновляет таблицу рекомендаций.
- Отдельное хранилище. Результат складывается в свою таблицу «товар → рекомендации» с индексом по товару.
- Кэш витрины. Блок рекомендаций кэшируется, чтобы карточка не дёргала базу на каждый показ.
- Окно данных. Учитывайте последние месяцы, а не всю историю, чтобы рекомендации не отставали от ассортимента.
Такой подход держит витрину быстрой при любом объёме заказов. О том, как правильно ставить регулярные задания и не превратить cron в источник проблем, мы пишем в материале про CI/CD и деплой на 1С-Битрикс, где заодно разбираем управляемое выкатывание таких фоновых задач.
Связь с 1С и товарными данными
Рекомендация бесполезна, если предложенный товар нельзя купить: он снят с продажи, нет в наличии или у него уехала цена. Поэтому анализ корзины связывают с актуальными товарными данными из 1С — наличием, ценой и статусом активности.
На практике это означает фильтрацию готовых рекомендаций перед показом: из набора связей на лету убираются позиции без остатка и неактивные товары, а цена подставляется актуальная. Наличие и цены приходят на сайт обменом, поэтому корректность рекомендаций упирается в качество интеграции — эту часть закрывает автоматизация на 1С. Надёжность обмена и остатков напрямую зависит и от инфраструктуры, о которой мы рассказываем в статье про хостинг и инфраструктуру BitrixVM.
Как измерять эффект
Внедрять рекомендации «на веру» нельзя — эффект нужно измерять деньгами. Базовые показатели, за которыми стоит следить:
- Доля заказов с рекомендацией. Сколько заказов содержат товар, добавленный из блока «покупают вместе».
- Средний чек. Сравнение чека с рекомендациями и без них.
- Добавления в корзину из блока. Кликабельность и конверсия самого блока рекомендаций.
- Выручка на сессию. Итоговый показатель, на который влияет кросс-сейл.
Самый честный способ — A/B-тест: одной части аудитории показываем рекомендации на основе анализа корзины, другой — прежний блок, и сравниваем средний чек и добавления. Так вы отделяете эффект рекомендаций от сезонности и общего роста.
Частые ошибки
- Рекомендуют по популярности. В блок попадают хиты каталога без реальной связи с товаром — лифт игнорируется.
- Считают на лету. Тяжёлый расчёт в момент показа страницы тормозит карточку под нагрузкой.
- Не фильтруют наличие. Рекомендуют товар, которого нет в продаже, и покупатель упирается в тупик.
- Берут все заказы подряд. Отменённые и тестовые корзины искажают связи.
- Показывают слишком много. Длинная лента «похожего» размывает внимание вместо точечного предложения.
- Не обновляют связи. Рекомендации устаревают вместе с ассортиментом и сезоном.
- Не измеряют результат. Блок висит «для галочки», а влияние на чек никто не проверяет.
Чек-лист внедрения
- Определены источники. В анализ идут только состоявшиеся заказы модуля «Интернет-магазин».
- Метрики заданы. Пороги поддержки и лифта выбраны, рекомендации ранжируются по лифту.
- Расчёт фоновый. Связи считает агент или cron, результат лежит в отдельной таблице.
- Витрина из кэша. Блок рекомендаций читает готовые данные и кэшируется.
- Фильтр по наличию. Перед показом убираются неактивные и отсутствующие товары, цена актуальна.
- Точки показа выбраны. Карточка, корзина и письма подключены осознанно, без перегруза.
- Эффект измеряется. Настроены средний чек, доля заказов с рекомендацией и A/B-тест.
Вывод
История заказов — недооценённый актив магазина. Каждая корзина уже содержит знание о том, что покупают вместе, и анализ корзины превращает это знание в рекомендации, комплекты и рост среднего чека. На 1С-Битрикс всё для этого есть: данные заказов в модуле «Интернет-магазин», D7 для выборки, агенты и кэш для фонового расчёта.
Секрет не в сложной математике, а в дисциплине: считать связи по состоявшимся заказам, опираться на лифт, обновлять данные фоново, фильтровать по наличию и измерять результат деньгами. Сделайте это один раз аккуратно — и магазин начнёт продавать больше тем же покупателям, без единого рубля на дополнительный трафик.