A/B-тесты · ПланированиеМинимальный детектируемый эффект (MDE)
MDE калькулятор: какой эффект A/B-тест увидит при вашем трафике и сроке. Абсолютный и относительный MDE, вердикт обычным языком, таблица по неделям, формула и код Python и R.
Цифры остаются в браузере и никуда не отправляются
from math import sqrt
from scipy.optimize import brentq
from scipy.stats import norm
p1, n = 0.02, 2000
alpha, power = 0.05, 0.8
z_a, z_b = norm.ppf(1 - alpha / 2), norm.ppf(power)
def need(p2): # выборка на группу для p1 → p2
pb = (p1 + p2) / 2
return (z_a * sqrt(2 * pb * (1 - pb)) + z_b * sqrt(p1 * (1 - p1) + p2 * (1 - p2))) ** 2 / (p2 - p1) ** 2
p2 = brentq(lambda p: need(p) - n, p1 * 1.000001, 0.999999)
print(p2, p2 / p1 - 1) # 0.034408
04
Примеры
05
Частые вопросы
MDE, минимальный детектируемый эффект, — самое маленькое изменение, которое тест надёжно заметит при заданных α и мощности. Эффекты меньше MDE тест, скорее всего, пропустит и покажет «не значимо». Например, при конверсии 2 %, 1 000 посетителях в неделю и сроке 4 недели MDE равен +72 %: конверсия должна вырасти до 3,44 %, чтобы тест это увидел с мощностью 80 %.
Зависит от того, что тестируете. Для правки текста, цвета или кнопки реальные эффекты — 1–5 %, для нового оффера, цены или переделанной страницы — 10–30 %. Если MDE теста больше +30 %, он увидит только очень крупные изменения, а мелкие правки останутся невидимыми. Калькулятор так и пишет в вердикте: чувствительный тест, подходит для заметных изменений или видит только крупные.
Больше трафика или времени, меньше вариантов, CUPED или менее шумная метрика. MDE падает медленно: он обратно пропорционален корню из выборки, поэтому вдвое меньший MDE требует примерно вчетверо больше посетителей. При конверсии 2 % и 1 000 посетителях в неделю за 4 недели тест видит +72 %, за 12 недель — около +40 %. Таблица по неделям показывает, сколько даёт каждая лишняя неделя.
Это один и тот же эффект в двух записях. Абсолютный — в процентных пунктах: рост конверсии с 2 % до 2,3 % — это +0,3 п. п. Относительный — в процентах от базы: тот же сдвиг — +15 %. В A/B-тестах чаще говорят об относительном, потому что его легче сравнивать между страницами с разной конверсией. Калькулятор показывает обе записи рядом.
Чаще всего настоящий эффект был меньше MDE, и тест просто не мог его увидеть. «Не значимо» не значит «эффекта нет» — это значит, что выборки не хватило, чтобы отличить его от шума. Посчитайте MDE для своего трафика и срока: если он +40 %, а вы ждали +5 %, тест был обречён заранее. Такой результат — повод планировать выборку до запуска.
Чем дольше тест, тем больше посетителей и тем меньше MDE, но выигрыш медленный. При конверсии 2 % и 1 000 посетителях в неделю тест за неделю видит только очень крупные сдвиги, за 4 недели — от +72 %, за 12 недель — около +40 %. Обратная задача — сколько ждать ради заданного эффекта — решается на странице размера выборки.