5000 просмотров, 300 кликов, 5 заказов. Конверсия из клика в заказ — 1.67%. Этой цифре можно верить или данных мало? Разбираем, как считать интервал, где врёт школьная формула и сколько выборки нужно набрать, чтобы замер вообще имел смысл.
Вопрос почти всегда приходит в одной и той же форме: «у нас 5000 просмотров, 300 кликов и 5 заказов, конверсия 1.67% — этому можно верить или мало данных?» Ответ неочевидный: в одной и той же воронке одному числу верить можно, а другому нет. Причём трафик у обоих чисел одинаковый.
Шаг воронки
Оценка
95% интервал
Вердикт
Клик / просмотр
300 / 5000 = 6.00%
[5.38% — 6.69%]
верить можно
Заказ / клик
5 / 300 = 1.67%
[0.71% — 3.84%]
разброс в 5 раз
Заказ / просмотр
5 / 5000 = 0.10%
[0.04% — 0.23%]
разброс в 5 раз
// Те же 5000 пользователей, разная точность
CTR · 300 из 50006.00% [5.38 — 6.69]
CR в заказ · 5 из 3001.67% [0.71 — 3.84]
0%2%4%6%8%
Белая черта — то, что показывает дашборд. Полоса — где на самом деле может лежать истина. Для CTR полоса узкая: решение по ней принимать можно. Для конверсии в заказ она шире самой оценки — «1.67%» здесь означает «где-то между 0.7% и 3.8%», а это разные бизнесы.
Разница между строками не в количестве пользователей — оно одно и то же. Разница в количестве событий: 300 кликов против 5 заказов. Это и есть главная мысль статьи, к ней вернёмся в разделе про правило ста конверсий.
Матчасть
Что доверительный интервал меряет — и что нет
Наблюдаемые 1.67% — не свойство продукта, а результат одного замера. Прокрути ту же неделю заново с теми же настройками — заказов будет не 5, а 3 или 8, просто по случайности. Доверительный интервал отвечает на вопрос: насколько сильно эта случайность может двигать цифру.
// Определение без учебника
95% доверительный интервал
Если повторить замер много раз и каждый раз строить такой интервал, примерно 95% этих интервалов накроют истинную конверсию. Не «истина лежит внутри с вероятностью 95%» — истина фиксирована, случаен интервал. На практике разница в формулировке не меняет решения, но на собеседовании её спрашивают.
// Чего интервал не покрывает
Доверительный интервал меряет только случайный шум выборки. Он ничего не знает про ботов в трафике, про сломанное событие в разметке, про то, что неделя выпала на праздники, и про то, что реклама вела нецелевую аудиторию. Узкий интервал вокруг смещённой цифры — это точно измеренная неправда. Сначала проверяем данные, потом считаем интервал.
Ловушка
Школьная формула — и где она врёт
В любом учебнике первой даётся формула Вальда — нормальное приближение биномиального распределения. Её же выдаёт большинство калькуляторов в интернете.
// Интервал Вальда
Симметричный интервал вокруг оценки
p ± z · √( p(1−p) / n )
Где p — наблюдаемая конверсия, n — число наблюдений, z = 1.96 для 95% уверенности (1.645 для 90%, 2.576 для 99%). Выражение под корнем — стандартная ошибка доли.
На верхнем шаге воронки формула работает отлично. Считаем для CTR: p = 0.06, n = 5000, стандартная ошибка = √(0.06 · 0.94 / 5000) = 0.00336, интервал = 6.00% ± 0.66% = [5.34%, 6.66%]. Это почти в точности совпадает с честным ответом.
А теперь тот же расчёт для заказов: p = 0.01667, n = 300, стандартная ошибка = 0.00739, интервал = 1.67% ± 1.45% = [0.22%, 3.12%]. И вот здесь формула уже врёт — честный интервал начинается с 0.71%, а не с 0.22%.
Нижняя граница отрицательная. Конверсия не бывает минус четверть процента — значит, формула вышла за пределы применимости и её результату верить нельзя вообще, ни сверху, ни снизу.
// Правило применимости
Интервал Вальда годится, только когда n·p ≥ 10 и n·(1−p) ≥ 10 — то есть и конверсий, и не-конверсий больше десятка. В нашем случае n·p = 5. Нормальное приближение здесь уже не работает: реальная вероятность накрытия падает заметно ниже заявленных 95%, и интервал получается уже, чем должен быть. Формула выглядит уверенной ровно там, где данных меньше всего.
Рабочий инструмент
Интервал Вильсона — тот, который стоит использовать
Вильсон решает задачу честнее: он не строит интервал вокруг наблюдённой доли, а спрашивает «при каких истинных значениях конверсии наш результат не выглядел бы аномальным» — и решает получившееся уравнение. Формула страшнее, но считается в одну строку.
// Интервал Вильсона
Несимметричный, всегда внутри [0, 1]
( p + z²/2n ± z · √( p(1−p)/n + z²/4n² ) ) / ( 1 + z²/n )
Обозначения те же. Знаменатель и слагаемое z²/2n в числителе — это поправка, которая на малых n подтягивает интервал к середине, а на больших n исчезает: при n = 5000 разница с Вальдом уже в третьем знаке.
Данные
n·p
Вальд
Вильсон
300 / 5000 CTR 6%
300
[5.34%, 6.66%]
[5.38%, 6.69%]
5 / 300 CR 1.67%
5
[0.22%, 3.12%]
[0.71%, 3.84%]
2 / 300 CR 0.67%
2
[−0.25%, 1.59%]
[0.18%, 2.40%]
1 / 300 CR 0.33%
1
[−0.32%, 0.99%]
[0.06%, 1.86%]
В первой строке методы совпадают — при трёхстах событиях спорить не о чем. В остальных Вальд систематически смещает интервал вниз и делает его уже настоящего: и нижняя граница занижена, и верхняя. То есть ровно в той ситуации, где нужна осторожность, он внушает лишнюю уверенность.
// Что делать на практике
Считай интервалом Вильсона всегда. На больших числах он даёт то же самое, что Вальд, а на малых — не разваливается. Отдельно помнить, какую формулу когда применять, не нужно: в этом и смысл дефолта.
Ядро
Правило ста конверсий
Теперь главное. Зафиксируем конверсию на уровне 1.67% и будем наращивать трафик, глядя, как сужается интервал.
Наблюдений
Конверсий
95% интервал
Точность
300
5
[0.71%, 3.84%]
±94%
1 000
17
[1.06%, 2.71%]
±48%
3 000
50
[1.27%, 2.19%]
±28%
6 000
100
[1.37%, 2.02%]
±20%
15 000
250
[1.47%, 1.88%]
±12%
60 000
1 000
[1.57%, 1.77%]
±6%
Смотри на вторую и четвёртую колонки вместе — они связаны намертво, а первая колонка ни на что не влияет. Это не совпадение, а следствие формулы. Если подставить в неё желаемую относительную точность ε и упростить для малых p, число наблюдений сокращается и остаётся только количество событий:
// Главная формула статьи
Точность задаётся числом конверсий, а не числом пользователей
конверсий ≈ z² / ε² ≈ 3.84 / ε²
Где ε — относительная точность в долях (0.2 — это ±20% от самой конверсии). Величина p в формулу не входит: чтобы измерить с одинаковой точностью конверсию 0.1% и конверсию 30%, нужно одно и то же число событий — просто в первом случае за ними придётся гнать в триста раз больше трафика.
Нужная точность
Нужно конверсий
Что это значит на практике
±50%
≈ 15
порядок величины: 1% или 3% — различим, 1% или 1.4% — нет
±30%
≈ 43
грубая оценка, годится для приоритизации гипотез
±20%
≈ 96
рабочий минимум для отчёта и решения
±10%
≈ 384
можно сравнивать периоды и сегменты
±5%
≈ 1 540
уровень точности для A/B и мониторинга
// Запомнить одну строчку
~100 конверсий = точность ±20%. Это тот порог, ниже которого цифру в отчёте лучше подавать интервалом, а не точкой. Вдвое лучшая точность стоит вчетверо больше данных — зависимость квадратичная, ровно как в расчёте выборки для A/B-теста.
Возвращаемся к исходным пяти заказам: 3.84 / 5 = 0.77, корень — 0.88. Точность замера ±88% (точный расчёт по Вильсону даёт ±94%, приближение чуть оптимистичнее). Это не измерение конверсии, это её порядок величины.
// Посчитай на своих числах
1.67%
наблюдаемая конверсия
[0.71% — 3.84%]
95% доверительный интервал (Вильсон)
Точность ±94%. Данных мало.
Обратный расчёт
Сколько выборки нужно набрать
Ту же формулу можно читать справа налево — и это ответ на вторую половину вопроса: «мы хотим замерить конверсию, сколько взять пользователей».
// Относительная точность (обычно нужна эта)
Минимальная выборка под ±ε процентов от конверсии
n = z² · (1 − p) / ( ε² · p )
Нужна ожидаемая конверсия p — возьми её из прошлого периода, из бенчмарка или из здравого смысла. Ошибиться в ней не страшно: посчитай по пессимистичной оценке, и запаса хватит.
// Абсолютная точность (когда важны пункты)
Минимальная выборка под ±d процентных пунктов
n = z² · p(1 − p) / d²
Здесь d — половина ширины интервала в долях: 0.005 для ±0.5 п.п. Осторожно с малыми конверсиями: «±0.5 п.п.» при базе 1.67% — это ±30% относительных, звучит скромно, а стоит дорого.
Подставим кейс: конверсия ожидается около 1.67%, трафик — 5000 просмотров и 300 кликов в неделю. Считаем, сколько недель придётся ждать.
Хочу точность
Нужно кликов
Нужно заказов
Недель ждать
±50%
≈ 907
16
3
±30%
≈ 2 519
42
8.4
±20%
≈ 5 667
95
18.9
±10%
≈ 22 666
378
75.6
// Здесь расчёт превращается в продуктовое решение
Девятнадцать недель — это не план замера, это приговор задаче. За четыре с лишним месяца поменяются и продукт, и рынок, и сам трафик: замерять будешь уже не ту конверсию, которую собирался. Когда обратный расчёт даёт такие сроки, правильный ход — не ждать, а менять постановку.
Что делать, когда конверсий мало
Агрегировать период. Взять квартал вместо недели — но только если продукт и трафик за это время не менялись, иначе смешаешь разные конверсии в одну.
Мерить шаг выше. В нашей воронке CTR замерен точно уже сейчас. Гипотезу про качество трафика проверяют на нём, а не на заказах.
Взять прокси. Событие, которое случается чаще и коррелирует с целевым: добавление в корзину, начало оформления, ответ на первое сообщение.
Отдавать интервал, а не точку. «Конверсия 0.7–3.8%» — честный ответ, с которым можно работать. «Конверсия 1.67%» — цифра, которая развалится на следующей неделе.
Чек
Четыре ошибки, которые ломают расчёт
1. Не тот знаменатель
Конверсию из клика в заказ считают как 5 / 300, а не 5 / 5000. Знаменатель — это те, у кого была возможность совершить целевое действие. Ошибка кажется арифметической, но она меняет и саму метрику, и ширину интервала.
2. Сессии вместо людей
Формула предполагает, что каждое наблюдение независимо: 300 наблюдений — это 300 разных людей, каждый со своим броском монеты. Если один пользователь дал 5 кликов из 300, независимость нарушена, реальный разброс больше расчётного, и интервал получается уже честного. Считай по уникальным пользователям, а не по сессиям и не по событиям.
3. Пересекающиеся интервалы приняли за отсутствие разницы
Самая дорогая ошибка из четырёх, потому что выглядит как аккуратная работа. Сравниваем две версии страницы: 5 заказов из 300 против 15 из 300.
// Интервалы пересекаются, а разница значимачастая ошибка
Версия A: 5 / 300 = 1.67%, интервал [0.71%, 3.84%]
Версия B: 15 / 300 = 5.00%, интервал [3.05%, 8.08%]
Интервалы перекрываются на отрезке 3.05–3.84% — по «правилу пересечения» вывод был бы «разницы нет». Но двухвыборочный z-тест на тех же данных даёт p-value = 0.023, то есть разница значима на уровне 5%.
Два отдельных интервала — не инструмент сравнения. Чтобы сравнить версии, нужен доверительный интервал разницы конверсий: если он не накрывает ноль, разница значима. Обратное правило («не пересекаются — значит значимо») работает, а прямое — нет. И если ты сравниваешь две версии, то задача уже не про эту статью, а про размер выборки для A/B-теста и p-value.
4. Интервал приняли за гарантию качества данных
Про это было выше, но оно стоит повтора, потому что ошибка живёт даже у сильных аналитиков. Узкий интервал говорит только о том, что шума мало. Если в трафике боты, если событие не срабатывает на iOS, если неделя выпала на распродажу — интервал будет узким и вокруг неправильного числа. Ширина интервала — вопрос статистики, положение центра — вопрос инженерии и разметки.
FAQ
Частые вопросы про доверительный интервал конверсии
Как посчитать доверительный интервал для конверсии?
Рабочая формула — интервал Вильсона: (p + z²/2n ± z·√(p(1−p)/n + z²/4n²)) / (1 + z²/n), где p — наблюдаемая конверсия, n — число наблюдений, z = 1.96 для 95%. Школьная формула p ± 1.96·√(p(1−p)/n) (интервал Вальда) годится, только когда и конверсий, и не-конверсий больше десяти; на редких событиях она занижает интервал и может уехать в отрицательные значения. Быстрее всего — в калькуляторе доверительного интервала.
Сколько нужно пользователей, чтобы измерить конверсию?
Считать надо не пользователей, а конверсии: для относительной точности ±20% нужно около 100 конверсий, для ±10% — около 384, для ±30% — около 43. Число пользователей получается делением: нужные конверсии ÷ ожидаемая конверсия. При конверсии 1.67% и цели ±20% это примерно 5 700 наблюдений.
Можно ли верить конверсии, посчитанной по 5 заказам?
Нет. Пять заказов из 300 кликов дают 1.67% с интервалом [0.71%, 3.84%] — от края до края разница в пять раз. Относительная точность такого замера около ±90%. Это не измерение, а порядок величины: годится, чтобы отличить «около процента» от «около десяти процентов», и не годится ни для какого решения точнее.
Чем интервал Вильсона лучше интервала Вальда?
Вальд опирается на нормальное приближение биномиального распределения, которое ломается на редких событиях: реальная вероятность накрытия падает ниже заявленных 95%, а нижняя граница может стать отрицательной. Вильсон несимметричен, никогда не выходит за границы 0 и 1 и держит заявленный уровень доверия даже при единичных конверсиях. На больших числах они совпадают — поэтому Вильсона можно ставить дефолтом и не думать.
Если интервалы двух версий пересекаются, значит разницы нет?
Нет, это популярная ошибка. Пересечение интервалов не означает отсутствия значимой разницы: 5 заказов из 300 против 15 из 300 дают пересекающиеся интервалы [0.71%, 3.84%] и [3.05%, 8.08%], но p-value = 0.023 — разница значима. Для сравнения версий нужен интервал разницы конверсий, а не два отдельных интервала. Обратное правило работает: если интервалы не пересеклись, разница точно значима.
Что делать, если конверсий мало, а ответ нужен сейчас?
Три рабочих хода: агрегировать более длинный период (если продукт не менялся), мерить шаг воронки выше, где событий на порядок больше, или взять частый прокси-показатель, коррелирующий с целевым. Четвёртый — отдать в отчёт интервал вместо точки и принимать решение с учётом его ширины. Иногда честный вывод звучит как «данных не хватает, чтобы отличить 1% от 3%» — и это тоже результат.
Точность замера определяется числом конверсий, а не числом пользователей. Пять заказов дают точность ±90% независимо от того, сколько людей пришлось прогнать через воронку, чтобы их получить. Ориентир для памяти: ~100 конверсий — это ±20%, и вдвое лучшая точность стоит вчетверо больше данных.
Считай интервалом Вильсона, а не школьной формулой: на редких событиях Вальд занижает интервал и внушает уверенность ровно там, где данных меньше всего. И помни границу его ответственности — интервал меряет случайный шум, но ничего не знает про ботов, кривую разметку и праздничную неделю.
Практика: возьми любую конверсию из своего дашборда, посчитай для неё интервал и посмотри, изменится ли решение, если истина окажется на краю. Если да — данных не хватает, каким бы красивым ни выглядело точечное число.
АТ
Андрей Тарасенко
// Продуктовый аналитик · Авито · Ментор
«Хватает ли данных» — вопрос, который мне задают чаще любого другого: в личке, на консультациях и на разборах. Обычно приносят красивое точечное число из свежего дашборда, а под ним оказывается пять событий. Статья — попытка ответить один раз и подробно.
Калькулятор доверительного интервала: введи наблюдения и конверсии — получи интервал и вердикт. Второй режим считает наоборот: сколько выборки нужно под точность ±20%.