Как прогнозировать спрос на маркетплейсе при помощи ML-модели. Читайте на Cossa.ru

18 мая 2022, 14:30

Как прогнозировать спрос на маркетплейсе при помощи ML-модели

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

Как прогнозировать спрос на маркетплейсе при помощи ML-модели

Рассказывает Ярослав Кобозев, UA-аналитик Flowwow.

Вводные

Flowwow — это маркетплейс локальных магазинов и брендов: у нас на платформе 6000+ активных магазинов, где заказывают цветы, сладости, выпечку, необычные подарки, хендмейд, картины и многое другое.

  1. У нас очень высокий процент повторных покупок: около 65% клиентов делают заказы более 3–4 раз. Это значит, что рекламу мы должны настраивать на две разные группы: новых клиентов и тех, кто совершает повторные покупки. Поэтому все наши данные будут автоматически биться на группы: «для первых покупок» и «для повторных покупок».

  2. Поскольку тематика наших товаров по большей части подарочная, мы очень зависим от сезонных пиков. Например, 8 марта — главный день для флориста, как и День матери, который празднуют в конце ноября. Май–июнь — сезон клубники, а декабрь — сезон елей. Нам нужна модель, которая точно предскажет объёмы заказов в пиковые периоды, чтобы мы могли рассчитывать рекламные бюджеты к праздникам.

МегаФон ПроБизнес

Получите Кешбэк 100% за запуск рекламы с МегаФон Таргетом!

Узнать больше >>

Реклама. ПАО «МегаФон». ИНН 7812014560. ОГРН 1027809169585

Шаг 1. Сегментируем базу

Наши базовые данные по заказам: сумма чека, дата и время покупки.

Будем рассматривать эти данные отдельно для трёх групп клиентов: новых (совершивших первую покупку), вернувшихся (совершивших вторую покупку) и лояльных (совершивших 3 и более покупок). При прогнозировании поведения лояльных нам также важен такой параметр, как частота возвращений: клиент, который заказывает у нас раз в месяц, и клиент, который вспоминает о нас раз в год, — это два очень разных случая.

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

Кроме того, будем учитывать закономерности, которые характеризуют наши данные:

  • цикличность. Клиент N каждый год делает подарок жене именно в этот день — годовщина свадьбы, день рождения;

  • день недели. В будни заказывают чаще, чем в выходные. Самый популярный день — понедельник.

Шаг 2. Ставим задачи

Из имеющихся данных нам было бы интересно выжать ответы на следующие вопросы.

  • Сколько нам нужно закупать рекламы, чтобы привлечь максимальное число новых покупателей, а лояльных побудить совершить ещё одну покупку?

  • Как меняется качество повторных заказов? Каков их средний чек?

  • Какова наша стоимость привлечения клиента, CAC (customer acquisition cost). Интересно узнать не только абсолютное значение этого показателя, но и его динамику в зависимости от количества привлекаемых клиентов.

И не забыть учесть погрешности! Как правило, прогноз по выручке сбывается на уровне +/- 1–3%. Прогноз по ДРР (доле рекламных расходов) — в пределах +/- 1 процентного пункта*

*Не путать с процентом! Если в первый месяц ДРР составил 10%, а во второй — 12,5%, то разница в ,5 процентного пункта, а не процентах.

Ответы на эти вопросы найти несложно: просто посчитать вручную в гугл-таблицах. В результате мы видим, что новые клиенты совершают покупки в определённом узком ценовом диапазоне (пока тестируют сервис, выбирают для начала что-то не очень дорогое). А у повторных заказов средний чек выше минимум на 20%, больший процент покупок с высоким чеком.

Вот две гистограммы, которые показывают распределение среднего чека по новым и повторным покупкам. Сразу бросается в глаза, что у повторных средний чек выше, более плотное распределение в диапазоне от 2 до 4 тысяч рублей.

Шаг 3. Выбираем инструменты анализа

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

Мы выбрали работать с RStudio Cloud. Нас в этой модели привлекли три особенности.

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

  • Гибкость. Модель можно менять в зависимости от желания и задач исследователя, регулировать чувствительность модели к изменению данных.

  • Простота. Данные подаются очень прозрачно, можно легко интерпретировать данные регрессии.

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

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

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

Шаг 4. Формулируем и проверяем гипотезы

Для удобства возьмём наиболее простой и спокойный месяц года без сезонных пиков и прогнозируемых провалов. Например, апрель или октябрь.

Допустим, средний показатель CAC в апреле прошлого года — 600 рублей, и за этот месяц мы привлекли 10 000 клиентов. Гипотетически: что будет, если в следующем году в апреле мы захотим привлечь в 2 раза больше клиентов? Как тогда изменится стоимость привлечения клиента?

Строим гипотезы: что может происходить с CAC, если мы захотим привлекать в 2 раза больше клиентов?

  1. CAC останется прежней. Эта гипотеза срабатывает, если приращивать привлечение новых клиентов постепенно — скажем, на 10%.

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

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

Мы провели исследование методом регрессионного анализа. У нас накоплена статистика относительно каждого месяца: сколько было рекламных затрат и сколько удалось привлечь клиентов.

Проанализировав данные помесячных рекламных трат и применив метод регрессионного анализа, мы выяснили, что в нашем случае верна третья гипотеза: по мере увеличения рекламных охватов CAC именно растёт.

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

Далее происходит всё большее рекламное насыщение: «горячие» покупатели уже не приходят, тогда вступает в игру рекламный таргет: специализированная реклама на нашу целевую аудиторию, например, мужчин 35–40 лет со средним и высоким уровнем дохода. Таргетированная реклама чуть менее эффективная и достаточно дорогая, поэтому мы начинаем тратить больше рекламных бюджетов — но она всё равно даёт результат.

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

ML-модель хороша ещё тем, что она легко предсказывает объём покупок в ближайший сезонный пик. CAC в сезонные пики в 2,5–3 раза ниже, чем в пики, потому что это фактически работа с готовым спросом. Чтобы получить прогноз, мы анализируем закупку трафика в предыдущие месяцы и строим прогноз по повторным заказам.

Вот графики прогноза и фактического значения:

Модель в целом адекватно передаёт динамику показателя; сезонный пик предсказан, и это отлично. Заметны отклонения по дням, но нас они не очень интересуют. Главное, чтобы средняя ошибка была как можно ближе к нулю на всём прогнозном промежутке. То есть, в один день ошибка +400 заказов, в другой — −450. Итоговая ошибка составит всего 50 заказов — для нас вполне приемлемая погрешность.

На нашем графике ошибка составила всего −0,8 п.п. по доле рекламных расходов: модель предсказала чуть большее количество повторных покупок, чем было на самом деле, но погрешность в пределах допустимого для нашего бизнес-процесса.

Советы и примечания

  • Можно анализировать данные, опираясь на динамическую когорту (условно, клиентская база X на какой-то %). Но важно понимать, что такой способ не учитывает лояльность. Клиент, который с нами 5 месяцев или уже 5 лет — это два разных кейса.

  • Следите за тем, чтобы модель не начала страдать от мультиколлинеарности: если модель будет использовать слишком много информации, нам придётся исправлять данные с помощью метода уменьшения размерности.

  • Вдумчиво работайте с атрибуцией: у рекламы из многих каналов бывает отложенный эффект. Человек увидел рекламу давно, а покупку совершил позже.

Что в результате

Благодаря ML-модели мы научились с высокой точностью прогнозировать число повторных заказов и, как следствие, оптимизировать маркетинговые затраты относительно поставленных целей.

Контроль за рекламными расходами. Средний показатель ДРР у нас держится на уровне 7-10% (7 — ближе к пикам, 10 — в более холодные месяцы).

Разумное распределение бюджета по каналам. Мы отслеживаем сравнительную эффективность рекламных каналов (такие показатели, как ДРР, LTV, CAC) — и на основе этих данных принимаем решение о том, какой должен быть наш маркетинг-микс: как распределять бюджет, чтобы повышать эффективность затрат.

Но сама по себе аналитика — не панацея. Данные дают опору для всего штата маркетинга, который каждый день работает над эффективностью рекламы. Мы продумываем креативы, тонко настраиваем рекламные кампании, находим новые эффективные зацепки для аудитории. А аналитика позволяет нам оценивать нашу работу и принимать решения о том, куда двигаться дальше.

Мнение редакции может не совпадать с мнением автора. Ваши статьи присылайте нам на 42@cossa.ru. А наши требования к ним — вот тут.

Телеграм Коссы — здесь самый быстрый диджитал и самые честные обсуждения: @cossaru

📬 Письма Коссы — рассылка о маркетинге и бизнесе в интернете. Раз в неделю, без инфошума: cossa.pulse.is

✉️✨
Письма Коссы — лаконичная рассылка для тех, кто ценит своё время: cossa.pulse.is