Skip to content

Структура и термины

Правила блока состоят из следующих элементов:

  • Алгоритм;
  • Условие;
  • Действие;
  • A/B-тест.

Компонуя эти элементы в цепочки (блок-схемы, если по-программистски), вы можете создать миллионы комбинаций правил для решения всех возможных задач вашего бизнеса и не привлекать для этого команду разработки. Совсем.

Алгоритмы

Алгоритм

Алгоритмы выбирают из базы данных товары, соответствующие правилам алгоритма и сортируют их в особом порядке. Внутри алгоритма используются несколько слоев сортировки и фильтров:

  • Фильтр по цели алгоритма;
  • Сортировка по персонализации;
  • Сортировка по sales rate;
  • Сортировка по маржинальности;
  • Сортировка по пользовательскому профилю;
  • Сортировка по сезонности;
  • И так далее (еще с десяток фильтров и сортировок).

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

Популярные

Возвращает товары, сортируя их по sales rate (это внутренний показатель ценности товара в NCE, учитывающий продаваемость, цену и маржу). Sales rate рассчитывается по продажам товаров за 1 месяц. Период может быть изменен в настройках магазина. Подробнее о расчётах можно прочитать здесь.

Похожие

Товары, которые находятся в тех же категориях, что и текущий просматриваемый товар (сравнивается весь список переданных категорий), и находятся в диапазоне цен от 85% до 125% от текущего товара. Если товаров в таком ценовом сегменте недостаточно для того, чтобы заполнить блок, разброс цен увеличивается до 50–150%. Дополнительно могут быть применены фильтры по параметрам товара.

Учёт совпадений параметров товаров

При поиске похожих товаров, их параметры фильтруются на стороне бэкенда. Однако, учитываются не все параметры, а только простые. Параметры в виде сложных структур (например, массивы или JSON) не используются при сравнении товаров в рамках алгоритма.

С этим товаром также покупают

Товары, которые чаще всего встречаются в других заказах, в которых встречается текущий просматриваемый товар. То есть статистически рассчитанные сопутствующие товары.

Периоды расчёта:

  1. 1 неделя
  2. 2 недели
  3. 1 месяц
  4. 2 месяца
  5. 3 месяца
  6. 6 месяцев
  7. 1 год

Вы недавно смотрели

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

Период расчета: 14 дней.

С товарами в вашей корзине также покупают

Алгоритм, аналогичный «С этим также покупают», но применяемый ко всей текущей корзине покупателя. Чаще всего блок с таким алгоритмом показывают на странице корзины.

Периода расчета: при посещаемости выше 300К визитов/мес - 1 месяц, при посещаемости меньше 300К визитов/мес - 3 месяца.

Искавшие это также купили

Алгоритм, который анализирует выполненный поисковый запрос и то, какие товары покупали другие покупатели, которые выполняли такой же поисковый запрос. Размещается на странице с результатами поиска. Внимание: товары из этого алгоритма не всегда соответствуют самому поисковому запросу (например, пользователь искал „samsung galaxy” и в процессе купил не только этот смартфон, но еще и холодильник, батарейки и пылесос). Поэтому рекомендуется выводить его только тогда, когда полный поиск вернул пустой результат.

Периода расчета: при посещаемости выше 500К визитов/мес - 1 неделя, при посещаемости меньше 500К визитов/мес - 2 недели.

У вас скоро закончится

Для регулярно потребляемых товаров (FMCG). Рассчитывает периодичность, с которой покупатель заказывает один и тот же товар и прогнозирует, когда товар закончится у покупателя и пора пополнить запасы. Может выводиться в корзине или личном кабинете. Для расчёта среднего периода покупки берется выборка заказов за последние три месяца. Алгоритм будет возвращать товар в течение прогнозируемого временного окна, когда ожидается следующий заказ. Это окно рассчитывается на основе среднего времени между повторными покупками для данного товара или пользователя.

Новинки

Товары, отмеченные в фиде как «Новинка».

Определенные товары

Возможность указать определенные товары, которые нужно показать покупателю.

Выбрать нужные товары можно с помощью поля, в которое нужно ввести id, а затем выбрать товар из появившегося списка.

Определённые товары

Собственные рекомендации

Показывает сопутствующие товары, если они заданы ритейлером. Если в фиде передается тег accessories с сопутствующими товарами, то выводятся эти товары.

Частично похожие

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

Ранее вы добавляли эти товары в корзину

Показывает товары, которые пользователь добавлял в корзину.

Периода расчета: 30 дней

С этим товаром также смотрят

Показывает товары, которые просматривали другие пользователи, после того, как посмотрели данный товар.

Периода расчета: 1 день

Следующая лучшая покупка

Показывает товары, которые лучше всего подходят для следующей покупки.

Популярные товары в категориях

Формирует блок с товарами заданной категории. В этот блок попадают самые популярные из них.

Задать нужные категории можно в поле "Источники данных". Доступные опции:

  1. Категории, в которых пользователь просматривал товары
  2. Категории, в которых пользователь добавил товары в корзину
  3. Категории, в которых пользователь добавлял товары в избранное
  4. Категории, в которых пользователь оформлял заказ
  5. Ручной ввод - выбор из списка имеющихся категорий

Популярные товары в категориях

Вам это будет интересно

Алгоритм позволяет отобразить товары, которые потенциально могут заинтересовать пользователя. К перечню товаров применяются бусты, они позволяют отдавать приоритет определённым категориям.

Сейчас покупают

Показывает товары с наибольшим объёмом покупок за последний период (по умолчанию 24 часа). Список периодов доступен в отдельном меню, которое появляется при выборе алгоритма из списка.

Доступные опции: 1 час, 3 часа, 6 часов, 12 часов, 1 день, 3 дня, 1 неделя.

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

Настройка товарных рекомендаций

Наиболее активные

Алгоритм отбирает товары с которыми пользователь наиболее активно взаимодействовал за определённый период.

При выборе алгоритма из списка появляются два поля дополнительных настроек, которые позволяют задать тип взаимодействия и период (в днях).

Тип взаимодействия - это событие, которое фиксируется в Clickhouse. Доступные опции:

  1. Просмотр
  2. Добавление в корзину
  3. Удаление из корзины
  4. Покупка
  5. Добавление в избранное
  6. Удаление из избранного

Настройки алгоритма

Сейчас в избранном

Рекомендации ограничены категориями из wish-листа пользователя. Если у пользователя нет товаров в wish-листа, блок рекомендаций не будет показан.

Если у блока есть другие входящие категории (для блока заданы дополнительные фильтры), то будут показаны те из них, что пересекаются с wish-листом.

Условия

Условие

Условия позволяют проверить некоторые характеристики профиля покупателя, его поведение, характеристики товара или внешних параметров и в зависимости от этого использовать тот или иной алгоритм. Например, можно проверить, есть ли текущий просматриваемый товар в корзине у покупателя и, в зависимости от этого, применить алгоритм «Сопутствующие товары» (если в корзине) или «Похожие» (если еще не в корзине).

УсловиеПараметрыЧто делает
Товар и категория:
Цена на текущий товарРавно, больше чем, меньше чем, междуПроверяет цену просматриваемого товара на соответствие диапазону, выбранному в параметрах
Текущий товар в корзинеДа / НетПроверяет, находится ли просматриваемый товар в корзине
Идентификатор текущего товараСодержит / Не содержитПроверяет, содержит или не содержит ID просматриваемого товара ID, заведенному в параметрах
Бренд, к которому относится товарРавно / Не равно [Список брендов]Проверяет, совпадает или не совпадает бренд просматриваемого товара с брендом, выбранным в параметрах
Текущая категория содержитСодержит / Не содержит [Список категорий]Проверяет, совпадает или нет просматриваемая категория с категорией, выбранной в параметрах. Рекурсивно проверяет все дочерние категории
Текущая категория равнаДа / Нет [Список категорий]Проверяет точное совпадение совпадение категории продукта с категорией,указанной в настройках правила. Не работает с дочерними категориями продукта
Принадлежит ли текущий товар к категорииСодержит / Не содержит [Список категорий]Проверяет, совпадает или не совпадает категория просматриваемого товара с категорией, выбранной в параметрах
Принадлежит ли товар в корзине к категорииСодержит / Не содержит [Список категорий]Проверяет, принадлежат ли товары в корзине категории выбранной в параметрах
Есть ли в корзине товар из просматриваемой категорииДа / НетПроверяет, есть ли в корзине товар из просматриваемой категории
Наличие товаров в корзинеДа / НетПроверяет, есть ли в корзине товары
Текущий товар содержит параметрПоле для ввода параметра [ Равно, не равно, содержит, не содержит, меньше чем, больше чем]Проверяет наличие параметра в свойствах товара
Мерчант, к которому относится товарДа / НетПроверяет относится ли товар к мерчанту, который пользователь выбирает из списка при настройке условия
Пользователь:
Пол пользователяРавно / Не равноПроверяет пол текущего клиента на соответствие параметрам
День рожденияРавно, больше чем, меньше чем [Диапазон]Проверяет день рождения пользователя на соответствие параметрам
Уровень доходаРавно / Не равноПроверяет уровень дохода клиента на соответствие параметрам
Пользовательский сегментРавно / Не равноПроверяет, соответствует ли текущий клиент заранее настроенному сегменту
Как долго существует профиль пользователя-- // --Проверяет время существования профиля с момента захода на сайт
ЗарегистрированДа / НетПроверяет, зарегистрирован ли клиент. Проверяется по наличию переданного ID пользователя
Есть карта лояльностиДа / НетПроверяет наличие карты лояльности
УстройствоСодержит / Не содержитПроверяет, с какого устройства клиент зашел на сайт
ГеографияСодержит / Не содержитПроверяет, с какого города клиент по данным из CDP
Карта лояльности выдана в ... (город)Содержит / Не содержитПроверяет, в каком городе выдана карта лояльности
Свойства профиляСписок свойствПроверяет передаваемое свойство профиля
Тег профиляСписок теговПроверяет передаваемый тег профиля
Действия:
Оформлял заказы в выбранный период (в днях)Временные периодыПроверяет, оформлял ли заказы за выбранный период
Сколько оформил заказов за выбранный периодРавно, больше чем, меньше чем, между [Диапазон]Проверяет, сколько оформил заказов за выбранный период
Посмотрел товар определенной категорииСодержит / Не содержит [Список категорий]Проверяет, товары из каких категорий смотрел клиент за выбранный период
Добавил в корзину товар определенной категорииСодержит / Не содержит [Список категорий]Проверяет, добавлял ли клиент в корзину товары из категории, выбранной в параметрах, за выбранный период
Купил товар определенной категорииСодержит / Не содержит [Список категорий]Проверяет, покупал ли клиент товары из категории, выбранной в параметрах, за выбранный период
Посмотрел товар брендаСодержит, не содержит [Список брендов]Проверяет, смотрел ли клиент товары бренда, выбранного в параметрах, за выбранный период
Добавил в корзину товар брендаСодержит, не содержит [Список брендов]Проверяет, добавлял ли клиент в корзину товары бренда, выбранного в параметрах, за выбранный период
Купил товар брендаСодержит, не содержит [Список брендов]Проверяет, покупал ли клиент товары бренда, выбранного в параметрах, за выбранный период
Одежда и обувь:
Размер обувиРавно, больше чем, меньше чем, между [Диапазон]Проверяет, размер обуви клиента на соответствие размеру, выбранному в параметрах
Размер рубашки / блузыРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер футболкиРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер нижнего бельяРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер брюкРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер пиджака / жакетаРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер носковРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер ремняРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер головного убораРавно, больше чем, меньше чем, между [Диапазон]-- // --
Размер перчаткиРавно, больше чем, меньше чем, между [Диапазон]-- // --
Дети:
Количество детейРавно, больше чем, меньше чем, между [Диапазон]Проверяет количество детей на соответствие количеству, выбранному в параметрах
Возраст ребенкаРавно, больше чем, меньше чем, между [Диапазон]Проверяет возраст ребенка на соответствие выбранному в параметрах
Пол ребенкаРавно / Не равноПроверяет пол ребенка на соответствие выбранному в параметрах
Программа лояльности:
Статус-- // --Проверяет статус программы лояльности на соответствие выбранному в параметрах
БонусыРавно, больше чем, меньше чемПроверяет число бонусов на соответствие выбранным в параметрах
Бонусов до следующего уровняРавно, больше чем, меньше чемПроверяет число бонусов на соответствие выбранным в параметрах

Это еще не все

Список условий постоянно пополняется и эта документация не может описать все возможности. Смотрите актуальный список условий в редакторе блоков рекомендаций.

Фильтры алгоритмов

Фильтр алгоритма

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

ФильтрНастройкиЧто делает
Показать товары только из выбранных категорийСписок категорийВыбирает товары только из категорий, переданных в настройках фильтра
Не показывать товары из выбранных категорийСписок категорийНе показывает товары из категорий, переданных в настройках фильтра
Показывать товары только из категории текущего товараДа / НетПодбирает товары с одинаковым списком категорий
Показывать из категорий, в которых пользователь просматривал товары-Выбирает товары из категорий, в которых пользователь смотрел товары
Показывать товары из категорий, добавленных пользователем в корзину-Выбирает товары из категорий, в которых пользователь добавлял товары в корзину
Показывать товары из категорий, купленных пользователем ранее-Выбирает товары из категорий, в которых пользователь покупал товары
Показывать товары, совпадающие по параметруСписок параметров текущего просматриваемого товараВыбирает товары, которые содержат аналогичные значения выбранных параметров у просматриваемого товара
Не показывать товары, совпадающие по параметрамСписок параметров текущего просматриваемого товараВыбирает товары, которые не содержат аналогичные значения выбранных параметров у переданного в запросе товара
Показывать товары, соответствующие бренду просматриваемого товараДа / НетПоказывает или исключает товары того же бренда, что и просматриваемый товар
Показывать товары из той же корневой категорииДа / НетВыбирает товары только из той корневой категории, в которой находится просматриваемый товар
Не показывать выбранные товарыСписок товаровИсключает выбранные товары из показа
Показывать товары в ценовом диапазонеМинимальная и максимальная ценаПоказывает товары, которые соответствуют выбранному ценовому диапазону
Показывать доступные в указанном количествеМинимальное и максимальное количествоПоказывает товары, которые соответствуют выбранному в диапазоне количеству
Показывать только в соответствии со статистикой-Выбирает товары из статистики совместных покупок за месяц. Статистика выводится на странице просмотра информации о товаре
Показывать товары только выбранных брендовСписок брендовПоказывает товары, которые содержат бренд из списка
Не показывать товары выбранных брендовСписок брендовНе показывает товары, которые содержат бренд из списка
Товары со скидкойДа / НетПоказывает или исключает товары, которые содержат «старую» цену
Не использовать прогрессивную персонализацию-Не учитывает алгоритмы прогрессивной персонализации в ранжировании товаров (по характеристикам профиля покупателя: пол, возраст, дети, домашние животные, и так далее)
Только определенного полаСписок половПоказывает товары, соответствующие выбранному полу
Показывать товары, отмеченные как новинкиДа / НетПоказывает или исключает товары, для которых был передан флаг «Новинка»
По прибылиБольше чем, Меньше чем, Равно и поле для суммыОтфильтровывает товары больше, меньше или равные определённой сумме
Размер скидкиЗначения от 0 до 100Отфильтровывает товары по размеру скидки в указанном диапазоне
Показывать товары только выбранных мерчантовСписок мерчантовОтфильтровывает товары по принадлежности к выбранному мерчанту
Не показывать товары выбранных мерчантовСписок мерчантовТовары мерчанта, выбранного из списка при настройке фильтра, не будут показаны
Показывать товары, соответствующие мерчанту просматриваемого товараДа / НетВ рекомендации попадут товары того же мерчанта, что и у просматриваемого товара
Взаимодействовал с товаромСписок с периодами взаимодействия от 1 часа до 1 годаБудут показаны только те товары, с которыми пользователь взаимодействовал в течение установленного периода
Не показывать товары из избранного-Фильтр исключает товары, находящиеся в списке избранного (wishlist) у пользователя.
Минимальная стоимость товара для достижения суммы в корзинеПоле для ввода данныхНазначение фильтра - показывать товары, цена которых не превышает разницы между заданным пороговым значением и текущей суммой корзины пользователя
Показывать из категорий, в которых пользователь добавил товар в избранное-Фильтр ограничивает категории показа товарами из категорий, ранее добавленных пользователем в избранное (wishlist)
Показывать товары, соответствующие значениям выбранного параметраПоле для ввода параметров и поле для значенийФильтр добавляет фильтрацию по переданным значениям параметров, например: размеру, цвету и т.п.
Не показывать товары, соответствующие значениям выбранного параметраПоле для ввода параметров и поле для значенийФильтр исключает из результатов товары, соответствующие заданным значениям параметров
Показывать товары выбранной маржинальностиБольше чем/Меньше чем/равно и поле для значенийФильтруются товары по диапазону маржинальности, переданному в параметрах
Исключить товары из той же группы, что и текущая-Исключаются из выдачи товары с тем же значением group_id, как и у текущего товара
Сортировать по рейтингуОпции По возрастанию и По убываниюСортировка результатов по параметру rating в заданном порядке (возрастающем или убывающем)
Игнорировать входящие параметры-Фильтр очищает все ранее установленные фильтры, категории и сортировки и начинает подбор товаров для блока
Не показывать из категорий, в которых пользователь просматривал товары-Фильтр исключает товары из категорий, которые пользователь просматривал, но не купил
Не показывать товары из категорий, купленных пользователем ранее-Исключаются товары из категорий, в которых пользователь уже совершал покупки
Не исключать ранее купленные товары-Фильтр позволяет не исключать ранее купленные товары, чтобы они снова отображались в рекомендациях
Не исключать находящиеся в корзине товары-Фильтр разрешает отображать в рекомендациях товары, которые уже находятся в корзине у пользователя
Не показывать товары из категорий, добавленных пользователем в корзину-Исключаются товары из категорий из которых пользователь добавил товары в корзину

Это ещё не всё

Список фильтров постоянно пополняется и эта документация не может описать все возможности. Смотрите актуальный список фильтров в редакторе блоков рекомендаций.

Механика расчёта прибыльности

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

Общая выручка за период группируется по уникальному идентификатору товара (item_uniqid).

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

Для расчёта прибыли товар должен присутствовать как в данных о маржинальности, так и в данных о выручке. То есть, считаются только проданные товары с известной маржой.

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

Действия

Действие

Действия позволяют применить ко всему блоку определенные изменения: отсортировать полученные товары в определенном порядке или переименовать название блока рекомендаций (ту часть, которую будет видеть покупатель).

Переименовать заголовок блока

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

В форме два блока: Заголовок блока и Сссылка.

Данные, помещённые в эти поля используются на этапе рендеринга HTML-шаблона. На этом этапе подставляются рекомендации, а также заголовок и ссылка.

Пересортировать товары

Отсортировывает товары, которые вернули алгоритмы выше этого элемента, в соответствии с выбранным правилом:

  • По выручке, которую принес каждый товар за месяц (↑↓)
  • По количеству заказов товара за месяц (↑↓)
  • По стоимости товара (↑↓)
  • Отсортировать равномерно. Сортирует и фильтрует товары так, чтобы в выдаче не доминировала одна конкретная категория.

A/B-тест

A/B-тест

Запускает A/B-тестирование веток в блоке. При добавлении элемента A/B-тест текущая ветка правил дублируется и в начале дерева правил появляется элемент A/B-тестирования. Вы можете изменить одну из веток и потом сравнивать эффективность каждой ветки.

Подробнее об A/B-тестировании блоков рекомендаций читайте в разделе «A/B-тестирование».