Primary vs secondary метрика

Карьерник — квиз-тренажёр в Telegram с 1500+ вопросами для собесов аналитика. SQL, Python, A/B, метрики. Бесплатно.

Короткий ответ

  • Primary metric — главная метрика A/B-теста. По ней принимается решение.
  • Secondary metrics — дополнительные метрики для понимания контекста.

Primary — одна. Secondary — несколько. Это разделение критично против p-hacking.

Зачем разделять

В A/B на 10 метриках один случайно покажет p<0.05 даже без реального эффекта (multiple comparisons). Если заранее определить primary — защита от false positives.

Primary metric — как выбрать

Должна быть:

  1. Близка к целям (revenue, conversion, retention)
  2. Измерима за период теста (не ждать год для D30 retention)
  3. Чувствительна (meaningful эффект обнаружим)
  4. Не susceptible to gaming

Примеры

Если тестируете новый checkout:

  • Primary: conversion rate (purchase/visit)
  • Не primary: revenue (слишком нойзу)
  • Не primary: D7 retention (слишком долго ждать)

Secondary metrics

Зачем

  • Контекст: вырос ли AOV вместе с CR?
  • Guardrails: не сломалось ли что-то ещё?
  • Сегменты: как эффект распределяется?

Примеры

Для того же checkout:

  • AOV
  • Bounce rate
  • Cart abandonment rate
  • Error rate on payment
  • Refund rate

Guardrail metrics

Sub-тип secondary — guardrails. Те, что не должны ухудшаться.

Если primary CR +5%, но guardrail page load time +500ms →
возможно, не катить

Подробнее: guardrail metrics.

Как работает решение

Classic flow

  1. Primary значимо и положительно → катим
  2. Primary значимо и отрицательно → не катим
  3. Primary не значимо → не катим (обычно)
  4. Guardrails не пострадали — обязательно для катки

Secondary для понимания

  • Primary +3%, secondary retention D1 +2% → полностью положительный результат
  • Primary +3%, secondary engagement -10% → вопросы, возможно revert

Частые ошибки

1. Нет primary metric

«Посмотрим, что получится». → p-hacking с любой выигрышной метрикой.

2. Primary по удобству, а не по цели

Primary — то, что должно улучшиться, не то, что легко измерить.

3. Много secondary → multiple comparisons

20 метрик → случайно 1-2 сигнал. Применяйте поправку (Bonferroni).

4. Игнорировать guardrails

Catthink только на primary → ломают другие аспекты продукта.

5. Post-hoc свапать primary

«Primary не значим, но secondary — да». Катка по secondary = p-hacking.

Pre-registration

Хорошая практика — pre-register A/B-тест:

  • Гипотеза
  • Primary metric
  • Secondary metrics (список)
  • Guardrails (список)
  • Размер выборки
  • Длительность
  • Критерии успеха

Документируете ДО запуска. Защита от post-hoc manipulation.

Пример pre-registration

Эксперимент: Новый дизайн landing page

Primary: signup conversion rate (визит → signup)
MDE: +5% relative
Выборка: 20K на группу
Длительность: 14 дней

Secondary (для понимания):
- Visit time
- Bounce rate
- Scroll depth %

Guardrails (не должны ухудшаться):
- Page load time
- CTR header
- Overall user satisfaction (survey)

Критерий катки: primary +3% absolute И guardrails не упали >5%

В код Анализа

# primary
primary_control = 0.10
primary_test    = 0.105
p_value_primary = ttest(control, test).pvalue

if p_value_primary < 0.05 and effect > 0:
    decision = "SHIP"

# secondary (без статистических выводов, только подтверждение)
for metric in secondary_metrics:
    report(metric)

# guardrails
for guardrail in guardrail_metrics:
    if degrade(guardrail):
        decision = "REVIEW"

OEC (Overall Evaluation Criterion)

Комбинирование нескольких метрик в одну:

OEC = 0.7 × CR + 0.3 × AOV_normalized

Веса — business judgment. Не общепринято, но иногда полезно для composite trade-offs.

На собесе

«Разница primary и secondary?» Primary — по ней решение. Secondary — для контекста.

«Зачем разделение?» Защита от multiple comparisons и p-hacking.

«Guardrail — это что?» Метрика, которая НЕ должна ухудшаться.

«Как выбрать primary?» Близка к цели, измерима за период, чувствительна, не gameable.

Связанные темы

FAQ

Одна primary или несколько?

Обычно одна. Можно две (composite), но осторожно.

Сколько secondary?

5-10. Больше — сложно анализировать.

Primary без значимого эффекта, катим?

По classic правилу — нет. Можно «информативное решение» — но это risk.

Pre-registration обязательна?

Для academic — обязательна. В tech компаниях — best practice, не всегда соблюдается.


Тренируйте A/B — откройте тренажёр с 1500+ вопросами для собесов.