A/B на слайде выглядит как «две кнопки, какая конверсия выше». В проде деньги теряют иначе: тест остановили на второй день, потому что B «победил»; в отчёт попали двенадцать метрик, из которых одна зелёная; выборку добрали, пока график не стал приятным. Статистическая значимость при этом часто произносят как заклинание, хотя это только ответ на вопрос «насколько удивительна такая разница, если варианта на самом деле нет».
Ниже — как читать эксперимент в продукте и в аналитике, чем подглядывание ломает вывод, зачем фиксировать метрику до старта и где значимость не равна «надо катить». Формулы и калькуляторы выборки здесь не дублирую: важнее дисциплина, чем красивый p. Портфолио с учебным A/B: портфолио аналитика. Вход в роль: как стать Data Analyst.
Коротко:
- A/B — случайное деление на варианты и сравнение заранее выбранной метрики. Не «посмотрели дашборд и решили».
- Значимость говорит, похоже ли отклонение на шум. Она не говорит, что эффект большой и что его надо катить.
- Размер выборки, метрику, срок и правило остановки фиксируют до трафика, не когда график понравился.
- Подглядывание каждый день и остановка «как только p красивый» — частый способ принять случайность.
- Практическая важность и стоимость раскатки — отдельный разговор после цифры, не вместо неё.
Что сравнивают — и чего не сравнивают
Случайное деление нужно, чтобы группы были похожи до изменения. Иначе вы сравниваете «мобильный трафик во вторник» с «десктоп в пятницу» и называете это тестом кнопки. Сплит должен жить в одном месте: один идентификатор пользователя, одна политика, не «фронт 60%, бэкенд 40%» в двух сервисах.
Одна заранее названная метрика успеха. Остальное — диагностика: воронка, скорость, жалобы поддержки. Если успех не записали, после факта всегда найдётся зелёная линия. Несколько метрик успеха — отдельный дизайн (и отдельная цена ложных побед), не «ещё посмотрим retention, раз уж открыли отчёт».
Контроль — текущий прод, не «как хотелось бы». Новый вариант — одно изменение, не редизайн плюс акция плюс другой шлюз оплаты. Иначе вы не узнаете, что сработало, даже если «B лучше».
Значимость — не важность и не «можно катить»
Команды часто договариваются о пороге вроде привычных пяти процентов. Это правило команды, не закон природы. Оно отвечает: если варианта нет, как часто мы всё равно увидим такой или более сильный перекос. Оно не отвечает: сколько денег, сколько риска, сколько поддержки, можно ли откатить.
Маленький эффект на огромной выборке бывает «значимым» и бесполезным: кнопка зеленее на доли процента, а выкладка ломает доступность. Большой эффект на крошечной выборке бывает «ещё не значимым» и при этом уже виден в жалобах. Не подменяйте одно другим.
Доверительный интервал полезнее одного p: виден разброс. Если интервал эффекта от «чуть хуже» до «чуть лучше», решение «катим, потому что среднее в плюсе» — вкус, не данные. Если интервал целиком в зоне, которую продукт считает ничтожной, значимость не спасает.
Не цитируйте на созвоне «наука доказала прирост». Спросите: какая метрика, какой срок, смотрели ли по дороге, сколько гипотез в том же спринте. Без этого процент на слайде — украшение.
Односторонний и двусторонний критерий, поправка на кучу метрик, байесовские дашборды — уже второй этаж. Их имеет смысл трогать, когда базовая дисциплина стоит: одна метрика, срок, нет ручной остановки. Иначе вы спорите о формуле поверх сломанного сплита.
Подглядывание, ранняя остановка, добор «ещё денёк»
Каждый лишний взгляд в отчёт с правом остановить — новая ставка. Если останавливать в момент, когда B впереди, вы systematically ловите удачные дни. Классический разбор этой ловушки — у Эвана Миллера («How Not To Run an A/B Test»): не открывайте калькулятор p каждый час как игру. Правило остановки пишут заранее: дата, объём, или последовательный метод, который это умеет, а не самодельный «когда станет зелёным».
Добор трафика, пока график не выровняется в нужную сторону — та же игра. Нехватка мощности — честный вывод «не знаем». Не «ещё два дня, у конкурентов же работает».
Срок и сезон: неделя с праздником и неделя без него — разные смеси людей. Фиксируйте длительность так, чтобы закрыть цикл продукта (будни и выходные), а не «пока продакт не уйдёт в отпуск».
Пример 1. Кнопка, которую «победили» во вторник
Команда меняет текст CTA на оплате. Во вторник после обеда вариант B впереди, p «уже красивый». Продакт катит в среду утром. В пятницу поддержка пишет, что часть мобильных сессий не добивает оплату.
До старта записали: метрика — доля успешных оплат на пользователя за полные семь дней; не трогаем тест раньше; диагностические графики без права катить. Во вторник B может лидировать — это не решение. В пятницу смотрят полный цикл и сплит мобильный/десктоп как диагностику, не как вторую победу. Если мощность не добрали — оставляют контроль и планируют новый тест, не «чуть подкрутим цвет и перезапустим на тех же людях».
Перезапуск на той же аудитории без отмывки памяти — отдельная грязь: люди уже видели B. Новый тест — новые люди или честно объявленный novelty.
Пример 2. Двенадцать метрик и одна зелёная
Аналитик открывает воронку, время на сайте, добавления в корзину, отписки, NPS-опрос из трёх ответов и «ещё среднюю сумму». Одна линия зелёная. В слайд идёт она. Гипотеза после факта звучит умно.
До старта: одна метрика успеха, две-три сторожевые (ошибки оплаты, SRM — доля трафика в ветках). Остальное в приложении: «смотрели, не решали». Если без зелёной метрики успеха история не собирается — эксперимента не было, был поиск картинки. Для портфолио такой кейс вреден: на созвоне спросят, что было primary. Честный разбор «не подтвердили, вот почему» сильнее зелёной случайности. См. как собирать кейс.
SRM, новизна, кто не попал в тест
Sample ratio mismatch: в B должно быть примерно столько же, сколько задумали, а пришло заметно меньше. Часто баг сплита, боты, отвал приложения на варианте, кэш. Пока SRM не закрыт, сравнивать конверсии рано: вы сравниваете разных людей, не кнопки. Сторожевая проверка сплита — в первый день, не в отчёте «победа».
Эффект новизны: новый экран кликают, потому что новый. Через две недели привыкли. Короткий тест на визуал ловит любопытство, не устойчивый эффект. Для оплаты и ретеншена короткий горизонт часто врёт в другую сторону: вред догоняет позже, чем «клик по CTA».
Кто выпал: пользователи без cookie, логин после сплита, несколько устройств. Если ваш продукт — кабинет по аккаунту, splity по cookie будут перетекать. Идентификатор должен совпадать с тем, как вы меряете метрику.