Чем MVT отличается от A/B теста
В A/B тесте изменяется один элемент — заголовок, изображение или алгоритм рекомендаций — и сравниваются два варианта. В MVT одновременно меняются несколько независимых элементов, и тестируются все их комбинации.
Пример: страница карточки товара, 2 фактора:
— Заголовок блока рекомендаций: A (текущий) / B (новый)
— Позиция блока: сверху / снизу
Итого 4 ячейки: A-сверху, A-снизу, B-сверху, B-снизу. Плюс контроль. Это позволяет ответить не только «какой вариант лучше», но и «зависит ли эффект заголовка от позиции блока».
Полный factorial vs fractional factorial
Full factorial — тестируются все комбинации. Надёжнее, но требует максимум трафика.
Fractional factorial — тестируется часть комбинаций по специальному плану. Позволяет оценить основные эффекты факторов при меньшем трафике, но теряет возможность оценить некоторые взаимодействия.
| Подход | Ячеек (2 фактора × 3 варианта) | Ячеек (3 фактора × 3 варианта) |
|---|---|---|
| Full factorial | 9 | 27 |
| Fractional factorial | 5–6 | 9–12 |
Важно: Каждая ячейка требует собственной полноценной выборки. Если для обычного A/B нужно 10 000 пользователей на вариант, то для MVT с 9 ячейками — 90 000. Без достаточного трафика MVT растянется на месяцы или не даст значимых результатов.
Когда запускать MVT, а когда последовательные A/B
Правило выбора простое:
- Гипотеза о взаимодействии факторов → MVT. «Эффект нового заголовка зависит от того, как выглядит изображение» — это взаимодействие, которое A/B не раскроет.
- Независимые гипотезы → последовательные A/B-тесты. Быстрее, проще, меньше трафика.
- Трафик < 500K MUV/мес → практически всегда последовательные A/B. MVT займёт слишком долго.
Типичные ошибки
- Слишком много факторов. 4 фактора × 3 варианта = 81 ячейка. При трафике 1M MUV каждая ячейка получает ~12K пользователей/мес — недостаточно для большинства CR-задач.
- Анализ без поправок на множественные сравнения. При 27 ячейках вероятность случайно найти «значимый» результат из-за шума очень высока.
- Игнорирование взаимодействий. Если не проверить interaction effects, можно внедрить «победителя» ячейки, который на самом деле работает только в конкретной комбинации.