Рассчитайте точное количество пользователей на вариацию для вашего эксперимента — с поправками на последовательное тестирование, неопределённость измерений, сверхдисперсию и снижение дисперсии, которые другие калькуляторы игнорируют.
Другие калькуляторы считают n при идеальных условиях. Мы — при реальных.Загрузка WASM движка…
Запускать A/B тест без предварительного расчёта выборки — всё равно что навигировать без карты. Слишком мало пользователей — и вы пропустите реальный эффект (ошибка II рода), сделав вывод «разницы нет», когда она есть. Слишком много — и вы потратите время, бюджет и альтернативные издержки на эксперимент, который длился дольше необходимого.
Размер выборки определяет два ключевых свойства теста: статистическую мощность (вероятность обнаружить реальный эффект) и точность (ширину доверительного интервала). Недостаточно мощный тест может показать незначимый результат для эффекта, который реален и экономически значим. Избыточно мощный тест расходует ресурсы, которые можно было бы направить на следующий эксперимент.
В рекламе ставки конкретны. Каждый день работы эксперимента — это день, когда вы делите бюджет между контролем и вариантом. Если вариант хуже — вы сжигаете деньги. Если лучше — вы теряете выручку, не развернув его на весь трафик. Правильный расчёт размера выборки находит оптимум: достаточно наблюдений для надёжного вывода без единого лишнего дня альтернативных издержек.
Большинство практиков используют стандартную формулу фиксированного горизонта и на этом останавливаются. Но эта формула опирается на допущения, которые редко выполняются на практике: отсутствие промежуточных проверок, некоррелированность пользователей, отсутствие шума измерений, мгновенные конверсии. Когда эти допущения нарушаются — а они нарушаются всегда — «правильный» размер выборки оказывается неправильным. Для этого и существует этот калькулятор.
Каждый популярный калькулятор размера выборки — Evan Miller, Statsig, Optimizely, GrowthBook — вычисляет одну и ту же формулу Z-теста фиксированного горизонта. Они дают ответ при идеальных условиях: единственный анализ в конце, идеально измеренные исходы, независимые наблюдения и мгновенные конверсии. Вот что они упускают.
Промежуточные проверки результатов (последовательное тестирование). Если вы планируете проверять тест до набора запланированного объёма, фактический уровень значимости инфлируется. Групповой последовательный дизайн (O'Brien-Fleming, Pocock) контролирует это, расходуя alpha по промежуточным проверкам, но требует больше данных. При 5 проверках увеличение составляет от 3% (OBF) до 25% (Pocock). Ни один конкурентный калькулятор не показывает эту инфляцию.
Сверхдисперсия. Пользователи в одном регионе, на одном типе устройств или в одном временном когорте коррелированы, поэтому реальная дисперсия превышает биномиальное допущение. Даже малая внутрикластерная корреляция (rho = 0,001) может увеличить требуемый n на 10-30%. Модель Beta-Binomial учитывает это одним параметром, но стандартные калькуляторы предполагают rho = 0.
Неопределённость измерений. В рекламе наблюдаемый результат — не истинный результат. Измерение видимости имеет ~15% шума, детекция фрода добавляет ~5%, кросс-девайс атрибуция — ~10%. Это создаёт неустранимый порог дисперсии, который не уменьшается с ростом данных. Если систематический шум велик относительно эффекта, который вы пытаетесь обнаружить, — никакой размер выборки не поможет, эффект необнаружим. Этот калькулятор вычисляет точный порог.
Задержка конверсий. Когда конверсии происходят через дни или недели после показа, короткое окно наблюдения теряет их часть. Окно в 7 дней при типичной задержке e-commerce захватывает около 88% конверсий, требуя ~14% больше пользователей для компенсации. Стандартные калькуляторы предполагают мгновенную конверсию.
Возможности снижения дисперсии. CUPED (Controlled-experiment Using Pre-Experiment Data) может уменьшить требуемый размер выборки на 10-50%, используя доэкспериментальные ковариаты для поглощения шума. Если у вас есть такие данные, вы упускаете мощность. Ни один конкурентный калькулятор не показывает выгоду от CUPED.
Итог: «размер выборки» из стандартного калькулятора — это нижняя граница, игнорирующая реальные условия измерений. Ваш реальный эксперимент будет недостаточно мощным, если не учесть эти факторы. Именно это и делает этот калькулятор.
Основа — формула двухвыборочного Z-теста пропорций (формулировка Fleiss/Lachin): объединённая дисперсия под H0 для alpha-члена и раздельная дисперсия для beta-члена. Это даёт стандартный размер выборки фиксированного горизонта nfixed.
Инфляция последовательного тестирования вычисляется через построение группового последовательного дизайна с функциями расходования alpha (O'Brien-Fleming или Pocock). Критическое значение последней проверки, отнесённое к критическому значению фиксированного горизонта, даёт коэффициент инфляции размера выборки.
Сверхдисперсия использует коэффициент инфляции дисперсии VIF = 1/(1 - rho) из модели Beta-Binomial, где rho — внутрикластерная корреляция.
Систематики измерений добавляют неустранимый порог дисперсии vsys = 2 * (sigma * p̄)² к статистической дисперсии одного наблюдения. Коэффициент инфляции: delta² / (delta² - (zalpha + zbeta)² * vsys). Когда знаменатель обращается в ноль, эффект необнаружим.
CUPED снижает дисперсию на множитель (1 - rho²), где rho² — квадрат корреляции между доэкспериментальной ковариатой и метрикой исхода.
Поправка на задержку использует модель экспоненциального затухания: наблюдаемая доля = 1 - exp(-lambda * окно). Коэффициент инфляции = 1 / наблюдаемая доля.
Все поправки мультипликативно применяются к nfixed: nadjusted = nfixed * инфляцияпоследовательная * инфляциясверхдисперсия * инфляциясистематики * снижениеCUPED * инфляциязадержка.
Все вычисления выполняются в вашем браузере через WebAssembly, скомпилированный из той же
библиотеки Rust ns-inference, которая работает в полной платформе NextStat.
Без приближений, без серверных вызовов, данные не покидают ваше устройство.
Литература:
Минимальный детектируемый эффект (MDE) — наименьшее улучшение, которое стоит обнаруживать. Его выбор — бизнес-решение, а не статистическое. Задайте его слишком малым — и вам потребуются миллионы пользователей; слишком большим — и вы пропустите реальные улучшения.
Начните с выручки. Рассчитайте влияние 1% относительного прироста конверсии на выручку. Если базовая конверсия 2% при 100 000 ежемесячных посетителей со средним чеком 3 000 ₽, 1% относительный прирост (2% → 2,02%) — это ~20 дополнительных конверсий/месяц = 60 000 ₽/месяц. Стоит ли это эксперимента? Если нет — увеличивайте MDE, пока отдача не оправдает затраты.
Учтите стоимость эксперимента. Каждый день эксперимента вы делите трафик. Если вариант лучше — вы получаете лишь половину прироста. Если хуже — вы тратите бюджет на проигрывающую сторону. Стоимость 30 лишних дней часто превышает ценность обнаружения 1% прироста вместо 5%.
Практическое правило для рекламы: большинство A/B тестов на уровне кампаний в Яндекс.Директ и Google Ads используют MDE 5-20%. Тесты лендингов с высоким трафиком могут снижать до 2-5%. Тесты креативов или стратегий ставок с ограниченным трафиком обычно используют 10-30%. Если требуемый размер выборки превышает доступный трафик в разумном окне (2-4 недели) — увеличивайте MDE.
Размеры выборки на руку для фиксированного горизонта при типичных базовых конверсиях, alpha = 0,05 и мощность = 0,80 (двусторонний тест). Это наивные оценки — добавьте поправки на последовательное тестирование, сверхдисперсию и систематики для реального планирования.
| Базовая конверсия | MDE 5% | MDE 10% | MDE 15% | MDE 20% | MDE 30% | MDE 50% |
|---|---|---|---|---|---|---|
| 0.5% | 6,147,370 | 1,536,843 | 683,042 | 384,211 | 170,760 | 61,474 |
| 1% | 3,042,094 | 760,524 | 337,999 | 190,131 | 84,503 | 30,421 |
| 2% | 1,489,478 | 372,370 | 165,498 | 93,093 | 41,375 | 14,895 |
| 5% | 555,648 | 138,912 | 61,739 | 34,728 | 15,435 | 5,557 |
| 10% | 254,298 | 63,575 | 28,255 | 15,894 | 7,064 | 2,543 |
| 20% | 103,192 | 25,798 | 11,466 | 6,450 | 2,867 | 1,032 |
| Возможность | NextStat | Evan Miller | Statsig | Optimizely | GrowthBook |
|---|---|---|---|---|---|
| Z-тест фиксированного горизонта | Да | Да | Да | Да | Да |
| Инфляция последовательного тестирования | Да | Нет | Нет | Нет | Нет |
| Поправка на сверхдисперсию | Да | Нет | Нет | Нет | Нет |
| Систематики измерений | Да | Нет | Нет | Нет | Нет |
| Снижение дисперсии CUPED | Да | Нет | Нет | Нет | Нет |
| Поправка на задержку | Да | Нет | Нет | Нет | Нет |
| Кривые мощности и MDE | Да | Да | Нет | Нет | Да |
| Разбор чувствительности | Да | Нет | Нет | Нет | Нет |
| Сравнение наивный vs реальный | Да | Нет | Нет | Нет | Нет |
| 100% на клиенте (WASM) | Да | Да | Нет | Нет | Нет |
| Открытый вычислительный движок | Да | Нет | Нет | Нет | Да |
Для двухвыборочного Z-теста пропорций размер выборки на руку: n = (z_alpha * sqrt(2 * p_bar * (1 - p_bar)) + z_beta * sqrt(p1 * (1 - p1) + p2 * (1 - p2)))² / (p2 - p1)², где p1 — базовая конверсия, p2 — ожидаемая конверсия в тестовой группе, p_bar — объединённая конверсия, z_alpha — критическое значение для уровня значимости, z_beta — критическое значение для мощности. Формула предполагает тест с фиксированным горизонтом без промежуточного анализа.
Последовательное тестирование (групповой последовательный дизайн) позволяет проверять результаты на заранее запланированных промежуточных этапах без инфляции ложноположительных результатов. Компромисс — увеличение максимального размера выборки, обычно на 3-25% в зависимости от количества проверок и функции расходования. Границы O'Brien-Fleming добавляют минимальную инфляцию (~3% для 5 проверок), а Pocock — больше (~25% для 5 проверок).
Сверхдисперсия возникает, когда дисперсия данных превышает предсказание биномиальной модели. Пользователи в одном регионе, на одном устройстве или в одном временном когорте коррелированы. Даже малая внутрикластерная корреляция (rho = 0,001) может увеличить требуемый размер выборки на 10-30%. Модель Beta-Binomial учитывает это. Большинство калькуляторов игнорируют этот эффект.
Это систематические неопределённости, которые не уменьшаются с ростом данных: ошибка измерения видимости (~15%), неопределённость детекции фрода (~5%), шум кросс-девайс атрибуции (~10%). Они создают неустранимый порог дисперсии. Если систематический шум велик относительно эффекта, эффект становится необнаружимым при любом размере выборки.
CUPED (Controlled-experiment Using Pre-Experiment Data) снижает дисперсию, используя данные до эксперимента в качестве ковариат. Если корреляция (rho-squared) между ковариатой и метрикой исхода равна 0,25, CUPED уменьшает требуемый размер выборки на 25%. Это фактически бесплатная мощность — те же данные, больше сигнала.
Другие калькуляторы считают размер выборки при идеальных условиях: без промежуточных проверок, без сверхдисперсии, без шума измерений, без задержки. Если вы планируете проверять промежуточные результаты (последовательное тестирование), пользователи коррелированы (сверхдисперсия) или система измерения зашумлена (систематики) — вам нужно больше данных. Индикатор «Наивный vs Реальный» показывает точную разницу.
Нет. Все вычисления на 100% выполняются на стороне клиента через WebAssembly (WASM). Движок написан на Rust и скомпилирован в ~130 КБ WASM-бинарник, работающий в Web Worker. Ваши данные никогда не покидают браузер.
Двусторонний тест (по умолчанию) обнаруживает как улучшения, так и ухудшения. Односторонний — только улучшения, требует меньше данных, но не может обнаружить вред. Используйте двусторонний для продуктовых экспериментов, где деградация критична.
O'Brien-Fleming использует консервативные ранние границы и мягкие поздние — минимальный дополнительный расход на размер выборки (~3% для 5 проверок), но ранняя остановка маловероятна без сильного эффекта. Pocock использует одинаковые границы — ранняя остановка вероятнее, но максимальный размер выборки на 20-30% больше. Для большинства рекламных экспериментов рекомендуется O'Brien-Fleming.
Конверсии, происходящие через дни или недели после показа, теряются при коротком окне наблюдения. Окно в 7 дней с lambda = 0,3 захватывает около 88% конверсий, требуя ~14% больше пользователей для компенсации. Этот калькулятор моделирует точную инфляцию.
NextStat Ads подключается к вашему аккаунту Яндекс.Директ и запускает последовательные A/B тесты с реальными правилами остановки, каузальной атрибуцией и прогнозированием метрик.
Попробовать NextStat Ads бесплатно