Ответ
Анализ брошенных корзин (cart abandonment) — это поиск узких мест в воронке. Я подхожу к этому комплексно, используя данные о событиях и сессиях.
1. Инструментарий и сбор данных:
Я настраиваю сквозную аналитику (например, с помощью Snowplow или Amplitude), чтобы отслеживать ключевые события: Product Viewed, Add to Cart, Initiate Checkout, Enter Payment Info, Purchase. Для каждого события записываю таймстамп, ID пользователя, ID сессии и релевантные атрибуты (сумма корзины, список товаров, примененный промокод).
2. Расчет ключевых метрик:
- Cart Abandonment Rate:
(Количество сессий с началом оформления - Количество покупок) / Количество сессий с началом оформления * 100%. - Анализ по шагам воронки: Где именно происходит основной отток.
3. Глубокий анализ с помощью SQL: Я строю запросы, чтобы сегментировать пользователей и найти причины.
-- Анализ оттока по шагам воронки за последнюю неделю
WITH funnel AS (
SELECT
session_id,
MAX(CASE WHEN event_name = 'Add to Cart' THEN 1 ELSE 0 END) as reached_cart,
MAX(CASE WHEN event_name = 'Initiate Checkout' THEN 1 ELSE 0 END) as reached_checkout,
MAX(CASE WHEN event_name = 'Purchase' THEN 1 ELSE 0 END) as reached_purchase
FROM product_events
WHERE event_timestamp >= CURRENT_DATE - 7
GROUP BY session_id
)
SELECT
COUNT(*) as total_sessions,
SUM(reached_cart) as sessions_with_cart,
SUM(reached_checkout) as sessions_with_checkout,
SUM(reached_purchase) as sessions_with_purchase,
-- Конверсия между шагами
ROUND(SUM(reached_checkout) * 100.0 / NULLIF(SUM(reached_cart), 0), 2) as cart_to_checkout_rate,
ROUND(SUM(reached_purchase) * 100.0 / NULLIF(SUM(reached_checkout), 0), 2) as checkout_to_purchase_rate
FROM funnel
WHERE reached_cart = 1; -- Смотрим только на тех, кто дошел до корзины
4. Поиск причин и гипотез:
- Технические проблемы: Анализирую сессии, в которых после
Initiate Checkoutнет следующих событий. Проверяю логи ошибок фронтенда/бэкенда за соответствующий период. - Ценовой барьер: Сравниваю среднюю сумму корзины у бросивших и совершивших покупку. Если у бросивших она значительно выше, причина может быть в стоимости доставки или отсутствии ожидаемых скидок.
- Сложность оформления: Смотрю на время, проведенное на шаге ввода данных. Долгое время может указывать на UX-проблемы.
5. Действия: На основе анализа я предлагаю решения: A/B-тест упрощенной формы заказа, триггерное email- или push-напоминание о корзине через 1 час, отображение прогресс-бара в checkout.