Короткий ответ
SRM — это ситуация, когда фактическое соотношение пользователей между группами теста значимо отличается от запланированного (например, вместо 50/50 получилось 48/52 с большой выборкой), что обычно говорит о технической проблеме в рандомизации или учёте данных, а не о реальном продуктовом эффекте.
Как это работает подробнее
SRM проверяют статистическим тестом (обычно chi-square) на соответствие наблюдаемого распределения пользователей по группам ожидаемому сплиту; значимое отклонение — сигнал тревоги.
Пример кода
example.sql
SELECT group_name, COUNT(DISTINCT user_id) AS users
FROM ab_assignments
GROUP BY group_name;Что использовать на практике
- перед интерпретацией любых метрик теста сначала проверяют SRM; если он есть, результатам по метрикам в принципе доверять нельзя до устранения причины.
- Если ожидался сплит 50/50, а получили A=51 230, B=49 480 при суммарно ~100 710 пользователях, можно применить chi-square тест на эти частоты. Если p-value мал (например, <0.001), это признак SRM, и метрики теста до выяснения причины не интерпретируются как достоверные.
Подводные камни
- игнорирование проверки SRM и переход прямо к сравнению конверсий — при наличии SRM разница в метриках может быть вызвана не изменением, а тем, что в одну из групп систематически попадают не те пользователи (например, с более медленными устройствами).