Для чего нужен holdout

Стандартный A/B тест измеряет эффект одного конкретного изменения за короткий период. Но реальная программа персонализации — это десятки последовательных экспериментов за год. Суммировать их результаты наивно нельзя: изменения взаимодействуют между собой, часть эффектов затухает, новизна первых недель исчезает.

Holdout-группа решает эту проблему: это часть аудитории, которая «заморожена» в исходном состоянии на весь период. Сравнение её метрик с метриками остальных пользователей через полгода даёт честный ответ: «Сколько принесла наша программа персонализации?»

Как работает holdout на практике

Трафик
├── 90% — обычные пользователи
│         получают все персонализационные изменения
│         участвуют в A/B тестах
└── 10% — holdout-группа
          не получают персонализации
          не участвуют в тестах
          видят «базовый» сайт весь период

Через 6 месяцев:
Holdout RPV: 420 ₽
Основная база RPV: 487 ₽
Суммарный эффект: +16%

Технические требования

Sticky assignment: пользователь, попавший в holdout, должен оставаться в ней всё время. Переключение между группами разрушает чистоту эксперимента.

Изоляция от всех экспериментов: если holdout случайно попал в несколько A/B тестов — данные испорчены. Система должна проверять принадлежность к holdout перед включением в любой тест.

Достаточный размер: при 5% holdout и базовом CR 2% для детектирования 5% кумулятивного эффекта может потребоваться 6–12 месяцев в зависимости от трафика.

Holdout vs непрерывный MAB

Multi-Armed Bandit (автопилот) постоянно перераспределяет трафик в пользу лучшего варианта — что несовместимо с holdout в классическом смысле. Это компромисс: MAB быстрее монетизирует лучший вариант, но теряет возможность честно измерить долгосрочный накопленный эффект.

Совет: если организация запускает масштабную программу персонализации, holdout-группа стоит потенциальных потерь выручки на 5–10% трафика. Именно она позволит через год доказать CFO реальный ROI всей программы, а не набор разрозненных тестов.