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

Конверсия и воронка: где отваливались коты

18 мин
Чему научишься
  • строить как прохождение ОДНОЙ группы пользователей через шаги в заданном окне времени
  • понимать, почему счёт по событиям может дать «» больше 100%
  • называть знаменатель каждого шага и выводить сквозную конверсию сокращением дробей
  • различать три разных «самых плохих шага»: по доле, по числу потерянных и по деньгам

Воронка — это не четыре счётчика

Путь покупателя в Котомаркете:

открыл приложение → посмотрел товар → положил в корзину → оплатил
     12 000              6 000             1 800            720

Самая частая ошибка новичка — прочитать эти четыре числа как четыре независимых счётчика: «за неделю столько-то открытий, столько-то просмотров, столько-то корзин, столько-то оплат». Так считать можно, но это не .

Воронка — это прохождение ОДНОЙ группы пользователей через последовательность шагов внутри заданного окна времени.

Разберём определение на три части, каждая из которых обязательна.

1. Одна группа. Мы берём конкретное множество людей — тех, кто сделал первый шаг за выбранную неделю, — и следим именно за ними. 6 000 на втором шаге — это не «все, кто смотрел товары», а «те из наших 12 000, кто дошёл до просмотра». Пользователь, у которого нет зафиксированного первого шага, в эту воронку не входит, даже если у него есть событие одного из следующих шагов.

2. Последовательность. Шаги упорядочены, и человек попадает на шаг N, только если прошёл шаги 1…N−1 в нужном порядке. Поэтому число пользователей обязано не увеличиваться: 12 000 ≥ 6 000 ≥ 1 800 ≥ 720. Если в отчёте такая последовательная воронка где-то растёт — это сигнал проверить логику расчёта: возможно, шаги посчитали независимо друг от друга или смешали разные единицы счёта.

3. Окно времени. У воронки всегда есть срок: «в течение той же сессии», «в течение суток от первого шага», «в течение недели». Без окна вопрос «дошёл ли» не имеет однозначного ответа: человек мог открыть приложение в марте, а оплатить в июне. В Котомаркете окно было таким: семь дней от первого шага. Значит, если пользователь сделал первый шаг в последний день выбранной недели, у него всё равно есть следующие семь дней, чтобы пройти остальные шаги.

Запись №44 в журнале Л.: «Воронка — это не колонки в таблице. Это утверждение о людях: вот эти конкретные коты пошли по пути и вот здесь остановились.»

Курсант со спины изучает чёрный ящик, над которым голографическая воронка показывает убывающие группы капсул, а робот-кот наблюдает сбоку.
Воронка — не четыре счётчика рядом, а путь одной группы людей по шагам внутри окна времени.
по пользователямпо событиямшаги: зашёл на сайт → открыл карточку → купил100603060%50%считаем уникальные user_idконверсия не больше 100%10024090240%38%считаем строки событий240% — один человекоткрыл карточку 4 раза
Слева воронка по пользователям — числа не увеличиваются. Справа те же действия, посчитанные как события: например, 46 000 просмотров у 6 000 пользователей. Если ошибочно разделить эти 46 000 событий на 12 000 пользователей первого шага, получится «конверсия» 383%.

Почему по событиям получается больше 100%

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

шагсобытий за неделюуникальных пользователей
открыл приложение19 80012 000
посмотрел товар46 0006 000
положил в корзину3 1001 800
оплатил790720

Если поделить события на события, получится вот что: 46 000 / 19 800 = 232%. Единица счёта здесь одинаковая, но это всё равно не пользователей: один человек может совершить одно и то же действие много раз, поэтому событий второго типа может оказаться больше, чем событий первого.

А если смешать единицы и поделить события второго шага на пользователей первого — 46 000 / 12 000 = 383%. Такая дробь тем более не является конверсией: в числителе события, а в знаменателе люди.

Поэтому значение больше 100% здесь означает не «сверхконверсию», а то, что мы считаем не пользовательскую конверсию по последовательной . Причина может быть в повторяющихся событиях, в смешении единиц счёта или в независимом подсчёте шагов.

Правило воронки:

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

Это не значит, что события бесполезны. «Просмотров на пользователя» — отличная метрика вовлечённости, и в таблице выше она видна: 46 000 / 6 000 ≈ 7.7 просмотра на человека. Просто это другая метрика, и подменять ею конверсию в воронке нельзя.

Быстрая самопроверка отчёта: если в последовательной пользовательской воронке следующий шаг оказался больше предыдущего или «конверсия» вышла больше 100% — проверь единицу счёта, состав группы и условие прохождения шагов.

Знаменатель каждого шага

Теперь считаем честно — в уникальных пользователях, окно семь дней.

Конверсия шага — доля тех, кто с предыдущего шага дошёл до следующего. У каждого шага свой знаменатель: число пользователей на предыдущей ступеньке.

переходчислительзнаменатель
открыл → посмотрел6 00012 00050%
посмотрел → корзина1 8006 00030%
корзина → оплатил7201 80040%

Вопрос из прошлого урока, который теперь надо задавать себе автоматически: «30% — это 1 800 из каких 6 000?» Ответ: из тех 6 000, кто посмотрел товар, — а не из 12 000 открывших и не из всех зарегистрированных котов.

Сквозная конверсия и почему она равна произведению

Сквозная конверсия — доля пользователей, которые дошли от первого шага до последнего: 720 / 12 000 = 6%.

Её часто считают как произведение шаговых конверсий, и это может выглядеть магией. Магии нет — дроби просто сокращаются. Распишем:

 6000     1800     720      6000 × 1800 × 720       720
────── × ────── × ────── = ─────────────────── = ───────  = 6%
12000     6000     1800    12000 × 6000 × 1800    12000

В числителе стоят 6 000 и 1 800, и ровно те же 6 000 и 1 800 стоят в знаменателе — они сокращаются. Остаётся 720 / 12 000. Произведение не даёт новой метрики: это тот же путь от первого шага к последнему, только записанный через промежуточные переходы.

Полезное следствие: шаговые конверсии перемножаются. Если каждую из трёх конверсий увеличить на 10% относительно её текущего значения, сквозная конверсия вырастет примерно на 33%: (1{,}1 \times 1{,}1 \times 1{,}1 = 1{,}331). И наоборот: один просевший шаг тянет вниз всё произведение, даже если остальные не изменились — именно это и произойдёт в деле №0.

Воронка: сколько людей дошло до шага12 000посетители6 000карточка товара1 800корзина720оплата50%−6 00030%−4 20040%−1 080общая конверсия = 720 / 12 000 = 6%
У каждого шага свой знаменатель — число пользователей на предыдущей ступеньке. Сквозная конверсия получается сокращением дробей, а не новым измерением.

Три разных «самых дырявых шага»

Вопрос «где самая большая дыра?» звучит однозначно, но ответов у него три — и они не совпадают.

переходdrop-off rateпотеряно человек
открыл → посмотрел50%50%6 000
посмотрел → корзина30%70%4 200
корзина → оплатил40%60%1 080

Drop-off rate — доля тех, кто не прошёл на следующий шаг: 100% минус конверсия шага. Самый высокий drop-off — на переходе «посмотрел → корзина»: там теряется 70% пользователей, дошедших до просмотра товара.

Число потерянных — это абсолютное количество пользователей, которые не прошли на следующий шаг. Самая большая потеря — на первом переходе: 6 000 человек, хотя доля там не самая высокая.

Вот и первое расхождение: самая низкая конверсия (30%) и самая большая потеря (6 000 человек) — это разные шаги. Если назвать «самым дырявым» только второй шаг, можно ошибиться с приоритетом: всё зависит от того, что именно мы сравниваем.

Бизнес-значимость — третий критерий. Здесь вопрос уже не «где теряем больше», а «где получим больший эффект от улучшения». Прикинем на деньгах, считая средний чек 730 ₽ и предполагая, что после улучшенного шага пользователи проходят следующие шаги с прежними конверсиями:

если улучшитьэффект в пользователях на выходеэффект в деньгах за неделю
первый шаг на 5 п.п. (50% → 55%)+72 дошедших до оплаты≈ +52 600 ₽
второй шаг на 5 п.п. (30% → 35%)+120 дошедших до оплаты≈ +87 600 ₽
третий шаг на 5 п.п. (40% → 45%)+90 дошедших до оплаты≈ +65 700 ₽

Разберём, откуда берутся эти числа. На первом шаге дополнительные 5 п.п. от 12 000 пользователей дают ещё 600 просмотров. Через следующие шаги пройдут 600 × 30% × 40% = 72 пользователя. На втором шаге 5 п.п. от 6 000 просмотров дают ещё 300 корзин, из них оплатят 300 × 40% = 120 пользователей. На третьем шаге 5 п.п. от 1 800 корзин сразу дают ещё 90 дошедших до оплаты.

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

Докладывай не «конверсия упала», а «просел такой-то переход: доля с X% до Y%, это столько-то человек и примерно столько-то денег в неделю». Три числа рядом — и разговор из паники превращается в план.

Воронка на калькуляторе: доли, сквозная и абсолютные потери на каждом шаге. Запусти, потом уменьши carted и посмотри, что сильнее меняется — доля второго шага или число потерянных.
python · pandas
Практика: напиши код
Разбери второй переход воронки — «посмотрел → корзина». Посчитай три числа: conv2 — конверсию шага в процентах, dropoff2 — drop-off rate в процентах (доля НЕ прошедших) и lost2 — сколько человек потеряно на этом шаге.
python · pandas
Практика: напиши код
Убедись, что сквозная конверсия и произведение шаговых — это одно и то же число. Посчитай direct — напрямую (оплатившие от вошедших, в процентах) и chained — перемножив три шаговые доли и умножив на 100. Числа должны совпасть.
python · pandas
Проверь себя
В отчёте воронка: 12 000 → 6 000 → 1 800 → 720. Коллега говорит: «Самый дырявый шаг — второй: там конверсия всего 30%». Что стоит добавить к этому выводу?
Проверь себя
Аналитик посчитал конверсию «открыл → посмотрел» и получил 383%. В данных выяснилось, что в числителе стоят все события просмотра, а в знаменателе — уникальные пользователи, которые открыли приложение. В чём ошибка?
Главное из урока
  • — прохождение одной группы пользователей через упорядоченные шаги в заданном окне времени, а не четыре независимых счётчика
  • все шаги считаются в одной единице — здесь это уникальные пользователи; выше 100% в такой воронке — сигнал проверить, не смешались ли события и люди и правильно ли определены шаги
  • у каждого шага свой знаменатель — предыдущая ступенька; всегда проговаривай «столько-то из скольких»
  • сквозная конверсия от первого до последнего шага равна произведению шаговых конверсий, потому что промежуточные числа при умножении долей сокращаются
  • «самый дырявый шаг» — это не один вопрос: можно искать худший шаг по доле не прошедших, по числу потерянных пользователей или по ожидаемому денежному эффекту от исправления

Дальше — : метрика не про то, сколько людей пришло, а про то, вернулись ли те же самые.