p-value простыми словами: что он показывает и чего не доказывает
Что на самом деле измеряет p-value, почему 0,05 — не граница истины, как читать его вместе с доверительным интервалом и что делать, когда результат «незначим».
Содержание статьи
На разборе эксперимента почти всегда звучит одна фраза: «p-value 0,03, значит фича сработала». Дальше обсуждают раскатку. Проблема в том, что произнесённое утверждение и посчитанное число говорят о разном: p-value не измеряет ни пользу фичи, ни вероятность того, что вы правы. Разберём, что он измеряет на самом деле, как читать его рядом с размером эффекта и почему «незначимо» почти никогда не означает «разницы нет».
Коротко
Если запомнить из статьи одно: p-value — это свойство данных при заранее принятом предположении, а не вердикт о продукте.
- p-value отвечает: насколько такие или более крайние данные вероятны, если разницы на самом деле нет.
- Он не равен вероятности того, что гипотеза верна, и не измеряет размер эффекта.
- Порог 0,05 — соглашение, а не закон природы; выбирать его нужно из цены ошибки.
- Рядом с p-value всегда должен стоять доверительный интервал: он показывает диапазон правдоподобных значений эффекта.
- Большое p-value означает «не увидели», а не «нет эффекта» — особенно на маленькой выборке.
Что именно считает p-value
Перед расчётом всегда есть предположение, от которого отталкиваются: разницы между вариантами нет. Его называют нулевой гипотезой. p-value отвечает на вопрос: если это предположение верно и наш способ подсчёта корректен, насколько вероятно получить наблюдаемую разницу или ещё большую?
Ключевое слово — «если». Расчёт идёт в мире, где эффекта нет, и оценивает, насколько наши данные необычны для этого мира. Маленькое p-value значит, что данные плохо согласуются с таким миром. Оно ничего не говорит о том, насколько вероятен сам этот мир.
Отсюда самая частая подмена. «p = 0,03» превращают в «вероятность того, что фича не работает, 3%». Это разные величины: первая — вероятность данных при гипотезе, вторая — вероятность гипотезы при данных. Чтобы получить вторую, нужны дополнительные предположения о том, насколько правдоподобной гипотеза была до эксперимента.
p = P(данные такие же или более крайние | эффекта нет)Условие стоит справа от вертикальной черты. Перевернуть его нельзя.
Разбор на живом эксперименте
Возьмём тест из финальной главы SQL-курса. Продукт «Маяк» показывал новым пользователям чеклист первого шага. В контрольной группе 500 участников и 105 активаций, в тестовой — 500 участников и 135 активаций. Конверсия 21% против 27%, разница 6 процентных пунктов.
Для двух долей считается z-статистика: разницу делят на её стандартную ошибку. Здесь получается z ≈ 2,22, а двусторонний p-value ≈ 0,026. По привычному порогу — «значимо».
Но само по себе это число почти ничего не решает. Гораздо содержательнее доверительный интервал разницы: от +0,7 до +11,3 процентного пункта. То есть данные совместимы и с почти незаметным приростом, и с очень крупным. Решение о раскатке выглядит по-разному в зависимости от того, окупается ли изменение при +0,7 п.п.
| Величина | Значение | Что она говорит |
|---|---|---|
| Разница конверсий | +6,0 п.п. | наблюдаемый размер эффекта |
| p-value | 0,026 | такие данные редки, если эффекта нет |
| 95% доверительный интервал | от +0,7 до +11,3 п.п. | диапазон правдоподобных значений эффекта |
| Минимально полезный эффект | задаётся до теста | граница, ниже которой изменение не окупается |
Тот же эффект, разные p-value
Полезно один раз увидеть, насколько p-value зависит от размера выборки при неизменном эффекте. Возьмём ту же разницу конверсий — 21% против 27% — и просто меняем число участников в группе.
На сотне человек в группе тот же прирост даёт p ≈ 0,32: данные вполне совместимы со случайностью. На пятистах — 0,026. На двух тысячах — уже около 0,00001. Эффект во всех трёх случаях одинаковый; меняется только наша способность его различить.
Из этого следуют два вывода, которые обычно путают. Первый: «незначимо» на маленькой выборке — почти неинформативный результат. Второй, обратный: на очень больших данных значимым становится практически любое отличие, включая то, которое не окупает разработку. Поэтому размер эффекта и порог полезности надо называть до теста, а не искать смысл в числе после.
Значения p-value для двустороннего z-теста двух долей. Эффект неизменен, различается только выборка.
Односторонний или двусторонний
Двусторонний тест спрашивает: «отличается ли результат от нуля в любую сторону». Односторонний — «стал ли он именно лучше». Односторонний даёт вдвое меньшее p-value при тех же данных, и на этом соблазне держится большинство злоупотреблений.
Выбирать сторону можно только до эксперимента и только если ухудшение вас не интересует вообще — то есть при отрицательном результате вы поступите точно так же, как при нулевом. В продуктовой работе это редкость: падение конверсии почти всегда важно заметить, поэтому по умолчанию берут двусторонний вариант.
Совсем плохой случай — выбрать сторону после того, как увидели направление эффекта. Это то же подглядывание, только в одном шаге: вы подстраиваете критерий под уже известный ответ.
Почему 0,05 — это соглашение
Порог 0,05 закрепился исторически и удобен как общий язык, но он не следует ни из какой теории. Выбор порога — это выбор допустимой доли ложных тревог: при 0,05 примерно один из двадцати тестов без реального эффекта покажет «значимый» результат.
Практический вывод: порог стоит выводить из цены ошибки. Если ошибочная раскатка дорога — необратимая миграция, изменение тарифов, риск для guardrail-метрик, — разумнее взять более строгий порог и большую выборку. Если изменение дешёвое и легко откатывается, строгость менее важна: цена ложной тревоги невелика.
И отдельная ловушка: p = 0,049 и p = 0,051 — практически одно и то же число. Между ними нет содержательной границы, хотя по правилу «меньше 0,05» они попадают в разные корзины. Если решение меняется от третьего знака после запятой, значит решение опирается не на данные, а на условность порога.
Что делать, если получилось «незначимо»
Большое p-value читают как «эффекта нет». Правильное прочтение другое: имеющихся данных не хватило, чтобы отличить эффект от его отсутствия. Это утверждение о чувствительности эксперимента, а не о продукте.
Проверить это просто — посмотрите на интервал. Если он идёт, скажем, от −1 до +9 п.п., эксперимент совместим и с заметным ростом, и с небольшим падением; вывод «разницы нет» здесь необоснован. Если же интервал узкий, вроде от −0,3 до +0,4 п.п., это уже содержательный результат: крупного эффекта действительно нет, и его можно закрывать.
Отсюда практика: планировать размер выборки заранее, исходя из минимально интересного эффекта. Тест, который физически не способен заметить нужное изменение, даёт «незначимо» независимо от того, работает фича или нет.
Отсутствие доказательства не равно доказательству отсутствия. Прежде чем закрывать гипотезу, посмотрите, какие значения эффекта интервал всё ещё допускает.
Как p-value ломается на практике
Само вычисление предполагает, что дизайн эксперимента соблюдён. Ломается обычно не формула, а этот договор.
Подглядывание: если смотреть результат каждый день и остановиться на первом значении ниже порога, доля ложных срабатываний растёт в разы — вы даёте себе много попыток. Лечится заранее зафиксированным сроком или последовательным дизайном, рассчитанным на промежуточные проверки.
Множественные сравнения: десять метрик и пять сегментов — это пятьдесят проверок, и при пороге 0,05 несколько «находок» появятся случайно. Основная метрика назначается до старта, остальное считается разведкой и требует подтверждения.
Неверная единица наблюдения: если рандомизация идёт по пользователям, а считаются сессии или события, стандартная ошибка занижается, и p-value выходит меньше настоящего. Единица анализа обязана совпадать с единицей рандомизации.
И нарушенное распределение групп: если фактическое соотношение участников заметно расходится с плановым, сначала ищут причину перекоса, а уже потом читают результат.
| Риск | Признак | Что делать |
|---|---|---|
| Подглядывание | тест остановлен в день, когда p впервые упал | зафиксировать срок заранее |
| Множественные проверки | значимость нашлась в одном сегменте из многих | подтверждать отдельным тестом |
| Не та единица | считаем сессии, рандомизируем пользователей | привести анализ к единице рандомизации |
| Перекос групп | фактическое распределение далеко от планового | искать причину до чтения метрики |
| Незрелые данные | последний день периода неполный | исключить или пометить |
Среднее по тесту скрывает сегменты
В том же эксперименте общий прирост 6 п.п. складывается из двух противоположных историй. На десктопе конверсия выросла с 22,5% до 40,5% — плюс 18 пунктов. На мобильных она снизилась с 20% до 18%. Мобильных участников больше, но сильный десктопный эффект перевесил их в среднем.
Значимый общий результат здесь не означает «раскатываем всем». Он означает «в среднем стало лучше», а среднее скрывает группу, которой стало хуже. Решение — раскатка на десктоп и отдельное разбирательство с мобильным сценарием.
Важная оговорка: сегментные находки требуют осторожности именно потому, что их много. Разрез, который вы посмотрели после эксперимента, — это гипотеза, а не вывод. Разница в том, был ли сегмент назван до старта.
Данные из учебного эксперимента SQL-курса. Общий прирост создан десктопом; на мобильных направление обратное.
Если вы читаете чужой отчёт
Проверять эксперимент целиком обычно некогда, но четыре вопроса закрывают большую часть плохих выводов и не требуют доступа к данным.
Спросите размер эффекта в единицах продукта — не в процентах от процента, а «сколько это активаций в неделю». Спросите интервал: если его нет, число выглядит точнее, чем оно есть. Спросите, когда была назначена основная метрика — до старта или после того, как посмотрели результаты. И спросите, что решили бы при обратном знаке эффекта: если ответ «ничего», эксперимент был декоративным.
Если на все четыре есть внятные ответы, значимость можно обсуждать. Если нет — обсуждать пока нечего, каким бы маленьким ни было p-value.
Как написать вывод, который нельзя прочитать неправильно
Формулировка «p-value 0,03, значит фича успешна» не выдерживает ни одной проверки: она не называет размер эффекта, не показывает неопределённость и подменяет условную вероятность утверждением о продукте.
Рабочая формулировка ставит эффект первым, интервал вторым, значимость третьей и заканчивается решением: «Активация выросла на 6 п.п.: 21% против 27% при 500 участниках в группе. 95% интервал — от +0,7 до +11,3 п.п., p = 0,026. Нижняя граница интервала выше порога окупаемости, но эффект целиком создан десктопом, на мобильных направление обратное. Предлагаю раскатить на десктоп и отдельно разобрать мобильный сценарий».
Такой текст длиннее одной строки, зато его нельзя понять неправильно, и он сразу говорит, что делать дальше.
- Размер эффекта — первым, в единицах продукта.
- Доверительный интервал — рядом, без него число выглядит точнее, чем есть.
- p-value — как описание совместимости с гипотезой «разницы нет».
- Дизайн — срок, основная метрика, единица рандомизации.
- Решение и его условие — что делаем и при каких данных передумаем.
Материалы по теме

Статистическая значимость в A/B-тесте: p-value и доверительный интервал
Объясняем статистическую значимость без магии: как читать p-value, доверительный интервал и разницу между “значимо” и “полезно для бизнеса”.

Доверительный интервал: как показать, насколько точна ваша цифра
Что означает 95% доверительный интервал для конверсии и разницы конверсий, как его посчитать, почему он важнее p-value и какая формулировка про него неверна.

Статистическая мощность: почему тест не находит эффект, который есть
Что такое мощность A/B-теста, как она связана с размером выборки и MDE, как посчитать нужное число участников и почему «незначимо» на слабом тесте ничего не доказывает.