Глава 1 — Анатомия метрик

Дело №0: «Конверсия упала» — первое расследование

20 мин
Чему научишься

Первое дело — и ведёшь его ты. Ниже — бриф, данные и шаблон расследования из шести шагов. Считаешь ты, вывод формулируешь ты; разбор Л. ждёт в конце расследования и открывается только после того, как ты пройдёшь свой путь. Не подглядывай: когда знаешь ответ заранее, расследование уже не работает.

Весь расчёт — на уровне калькулятора: переменные, арифметика, print. Никакого pandas: инструменты появятся в следующих главах, а голова нужна уже сейчас.

Бриф

Журнал Л., запись №0 — самая ранняя, ещё до нумерованных дел:

Понедельник. CEO в чате: „Сквозная за неделю упала с 6.0% до 4.9%. ЧТО ПРОИСХОДИТ?!“ Дала себе час на ответ.

Курсант изучает голографическую воронку, в которой увеличившийся поток капсул не приводит к росту группы на последней ступени, а робот-кот наблюдает сбоку.
Расследование идёт по шагам: бриф, данные, проверка версий — и вывод, который формулируешь ты, а не таблица.

Вот исходные данные. Сквозная — доля пользователей, которые дошли от первого шага до последнего; здесь — от открытия до оплаты. Все этапы посчитаны по уникальным пользователям. Окно конверсии — семь дней с первого шага пользователя, определения этапов для обеих недель одинаковы:

открылпосмотрелкорзинаоплатилсквозная
неделя 1012 0006 0001 8007206.0%
неделя 1114 7007 3502 2057204.9%

В журнале изменений есть ещё один факт: в понедельник недели 11 маркетинг запустил новую рекламную кампанию. Методику расчёта за это время не меняли — это Л. проверила первым делом.

Дальше — твоя работа. Прежде чем читать шаблон, посмотри на таблицу минуту и попробуй сформулировать, что именно в ней требует объяснения.

Шаблон расследования: шесть шагов

Этот шаблон — скелет каждого дела в курсе. Выпиши его себе: дальше он будет наполняться деталями.

Шаг 1. Что именно изменилось. Назови метрику, оба значения, период сравнения, окно и то, кого или что считаем. Здесь сквозная уникальных пользователей за семидневное окно снизилась с 6.0% на неделе 10 до 4.9% на неделе 11. Разница составляет −1.1 процентного пункта (п.п.): 4.9% − 6.0% = −1.1 п.п. Относительное изменение — примерно −18%: (4.9% − 6.0%) / 6.0% ≈ −18.3%. Первым делом проверь методику: не менялись ли определение метрики, окно и часовой пояс. Иногда «падение» объясняется уже на этом шаге.

Шаг 2. Разложи метрику. Шаговая конверсия — доля пользователей, перешедших с одного этапа на следующий. Для одной и той же последовательной воронки сквозная конверсия равна произведению трёх шаговых: оплатил / открыл = (посмотрел / открыл) × (корзина / посмотрел) × (оплатил / корзина). Значит, сквозная конверсия могла снизиться на любом из трёх переходов или на нескольких сразу. Посчитай все шаговые конверсии за обе недели.

Шаг 3. Найди первый уровень расхождения. Сравни шаговые конверсии двух недель попарно и найди первый переход, на котором они различаются. На этом шаге нужен точный адрес: не «конверсия упала», а «просел такой-то переход».

Шаг 4. Собери факты. Факт — это то, что видно в данных и не требует веры: абсолютные значения, доли, изменения. Обязательно посмотри и на числитель, и на знаменатель. Доля может снизиться, даже если числитель не уменьшился: достаточно, чтобы знаменатель вырос быстрее.

Шаг 5. Сформулируй гипотезы. Гипотеза — это объяснение, которое согласуется с фактами, но пока не проверено. Гипотез должно быть несколько, и они должны различаться по природе: изменения продукта, состав трафика — то есть пришедшей аудитории, качество данных, внешние события.

Шаг 6. Назови данные, которые проверят гипотезы. Каждой гипотезе сопоставь конкретную проверку или следующий запрос данных: «разложить конверсию корзина → оплата по источникам трафика», «сравнить конверсию новых и вернувшихся пользователей». На этом этапе расследование заканчивается не окончательным выводом, а следующим шагом.

Дисциплина всего шаблона держится на одном разделении: факты отдельно, гипотезы отдельно. В отчёте они идут разными абзацами и обозначаются разными словами: «данные показывают» и «возможное объяснение».

Шаг 2, первая половина: базовая неделя 10 посчитана за тебя. Запусти и запиши числа — они понадобятся для сравнения.
python · pandas
Практика: напиши код
Шаг 2, вторая половина — считаешь ты. Посчитай три шаговые конверсии недели 11 в переменные c1, c2, c3 (в процентах) и сквозную overall11. Сравни каждое число с неделей 10 (50%, 30%, 40%, 6.0%) и запомни, где ряды разошлись, — это шаг 3 шаблона.
python · pandas
Практика: напиши код
Шаг 4 — факты. Три числа, без которых вывод будет неполным:
  1. growth — на сколько процентов вырос вход воронки (12 000 → 14 700);
  2. expected_paid — сколько пользователей дошло бы до оплаты на неделе 11, если бы конверсия из корзины держалась на прежних 40% (то есть 40% от 2 205);
  3. shortfall — скольких дошедших до оплаты недобрали относительно этого ожидания.
python · pandas
Воронка: сколько людей дошло до шага12 000посетители6 000карточка товара1 800корзина720оплата50%−6 00030%−4 20040%−1 080общая конверсия = 720 / 12 000 = 6%
Воронки двух недель рядом: первые два перехода совпадают точно, расходится только последний; при этом вход воронки вырос.
Проверь себя
Шаг 3 шаблона: на каком переходе показатели двух недель разошлись?

Твой вывод — до того, как читать разбор

Прежде чем открыть следующий блок, сформулируй ответ CEO сам. Вот форма, в которую его надо уложить, — заполни её мысленно или в блокноте:

ЧТО ИЗМЕНИЛОСЬ
  метрика: ______, было ______, стало ______ (____ п.п., ____% относительно)
  методика: ______________________

ФАКТЫ (видно в данных)
  1. переходы 1 и 2: ______________________
  2. переход 3: ______________________
  3. вход воронки: ______________________
  4. дошли до оплаты: ____________________
  5. недобор относительно прежней конверсии: ______ оплативших пользователей

ГИПОТЕЗЫ (пока не проверены)
  1. ______________________
  2. ______________________
  3. ______________________

СЛЕДУЮЩАЯ ПРОВЕРКА
  ______________________

Две подсказки, чтобы форма не осталась пустой.

Первая: посмотри на абсолютное число дошедших до оплаты в обеих неделях. Оно одно и то же — 720. Это тот самый случай из урока про доли: сквозная упала, а числитель не изменился. В самой дроби снижение объясняется ростом знаменателя: вход вырос, а число оплат — нет. Почему оплаты не выросли вместе со входом, ещё предстоит выяснить.

Вторая: гипотезы должны быть разной природы. Одна — про продукт («что-то сломалось на оплате»), другая — про трафик («пришли другие люди»), третья — про данные («часть оплат перестала попадать в журнал»). Если все три гипотезы об одном и том же, ты не выдвигал разные гипотезы, а обосновывал одну догадку.

Заполнил? Теперь можно открывать разбор.

Разбор Л.

Что изменилось. Сквозная по уникальным пользователям снизилась с 6,0% до 4,9% за неделю: на 1,1 п.п., или примерно на 18% относительно прежнего уровня. Методику не меняли — определения, окно и часовой пояс остались прежними. Значит, падение нельзя объяснить сменой способа расчёта.

Факты.

  1. Переходы «открыл → посмотрел» и «посмотрел → корзина» не изменились: 50% и 30% на обеих неделях.
  2. Переход «корзина → оплатил» просел с 40% до 32,7%: на 7,3 п.п., или примерно на 18% относительно прежнего уровня.
  3. Вход вырос с 12 000 до 14 700 пользователей — на 22,5%. В понедельник запустили новую кампанию.
  4. Оплативших пользователей ровно столько же — 720 на каждой неделе. В абсолютных числах число оплативших пользователей не изменилось.
  5. На неделе 11 до корзины дошли 14 700 × 50% × 30% = 2 205 пользователей. Если бы конверсия из корзины сохранилась на уровне 40%, оплативших пользователей было бы 2 205 × 40% = 882. Недобор относительно этого сценария — 162 оплативших пользователя.

Гипотезы — ни одна пока не проверена.

  • Трафик. Кампания привела людей, которые ведут себя как обычно до корзины, но платят реже: другой сегмент, другое намерение или другая платёжеспособность.
  • Продукт. Что-то в оплате действительно ухудшилось на неделе 11: изменился способ оплаты или цена доставки, появилась ошибка в форме. Общая проблема затронула бы разные группы пользователей, а сбой на отдельной платформе или в конкретном способе оплаты — только соответствующий сегмент.
  • Данные. Часть оплат перестала записываться в журнал: например, новый экран не отправляет событие об оплате. Тогда реального падения может не быть — есть дыра в трекинге.

Вывод. Просадка локализована на последнем переходе, но её причина пока не установлена. Это может быть проблема кассы, качество трафика или ошибка трекинга. Стабильные 720 дошедших до оплаты не означают, что всё в порядке: при 2 205 корзинах и прежней конверсии их ожидалось бы 882. Поэтому я не объявляю ни кассу, ни трафик виновными до следующей проверки.

Следующая проверка. Разложить переход «корзина → оплата» по источникам трафика и отдельно сравнить новых пользователей с вернувшимися. Если у вернувшихся конверсия осталась около 40%, а просадка сосредоточена среди пришедших из новой кампании, гипотеза о качестве трафика станет сильнее. Если переход просел у разных источников и обеих групп пользователей, вероятнее общая проблема в продукте или трекинге.

Чему учит это дело

Не делай вывод по абсолютам без знаменателя — и по процентам без объёма. Здесь оба взгляда нужны одновременно: процент упал, а число дошедших до оплаты не изменилось. Взгляд только на процент говорит «катастрофа», взгляд только на абсолют — «всё в порядке». Полная картина такая: входящий поток вырос на 22,5%, но оплат больше не стало.

Отделяй факты от гипотез. В разборе выше факты пронумерованы и проверяемы, а гипотезы прямо названы гипотезами. Формулировка «причина пока не установлена» — не трусость, а точность: она задаёт следующую проверку, но не отправляет команду чинить то, что ещё не признано сломанным.

Заканчивай следующим шагом. Дело №0 не закрыто — оно доведено до состояния, в котором ясно, какой анализ нужен дальше. Это нормальный результат очередного этапа расследования.

Проверь себя
Какая формулировка вывода по делу №0 самая профессиональная?
Главное из урока
  • Шаблон расследования: что изменилось → разложи метрику → найди первый уровень, на котором появилось расхождение → собери факты → выдвини гипотезы → определи данные для проверки.
  • Сначала проверяй методику: не изменились ли определение метрики, окно расчёта или часовой пояс.
  • Смотри на числитель и знаменатель вместе: здесь упала, хотя число оплативших пользователей не изменилось.
  • Гипотезы должны быть разной природы: продукт, трафик, данные.
  • Вывод формулируется по фактам и заканчивается следующим шагом, а не приговором.

Сухой остаток главы «Анатомия метрик»:

  • Метрика — это инструкция из четырёх частей: объект → событие → период → способ подсчёта.
  • События, визиты, пользователи и заказы — разные единицы; DAU считает уникальных пользователей, а критерий «активности» выбирается, а не находится.
  • У каждого процента есть знаменатель; разность двух значений, выраженных в процентах, измеряется в процентных пунктах, а относительное изменение — в процентах.
  • Воронка — это прохождение одной группы через последовательные шаги в заданном окне времени; сквозная конверсия равна произведению шаговых, если они рассчитаны для одной и той же группы и одного окна.
  • Retention считается по когортам с фиксированным знаменателем; когортная таблица треугольная, и пустая ячейка в ней ≠ ноль.

Дальше — «Медведь в архиве»: Python и pandas, чтобы делать всё это не на десяти числах в калькуляторе, а на миллионах строк чёрного ящика.