Перейти до змісту
Увійти

Теорія

План A/B-тесту: гіпотеза, метрика, guardrail-метрики

Записати план A/B-тесту до запуску: гіпотеза, одна основна метрика, guardrail-метрики і правило рішення.

~9 хв читання · 9 вправ · 250 балів

Перед початком

Чи спрацювала зміна?

Ти в продуктовій команді Halves — застосунку, який ділить спільні витрати між сусідами по квартирі, парами й компаніями в подорожах; платний план називається Halves Plus. До кожного релізу додається твердження, що він допоміг, а графік після запуску не відділить зміну від сезону чи трафіку. Цей модуль відповідає на одне бізнес-питання — чи спрацювала зміна — за допомогою рандомізованого тесту: як його спланувати, яким великим і довгим він має бути, хто в нього потрапляє і як читати завершений результат. Перший урок пише план: гіпотезу, метрики й правило рішення, зафіксовані до запуску.

Чому план з'являється раніше за дані

A/B-тест порівнює контрольну групу (поточна версія) з тестовою (зміна), а користувачів розподіляють випадково. Випадковий розподіл робить порівняння чесним. Але від власних рішень команди, ухвалених після появи чисел, він не захищає.

Якщо стежити за двадцятьма метриками, кілька зрушаться просто випадково. Якщо ж команда вирішує вже потім, яка з них важить, переможець знайдеться завжди: тріали для маркетолога з росту, дохід для фінансового директора, щасливий розріз за країною для PM. І тест підтвердить те, на що кожен сподівався.

Стіна з маленькими циферблатами, кілька стрілок смикаються, а кілька людей завзято показують кожен на свій.
Якщо стежити за багатьма числами, деякі з них зрушать просто випадково.

Тому план A/B-тесту записують, датують і погоджують до того, як перший користувач побачить зміну. Він фіксує чотири речі на одній сторінці:

  1. гіпотезу, яка може виявитися хибною;
  2. одну основну метрику, від якої залежить рішення;
  3. запобіжні метрики (guardrail) зі шкодою, якої ти не приймеш;
  4. правило рішення: до чого призведе кожен можливий результат.

План не змінює поведінки користувачів і не скасовує читання результату як ефекту з інтервалом. Він лише прибирає рішення, які інакше ухвалювали б, уже побачивши дані.

  • Так
    План датовано п'ятницею; тест стартує в понеділок; результат читають один раз на запланованому обсязі
  • Не так
    «Запускаймо, виведемо все на один дашборд і подивимося, що зрушиться.»

    Гарантує випадкового «переможця» серед багатьох метрик.

Гіпотеза, яка може програти

Корисна гіпотеза A/B-тесту має чотири частини:

  • зміна: paywall починається з 7-денного безкоштовного тріалу;
  • кого вона зачіпає: користувачів, які дійшли до paywall;
  • що має зрушитися, з вікном: частка тих, хто оплатив протягом 14 днів;
  • чому: спершу спробувавши Plus, платити вже не так ризиковано.

Вікно важливе. З 7-денним тріалом перше списання буде щонайраніше на 8-й день, тож 14 днів залишають на нього час і дають кожному користувачеві однаково часу на оплату, байдуже, чи потрапив він у тест у понеділок, чи в неділю.

Перевірка гіпотези проста: чи можуть дані довести, що вона хибна? «Користувачам новий paywall сподобається більше» чи «досвід покращиться» у такому вигляді не виміряти, тож жоден результат їм не суперечитиме. «Кращий за всіма метриками» виміряти можна, але це штовхає шукати: якась із багатьох метрик зрушиться.

Добра гіпотеза називає число, яке може вийти незмінним або гіршим. Чому теж корисне: якщо основна метрика не зрушиться, причина підкаже, що пробувати далі.

  • Так
    «Тріал на 7 днів на початку paywall збільшить частку тих, хто його побачив і оплатив протягом 14 днів, бо спершу спробувати — менший ризик.»
  • Не так
    «Користувачі краще зрозуміють цінність Halves Plus.»

    Ні метрики, ні вікна: ніщо не доведе, що це хибно.

Чотири ролі метрики в тесті

План тесту дає кожному числу роль, і вирішує лише одна з них.

  • Основна метрика: одне число, від якого залежить рішення. Для paywall: частка користувачів тесту, які оплатили протягом 14 днів після першого перегляду paywall. Це має бути результат, якого ти справді хочеш, а не крок до нього.
  • Запобіжна метрика (guardrail): число, яке не намагаються покращити, а лише захищають, із запасом допустимої шкоди. Тут: частка тих, хто й далі додає витрату на 8–14-й день.
  • Другорядна метрика: її читають, щоб пояснити, чому зрушилася основна. Сюди належать розпочаті тріали. Paywall може подвоїти тріали й однаково залишити менше платних, якщо більшість тріалів закінчиться, тож тріали не можуть бути метою.
  • Дослідницькі зрізи: розбивки за країною, платформою чи каналом. Тест на них не розраховували, а кожен додатковий зріз — ще одна нагода знайти випадкову різницю, тож вони дають ідеї для наступного тесту, а не рішення.
Багато людей проходять безкоштовний турнікет у крамницю, але лише кілька доходять до каси й виходять із чеком.
Тріал — лише крок; рішення залежить від того, скільки людей зрештою заплатять.

Звична спокуса — зробити основною швидку другорядну метрику, бо вона показує результат за кілька днів. Це вибір метрики за швидкістю, а не за тим, що потрібно бізнесу.

  • Так
    Основна: оплата протягом 14 днів. Другорядна: розпочаті тріали. Запобіжна: витрата на 8–14-й день.
  • Не так
    Основна: розпочаті тріали, «бо вони рухаються швидше»

    Це крок, а не мета: тріали можуть рости, а платні — падати.

Чому лише одна основна метрика

Кожна метрика, яку читають за рівня хибних спрацювань 5%, має 5% шансу «виграти», навіть коли зміна нічого не робить. Одна метрика — один ризик 5%. Кілька метрик, кожна з яких може оголосити перемогу, множать шанси.

Для незалежних метрик імовірність, що хоч одна виграє випадково:

P(хоч одна хибна перемога) = 1 − 0,95^k

де k — кількість метрик, які можуть запустити рішення.

  • k = 1: 5%;
  • k = 2: 1 − 0,95² = 1 − 0,9025 ≈ 9,8%;
  • k = 3: 1 − 0,95³ = 1 − 0,857375 ≈ 14,3%;
  • k = 10: 1 − 0,95¹⁰ ≈ 40,1%.

Справжні метрики зазвичай пов'язані між собою, тож реальне число дещо нижче, але напрям той самий: більше способів виграти — більше хибних перемог. Тому план називає одну основну метрику, а решту — другорядними, запобіжними чи дослідницькими.

Якщо рішенню справді потрібні два результати, є формальні поправки, які посилюють кожен поріг. Побачивши звіт із багатьма метриками й одним «значущим» результатом серед них, назви множинні порівняння, перш ніж хтось почне святкувати.

  • Так
    1 − 0,95³ = 1 − 0,857 ≈ 14,3%
  • Не так
    3 × 5% = 15% або «все одно 5%, кожну метрику ж перевіряють на 5%»

    Додавання трохи перебільшує; ігнорування множення сильно применшує.

Запобіжні метрики: запас, визначений наперед

Запобіжна метрика (guardrail metric) захищає те, що зміна може зламати. Наполегливіший paywall може дратувати людей, які лише хочуть поділити оренду, тож тест paywall стереже частку користувачів, які й далі додають витрату на 8–14-й день.

Автомобіль мчить гірською дорогою до прапорця, а вздовж краю урвища тягнеться міцна огорожа.
Запобіжна метрика не для перемоги, а щоб показати, що нічого важливого не зламалося.

Запобіжній метриці потрібен запас: найбільша втрата, яку ти приймеш в обмін на виграш. Тут це 3 відсоткові пункти. Обрати 3, а не 1, — бізнесове рішення, але коли його ухвалюють, важить більше за саме число: після тесту будь-яке падіння здається невеликим тому, хто хоче запускати.

Запобіжну метрику читають з інтервалом, як і основну. Вона проходить перевірку, лише коли весь 95% інтервал для різниці «тест − контроль» лежить вище за −3 п. п., тобто навіть найгірше правдоподібне падіння вкладається в запас.

«Падіння незначуще» — ще не проходження. Незначуще означає лише, що інтервал містить нуль. Інтервал від −4,5 до +0,5 п. п. незначущий, і все одно допускає падіння на 4,5 пункту, більше за запас. Малий тест легко пропускає справжню шкоду; інтервал показує, скільки шкоди він міг пропустити.

  • Так
    Інтервал запобіжної метрики від −2,0 до +0,4 п. п., запас −3 п. п. → проходить
  • Не так
    Інтервал від −4,5 до +0,5 п. п.: «незначуще, отже, шкоди немає»

    Падіння на 4,5 пункту досі правдоподібне, а це більше за запас у 3 пункти.

Як перевірити інтервал проти запасу

Щоб перевірити запобіжну метрику, потрібні дві речі: її запас із плану і її 95% інтервал для різниці «тест − контроль». Далі дивися лише на один кінець інтервалу: нижню межу, найгірший правдоподібний ефект.

  • Нижня межа вище за запас: навіть найгірший випадок прийнятний. Метрика проходить.
  • Нижня межа нижче за запас: шкідливе падіння правдоподібне. Метрика не проходить, хоч би що казала точкова оцінка.

Два приклади із запасом −3 п. п.:

  • від −2,0 до +0,4 п. п.: у найгіршому разі падіння на 2,0 пункту, у межах запасу. Проходить.
  • від −3,6 до +0,2 п. п.: точкова оцінка близько −1,7 п. п., інтервал містить нуль, тож результат «незначущий». Але падіння на 3,6 пункту правдоподібне. Не проходить.

Зверни увагу: другий результат на дашборді виглядає заспокійливо — невелика від'ємна оцінка, жодної позначки значущості. Але це провал, бо план питав, чи можна виключити шкоду понад 3 пункти, а цей тест її не виключає.

Широкий інтервал запобіжної метрики зазвичай означає, що тест замалий для такого запасу. Це проблема планування, яку виправляють до запуску, а не після.

  • Так
    Нижня межа −2,0 > −3 → проходить
  • Не так
    Оцінка −1,7 п. п., інтервал від −3,6 до +0,2: «мало й незначуще, проходить»

    Нижня межа виходить за запас.

Правило рішення: три гілки

Правило рішення заздалегідь каже, що буде за кожного можливого результату. Його записують через ефект тест − контроль у відсоткових пунктах, його 95% інтервал і найменший ефект, заради якого варто запускати (тут +1 п. п.: менший виграш не вартий зміни).

План тесту: paywall із тріалом на початку · є вище

Для основної метрики інтервал потрапляє в один із трьох випадків:

  • Повністю вище за 0 (і запобіжна метрика проходить): запускаємо. Paywall допомагає.
  • Містить 0 і лежить нижче за +1 п. п.: не запускаємо. Хай який ефект, він замалий, щоб мати значення.
  • Будь-що інше, зазвичай інтервал, що містить і 0, і +1 п. п.: непевний результат. Лишаємо поточну версію й вирішуємо, чи вартий більший тест.
Запускаємо, коли інтервал основної метрики повністю вище за 0; не запускаємо, коли він містить 0 і нижче +1 п. п.; якщо охоплює обидва — результат непевний.

Візьмімо +0,4 п. п. з інтервалом від −0,5 до +1,3 п. п. Інтервал містить 0, тож не можна сказати, що paywall допомагає. Він сягає й +1,3, тож не можна сказати, що ефект замалий. Це непевний результат.

Поширені дві хибні інтерпретації. «Незначущий, отже, ефекту немає» ігнорує, що інтервал досі допускає вартий виграш. «+0,4 — додатне, запускаймо» ігнорує, що інтервал допускає втрату. Правило читає весь інтервал, а не саму точкову оцінку.

  • Так
    +0,4 п. п., від −0,5 до +1,3 → містить 0 і +1 → непевно
  • Не так
    «p > 0,05, новий paywall не має ефекту.»

    Інтервал досі допускає виграш до 1,3 п. п.

Запобіжна метрика може скасувати перемогу

Гілка «запускаємо» потребує обох умов: інтервал основної метрики повністю вище за 0 і інтервал запобіжної метрики повністю вище за її запас. Чиста перемога за основною не скасовує провалу запобіжної.

Припустімо, тест paywall закінчився так:

  • основна, тест − контроль: +1,8 п. п., інтервал від +0,6 до +3,0 п. п.: чіткий виграш;
  • запобіжна: −2,1 п. п., інтервал від −3,8 до −0,4 п. п.: падіння, яке може перевищити запас у 3 пункти.

Правило каже: не запускаємо. Платить більше людей, але тест не виключає, що понад 3 пункти користувачів перестануть додавати витрати, а саме такої шкоди команда заздалегідь погодилася не приймати. Переглядати цю домовленість зараз, коли на столі виграшне число, — якраз те, від чого план і захищає.

Несподіваний провал вимагає нової версії й нового плану, а не нового тлумачення цього. А результат читають один раз, на запланованому обсязі (чому — пояснює урок Наскільки великий і наскільки довгий).

Як це складається докупи: гіпотеза, яка може програти, одна основна метрика, запобіжні метрики із запасами й правило з трьома гілками, датовані до запуску, роблять із результату рішення, а не суперечку. Далі урок Наскільки великий і наскільки довгий визначає розмір тесту.

  • Так
    Основна від +0,6 до +3,0, запобіжна від −3,8 до −0,4 (запас −3) → не запускаємо
  • Не так
    «Платних явно більше; −2,1 п. п. використання — прийнятна ціна.»

    Переглядає запас, побачивши результат, і ігнорує межу −3,8.

Готові потренуватися?

Виконайте вправи уроку й отримайте 250 балів, коли пройдете його вперше.

Розпочати вправи