Skip to content

Liza-VETA1104/ecommerce-conversion-analysis

Repository files navigation

Маркетинговый анализ e-commerce

Аналитическое исследование влияния поведенческих метрик на конверсию в покупку

О проекте

Параметр Значение
Цель Выявить факторы, влияющие на конверсию, и сформулировать рекомендации для маркетинга
Данные 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 для улучшения модели

Бизнес-рекомендации

Приоритет P0 (Внедрить немедленно)

1. Оптимизировать воронку под 4-5 просмотров

  • Зачем: Конверсия растёт в 3.3×, после 5 просмотров — плато
  • Действие: Внедрить рекомендации «похожие товары», триггеры «вы смотрели», упрощённую навигацию
  • Прогноз: +15-20% к конверсии без увеличения трафика

2. Выделить аудиторию «прямых заходов» (0 просмотров)

  • Зачем: Конверсия в 11× выше — это «горячие» клиенты, им не нужен прогрев
  • Действие: Исключить эту группу из ремаркетинговых кампаний с «прогревающим» контентом
  • Прогноз: −30% затрат на неэффективный ремаркетинг

Приоритет P1 (Протестировать)

3. Сместить рекламный бюджет на утренние часы (06-12)

  • Зачем: Конверсия утром статистически значимо выше
  • Действие: Увеличить ставки в контекстной рекламе и таргете на утреннее время
  • Прогноз: +7-10% к ROI рекламных кампаний

4. Провести аудит категории Apparel

  • Зачем: Большой трафик, но конверсия 2.5% (в 3-4 раза ниже средней)
  • Действие: Проверить цены, ассортимент, качество посадочных страниц, соответствие трафика
  • Прогноз: Потенциал роста конверсии в 2-3× при устранении барьеров

Приоритет P2 (Сократить / Пересмотреть)

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 соответственно).

Топ-5 факторов по силе влияния (Odds Ratio)

Фактор 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 категорий товаров, метрики: просмотры, добавления в корзину, покупки, цена, время суток, тип дня.

Гипотеза 1: Существует ли разница в цене товаров между сессиями с покупкой и без покупки?

Посмотреть блокнот

Выводы

  1. Типичный чек не различается между группами

    • Медианная цена в сессиях с покупкой — 191 у.е., без покупки — 192 у.е.
    • Разница в 1 у.е. не имеет практического значения
  2. Распределение по ценовым сегментам практически идентично

    • Бюджетный сегмент: 29% (нет покупки) vs 25% (покупка) — разница 4 п.п.
    • Средний сегмент: 23% vs 26% — разница 3 п.п.
    • Премиум и люкс сегменты: доли совпадают с точностью до 1 п.п.
    • Несмотря на статистическую значимость (p < 0.0001, chi-square), различия носят систематический характер: в группе покупки чуть больше среднего сегмента, в группе без покупки — чуть больше бюджетного
  3. Средние значения вводят в заблуждение

    • Средняя цена (~318 у.е.) значительно выше медианы (191-192 у.е.) из-за редких дорогих товаров
    • Правосторонняя скошенность распределения (2.04) делает среднее чувствительным к выбросам
    • Статистическая значимость по t-test (p < 0.0001) — артефакт огромной выборки (4.16 млн сессий)
  4. Цена не является ключевым фактором конверсии

    • Основная масса сессий (бюджетный + средний сегменты) составляет 52-54% в обеих группах
    • Доля дорогих товаров (премиум + высокий премиум + люкс) практически одинакова: 48% (нет покупки) vs 48% (покупка)

Рекомендации

  1. Сфокусироваться на других факторах

    • Цена товара не оказывает значимого влияния на принятие решения о покупке
    • Анализ стоит направить на поведенческие метрики: количество просмотров, время на сайте, категории товаров
  2. Не использовать среднюю цену как KPI для сравнения групп

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

    • Покупатели чуть чаще выбирают товары из среднего ценового сегмента (100-200 у.е.)

    • Непокупатели чуть чаще остаются в бюджетном сегменте (0-100 у.е.)

    • Разница небольшая (3-4 п.п.), но может указывать на незначительный ценовой порог входа


      Гипотеза 2: Влияние количества просмотров на вероятность совершения покупки

      Посмотреть блокнот

Выводы

  1. Количество просмотров — сильный предиктор покупки

    • Пользователи с 4-5 просмотрами совершают покупку в 3.3 раза чаще, чем с 1 просмотром
    • Эффект проявляется уже при 2-3 просмотрах (OR = 3.2)
  2. Существует оптимальное количество просмотров

    • Максимальная конверсия достигается при 4-5 просмотрах
    • После 5 просмотров дополнительного роста не происходит (OR стабилизируется на уровне 3.1)
  3. Прямые покупки (0 просмотров) — отдельный сценарий

    • Пользователи, пришедшие по прямой ссылке или повторно, показывают аномально высокую конверсию
    • Шанс покупки в 36 раз выше, чем у пользователей с 1 просмотром
  4. Распределение сильно скошено

    • Медиана просмотров: 3 (покупка) vs 2 (нет покупки)
    • Среднее значение искажено выбросами (max > 1000 просмотров)
    • Биннинг позволил стабилизировать оценки и получить интерпретируемые бизнес-метрики

Рекомендации

  1. Оптимизировать воронку под 4-5 просмотров

    • Удерживать пользователя до 4-5 просмотров товаров
    • После этого порога дополнительные просмотры не увеличивают конверсию
  2. Выделить "прямые покупки" в отдельную аудиторию (пока как предположение, требуется больше данных)

    • Пользователи с 0 просмотров — это целевые клиенты, пришедшие готовыми к покупке
    • Для них не требуются ремаркетинговые кампании с прогревающим контентом
  3. Использовать количество просмотров как скоринговый фактор

    • Включать в модели прогнозирования конверсии

    • Вес фактора должен учитывать нелинейность: максимальный вклад после 4-5 просмотров

      Гипотеза 3: Разница в конверсии между буднями и выходными

      Посмотреть блокнот

Выводы

  1. Конверсия в будни выше, чем в выходные

    • Будни: 7.07%
    • Выходные: 6.56%
    • Разница: +0.51 п.п. (будни лучше на 7.8% относительно)
  2. Разница статистически значима

    • Z-статистика: 20.24
    • p-value < 0.0001
    • При выборке 4.16 млн сессий эффект устойчив
  3. Трафик распределен неравномерно

    • Будни: 57% сессий
    • Выходные: 43% сессий

Рекомендации

  1. Адаптировать предложение под выходную аудиторию

    • В выходные пользователи могут быть в режиме "исследования" без намерения покупать
    • Тестировать акции, скидки, ограниченные по времени предложения
  2. Усилить ремаркетинг в начале недели

    • Возвращать пользователей, которые были активны в выходные, но не купили

Гипотеза 4: Взаимосвязь времени суток и типа дня

Посмотреть блокнот

Выводы

  1. Утро эффективнее дня в любой день недели

    • Будни: утро (8.74%) vs день (6.68%) — разрыв 2.06 п.п.
    • Выходные: утро (8.05%) vs день (5.51%) — разрыв 2.54 п.п.
  2. Ночь эффективнее вечера в любой день недели

    • Будни: ночь (7.29%) vs вечер (5.21%) — разрыв 2.08 п.п.
    • Выходные: ночь (5.87%) vs вечер (5.03%) — разрыв 0.84 п.п.
  3. Ночная аудитория в будни — неожиданно высокая конверсия

    • 7.29% — третий показатель среди всех 8 групп
    • Уступает только утренним сессиям (будни и выходные)
  4. Вечер — наименее эффективное время в любые дни

    • Будни вечер: 5.21%
    • Выходные вечер: 5.03%
    • Оба показателя в антитопе

Рекомендации

  1. Основной бюджет — на утро (будни и выходные)

    • Максимальная конверсия в обеих группах
    • Наиболее эффективное окно для рекламных кампаний
  2. Ночные кампании в будни — точечно

    • Высокая конверсия при меньшем объеме трафика
    • Подходит для таргетинга на узкую аудиторию
  3. Сократить бюджет на вечер

    • Самая низкая конверсия во все дни
    • Особенно критично в выходные (5.03% при 191k сессий)
  4. Пересмотреть качество дневного трафика в выходные

    • 634k сессий, конверсия 5.51% — один из худших показателей
    • Возможно, привлечение нецелевой аудитории

Гипотеза 5: Различия в количестве просмотров по дням недели

Посмотреть блокнот

Выводы

  1. Медианное количество просмотров не различается по дням недели

    • Пользователи просматривают одинаковое количество товаров вне зависимости от дня
    • Покупатели в будни и выходные смотрят одинаково больше, чем пользователи без покупок.
  2. Проведение пост-хок тестов нецелесообразно

    • Даже при статистических различиях в хвостах, медианы одинаковы
    • Эффект не имеет бизнес-значимости

Рекомендации

  1. Не корректировать стратегии вовлечения по дням недели
    • Количество просмотров не требует дневной оптимизации

Гипотеза 6: Влияние категории товара на покупку

Посмотреть блокнот

Выводы

  1. Electronics — абсолютный лидер

    • Конверсия 9%, выручка 834 млн (60% от всей)
    • Драйвер бизнеса, требует защиты и удержания
  2. Computers — скрытый потенциал

    • Самый высокий чек ($487), но конверсия 5.4%
    • Улучшение UX может дать рост выручки без увеличения трафика
  3. Apparel — главная проблема

    • Низкая конверсия (2.5%) и низкий чек ($100)
    • При большом трафике (178k сессий) результат минимальный
    • Требует аудита: цены, ассортимент, качество трафика
  4. Детальнее разобрать 3 категории с минимальным кол-вом покупок

    • Неправильное логирование?
    • Новые категории?
    • Нерелевантные?
  5. Связь категории с покупкой статистически значима, но слабая

    • 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

Топ-5 факторов (Odds Ratio)

Фактор OR
Прямая покупка (0 просмотров) 11.4
Категория Electronics 2.2
Категория Appliances 1.6
Утро (06-12) 1.3
Ночь (00-06) 1.2

Интерпретация

  • Модель подтверждает: просмотры и время суток — ключевые факторы
  • Цена и день недели не влияют на предсказание
  • Категория товара дает вклад, но значительно меньший

Детали: notebooks/final_model.ipynb

About

Маркетинговый анализ: влияние просмотров и времени на конверсию (7 гипотез)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors