Аналитическое исследование влияния поведенческих метрик на конверсию в покупку
| Параметр | Значение |
|---|---|
| Цель | Выявить факторы, влияющие на конверсию, и сформулировать рекомендации для маркетинга |
| Данные | 5.28 GB сырых событий → 4.16 млн сессий (файл 2019-Oct.csv) |
| Период | 14 дней октябрь 2019 г. |
| Инструменты | Polars (lazy/streaming), Pandas, scikit-learn, statsmodels, Matplotlib |
- Обработка данных: Фильтрация, парсинг времени, агрегация по сессиям с использованием Polars для работы с большими данными.
- Проверка гипотез: 6 гипотез проверены статистическими тестами (t-test, chi-square, z-test, Kruskal-Wallis).
- Моделирование: Логистическая регрессия с балансировкой классов (
class_weight='balanced') для оценки силы влияния факторов (Odds Ratio). - Интерпретация: Все выводы подкреплены как статистической значимостью (p-value), так и бизнес-логикой.
| Этап | Описание |
|---|---|
| Предобработка | Очистка, фильтрация, агрегация сессий |
| Гипотеза 1: Цена | Влияние цены товара на конверсию |
| Гипотеза 2: Просмотры | Глубина просмотра и вероятность покупки |
| Гипотеза 3: День недели | Разница конверсии будни/выходные |
| Гипотеза 4: Время суток | Взаимосвязь времени и типа дня |
| Гипотеза 5: Просмотры по дням | Различия в поведении по дням недели |
| Гипотеза 6: Категории | Влияние категории товара на покупку |
| Модель прогнозирования | Логистическая регрессия: прогноз и интерпретация |
| Фактор | Инсайт | Метрика / Статистика |
|---|---|---|
| Просмотры | 4-5 просмотров максимизируют конверсию; «прямые заходы» (0 просмотров) конвертируются в 11× чаще | OR = 3.3 для 4-5 просмотров; OR = 11.4 для 0 просмотров |
| Время суток | Утро (06-12) — пик конверсии; вечер (18-24) стабильно низкий | Конверсия утром на 30% выше, чем вечером |
| Категории | Electronics — драйвер выручки (60%); Apparel требует аудита | Electronics: 9% конверсия; Apparel: 2.5% конверсия |
| Фактор | Почему не значимо | Бизнес-интерпретация |
|---|---|---|
| Цена товара | Медианы идентичны (191 vs 192 у.е.), разница в средних — артефакт выбросов | Не сегментировать аудиторию по цене товара |
| День недели | Разница будни/выходные всего 0.51 п.п. (эффект мал) | Не создавать отдельные стратегии под выходные |
| Глубина по дням | Медиана просмотров не различается по дням недели | Не корректировать контент-план по дням |
| Категория товара | Cramér's V = 0.107 (связь слабая) | Категория — вспомогательный фактор, не требует отдельных стратегий |
- Сегментация «прямых покупок»: Кто эти пользователи? (источник трафика, новые/возвращающиеся)
- Часовой пояс: Данные в формате сервера (вероятно, UTC). Сдвиг на +3/+4 часа может объяснить высокую «ночную» и низкую «вечернюю» конверсию
- User-level анализ: Проверка устойчивости выводов при группировке по
user_idвместо сессий - Расширение признаков: Добавление
device,source,basket_size,time_on_siteдля улучшения модели
1. Оптимизировать воронку под 4-5 просмотров
- Зачем: Конверсия растёт в 3.3×, после 5 просмотров — плато
- Действие: Внедрить рекомендации «похожие товары», триггеры «вы смотрели», упрощённую навигацию
- Прогноз: +15-20% к конверсии без увеличения трафика
2. Выделить аудиторию «прямых заходов» (0 просмотров)
- Зачем: Конверсия в 11× выше — это «горячие» клиенты, им не нужен прогрев
- Действие: Исключить эту группу из ремаркетинговых кампаний с «прогревающим» контентом
- Прогноз: −30% затрат на неэффективный ремаркетинг
3. Сместить рекламный бюджет на утренние часы (06-12)
- Зачем: Конверсия утром статистически значимо выше
- Действие: Увеличить ставки в контекстной рекламе и таргете на утреннее время
- Прогноз: +7-10% к ROI рекламных кампаний
4. Провести аудит категории Apparel
- Зачем: Большой трафик, но конверсия 2.5% (в 3-4 раза ниже средней)
- Действие: Проверить цены, ассортимент, качество посадочных страниц, соответствие трафика
- Прогноз: Потенциал роста конверсии в 2-3× при устранении барьеров
5. Снизить бюджет на вечерние показы (18-24)
- Зачем: Стабильно наименьшая конверсия (5.0-5.2%)
- Действие: Перераспределить бюджет на утро или протестировать специальные «вечерние» офферы
- Прогноз: Экономия бюджета без потери продаж
| Метрика | Значение | Интерпретация |
|---|---|---|
| ROC-AUC | 0.68 | Модель различает покупателей лучше случайного угадывания (0.5) |
| Recall (покупка) | 0.72 | Находим 72% реальных покупок (важно для таргетинга) |
| Precision (покупка) | 0.11 | Типично для дисбаланса 7%: из предсказанных «купит» реально покупает каждый 9-й |
Примечание: Категории
medicine,stationery,country_yardисключены из модели (критически мало покупок: 47, 143 и 27 соответственно).
| Фактор | Odds Ratio | Интерпретация |
|---|---|---|
| Прямая покупка (0 просмотров) | 11.4× | Шанс покупки в 11.4 раза выше базового уровня (вечер) |
| Категория Electronics | 2.2× | Шанс покупки в 2.2 раза выше, чем в базовой категории |
| Категория Appliances | 1.6× | Шанс покупки в 1.6 раза выше |
| Утро (06-12) | 1.3× | Шанс покупки на 30% выше, чем вечером |
| Ночь (00-06) | 1.2× | Шанс покупки на 20% выше, чем вечером |
⚠️ Важно: Модель предсказывает вероятность, а не гарантию. Низкий Precision обусловлен сильным дисбалансом классов (7% покупок), что типично для e-commerce. Для аналитической задачи важнее интерпретация коэффициентов (Odds Ratio), чем бинарные предсказания.
Исходные данные: 5.3 GB сырых событий → фильтрация за 14 дней, парсинг времени, агрегация по сессиям.
Результат: 4.16 млн сессий, 13 категорий товаров, метрики: просмотры, добавления в корзину, покупки, цена, время суток, тип дня.
-
Типичный чек не различается между группами
- Медианная цена в сессиях с покупкой — 191 у.е., без покупки — 192 у.е.
- Разница в 1 у.е. не имеет практического значения
-
Распределение по ценовым сегментам практически идентично
- Бюджетный сегмент: 29% (нет покупки) vs 25% (покупка) — разница 4 п.п.
- Средний сегмент: 23% vs 26% — разница 3 п.п.
- Премиум и люкс сегменты: доли совпадают с точностью до 1 п.п.
- Несмотря на статистическую значимость (p < 0.0001, chi-square), различия носят систематический характер: в группе покупки чуть больше среднего сегмента, в группе без покупки — чуть больше бюджетного
-
Средние значения вводят в заблуждение
- Средняя цена (~318 у.е.) значительно выше медианы (191-192 у.е.) из-за редких дорогих товаров
- Правосторонняя скошенность распределения (2.04) делает среднее чувствительным к выбросам
- Статистическая значимость по t-test (p < 0.0001) — артефакт огромной выборки (4.16 млн сессий)
-
Цена не является ключевым фактором конверсии
- Основная масса сессий (бюджетный + средний сегменты) составляет 52-54% в обеих группах
- Доля дорогих товаров (премиум + высокий премиум + люкс) практически одинакова: 48% (нет покупки) vs 48% (покупка)
-
Сфокусироваться на других факторах
- Цена товара не оказывает значимого влияния на принятие решения о покупке
- Анализ стоит направить на поведенческие метрики: количество просмотров, время на сайте, категории товаров
-
Не использовать среднюю цену как KPI для сравнения групп
- При скошенных распределениях среднее некорректно отражает типичное значение
- Для отслеживания ценовых метрик использовать медиану или анализировать распределение по сегментам
-
Учитывать смещение в бюджетном и среднем сегментах
-
Покупатели чуть чаще выбирают товары из среднего ценового сегмента (100-200 у.е.)
-
Непокупатели чуть чаще остаются в бюджетном сегменте (0-100 у.е.)
-
Разница небольшая (3-4 п.п.), но может указывать на незначительный ценовой порог входа
-
-
Количество просмотров — сильный предиктор покупки
- Пользователи с 4-5 просмотрами совершают покупку в 3.3 раза чаще, чем с 1 просмотром
- Эффект проявляется уже при 2-3 просмотрах (OR = 3.2)
-
Существует оптимальное количество просмотров
- Максимальная конверсия достигается при 4-5 просмотрах
- После 5 просмотров дополнительного роста не происходит (OR стабилизируется на уровне 3.1)
-
Прямые покупки (0 просмотров) — отдельный сценарий
- Пользователи, пришедшие по прямой ссылке или повторно, показывают аномально высокую конверсию
- Шанс покупки в 36 раз выше, чем у пользователей с 1 просмотром
-
Распределение сильно скошено
- Медиана просмотров: 3 (покупка) vs 2 (нет покупки)
- Среднее значение искажено выбросами (max > 1000 просмотров)
- Биннинг позволил стабилизировать оценки и получить интерпретируемые бизнес-метрики
-
Оптимизировать воронку под 4-5 просмотров
- Удерживать пользователя до 4-5 просмотров товаров
- После этого порога дополнительные просмотры не увеличивают конверсию
-
Выделить "прямые покупки" в отдельную аудиторию (пока как предположение, требуется больше данных)
- Пользователи с 0 просмотров — это целевые клиенты, пришедшие готовыми к покупке
- Для них не требуются ремаркетинговые кампании с прогревающим контентом
-
Использовать количество просмотров как скоринговый фактор
-
Включать в модели прогнозирования конверсии
-
Вес фактора должен учитывать нелинейность: максимальный вклад после 4-5 просмотров
-
-
Конверсия в будни выше, чем в выходные
- Будни: 7.07%
- Выходные: 6.56%
- Разница: +0.51 п.п. (будни лучше на 7.8% относительно)
-
Разница статистически значима
- Z-статистика: 20.24
- p-value < 0.0001
- При выборке 4.16 млн сессий эффект устойчив
-
Трафик распределен неравномерно
- Будни: 57% сессий
- Выходные: 43% сессий
-
Адаптировать предложение под выходную аудиторию
- В выходные пользователи могут быть в режиме "исследования" без намерения покупать
- Тестировать акции, скидки, ограниченные по времени предложения
-
Усилить ремаркетинг в начале недели
- Возвращать пользователей, которые были активны в выходные, но не купили
-
Утро эффективнее дня в любой день недели
- Будни: утро (8.74%) vs день (6.68%) — разрыв 2.06 п.п.
- Выходные: утро (8.05%) vs день (5.51%) — разрыв 2.54 п.п.
-
Ночь эффективнее вечера в любой день недели
- Будни: ночь (7.29%) vs вечер (5.21%) — разрыв 2.08 п.п.
- Выходные: ночь (5.87%) vs вечер (5.03%) — разрыв 0.84 п.п.
-
Ночная аудитория в будни — неожиданно высокая конверсия
- 7.29% — третий показатель среди всех 8 групп
- Уступает только утренним сессиям (будни и выходные)
-
Вечер — наименее эффективное время в любые дни
- Будни вечер: 5.21%
- Выходные вечер: 5.03%
- Оба показателя в антитопе
-
Основной бюджет — на утро (будни и выходные)
- Максимальная конверсия в обеих группах
- Наиболее эффективное окно для рекламных кампаний
-
Ночные кампании в будни — точечно
- Высокая конверсия при меньшем объеме трафика
- Подходит для таргетинга на узкую аудиторию
-
Сократить бюджет на вечер
- Самая низкая конверсия во все дни
- Особенно критично в выходные (5.03% при 191k сессий)
-
Пересмотреть качество дневного трафика в выходные
- 634k сессий, конверсия 5.51% — один из худших показателей
- Возможно, привлечение нецелевой аудитории
-
Медианное количество просмотров не различается по дням недели
- Пользователи просматривают одинаковое количество товаров вне зависимости от дня
- Покупатели в будни и выходные смотрят одинаково больше, чем пользователи без покупок.
-
Проведение пост-хок тестов нецелесообразно
- Даже при статистических различиях в хвостах, медианы одинаковы
- Эффект не имеет бизнес-значимости
- Не корректировать стратегии вовлечения по дням недели
- Количество просмотров не требует дневной оптимизации
-
Electronics — абсолютный лидер
- Конверсия 9%, выручка 834 млн (60% от всей)
- Драйвер бизнеса, требует защиты и удержания
-
Computers — скрытый потенциал
- Самый высокий чек ($487), но конверсия 5.4%
- Улучшение UX может дать рост выручки без увеличения трафика
-
Apparel — главная проблема
- Низкая конверсия (2.5%) и низкий чек ($100)
- При большом трафике (178k сессий) результат минимальный
- Требует аудита: цены, ассортимент, качество трафика
-
Детальнее разобрать 3 категории с минимальным кол-вом покупок
- Неправильное логирование?
- Новые категории?
- Нерелевантные?
-
Связь категории с покупкой статистически значима, но слабая
- Chi² = 18963.6, p < 0.0001
- Крамера V = 0.107 (слабый эффект)
- Категория важна, но не является главным фактором конверсии
| Приоритет | Категория | Действие |
|---|---|---|
| P0 | electronics | Защищать, удерживать лидерство |
| P1 | computers | Улучшить UX, добавить обзоры |
| P2 | apparel | Аудит: почему не покупают? |
| P3 | sport, furniture | Нишевый таргетинг |
Подтвердить выводы гипотез и оценить относительную силу факторов.
Логистическая регрессия с балансировкой классов.
| Метрика | Значение |
|---|---|
| ROC-AUC | 0.68 |
| Recall (покупка) | 0.72 |
| Фактор | OR |
|---|---|
| Прямая покупка (0 просмотров) | 11.4 |
| Категория Electronics | 2.2 |
| Категория Appliances | 1.6 |
| Утро (06-12) | 1.3 |
| Ночь (00-06) | 1.2 |
- Модель подтверждает: просмотры и время суток — ключевые факторы
- Цена и день недели не влияют на предсказание
- Категория товара дает вклад, но значительно меньший
Детали: notebooks/final_model.ipynb