Novelty effect в A/B-тестах
Карьерник — квиз-тренажёр в Telegram с 1500+ вопросами для собесов аналитика. SQL, Python, A/B, метрики. Бесплатно.
Зачем это знать
Запустили новый баннер — CTR взлетел на 20%. Через неделю — +5%. Через месяц — 0%. Это novelty effect: пользователи кликают на новое просто из любопытства, а не из-за value.
Знание novelty effect отделяет senior аналитика от junior: первый подождёт и проверит, второй сразу shipит с +20%.
Короткое объяснение
Novelty effect — временный буст метрик из-за новизны features. Со временем пропадает.
Противоположность — primacy effect: пользователи сопротивляются изменениям, метрики временно падают.
Оба эффекта могут создать ложные выводы в коротких A/B-тестах.
Почему возникает
- Пользователи замечают новое → кликают из любопытства
- Новое видно → A/B отличим от контроля в UI → pseudo-treatment compared
- Emotional response на change, не persistent behavior
Primacy effect (обратное)
Attached к текущему дизайну → новое не нравится → metrics падают.
Примеры:
- Redesign интерфейса: первая неделя ↓, потом восстановление
- Нового layout кнопок: click confusion → CR падает
Пример
Tech giant запустил новую search UI.
Week 1 A/B: engagement +15%. Ship?
Проверка. Подождать ещё 2 недели:
- Week 2: +8%
- Week 3: +2%
- Week 4: +1%
Это novelty effect. Ship on long-term lift = +1%, не +15%.
Как детектировать
1. Time series lift
Plot metric over time. Novelty:
- Steep ↑ первые дни
- Gradual ↓
- Flattens на новом baseline
Primacy:
- Steep ↓ первые дни
- Recovery
- Stabilizes
2. Returning vs new users
- Новые users не знают «старого» → не showing novelty effect сильно
- Returning users (особенно power users) — showing strongly
Если lift сильно отличается между cohorts — novelty.
3. Analysis by exposure duration
Users with 1 day exposure vs users with 2 weeks exposure. Разница → novelty.
Как управлять
1. Дольше A/B
2-4 недели вместо 1. Novelty stabilizes.
2. Burnin period
Первые N дней — разогрев. Не учитывать в analysis.
3. Holdout long-term
Постоянный holdout показывает long-term truth.
4. Follow-up study
Через 3 месяца — повторить A/B или посмотреть holdout.
В SQL (detection)
SELECT
EXTRACT(week FROM experiment_date) AS week,
AVG(CASE WHEN GROUP = 'treatment' THEN metric END) -
AVG(CASE WHEN GROUP = 'control' THEN metric END) AS lift
FROM experiment
GROUP BY 1;Если lift падает week-over-week → novelty.
Особенно актуально для
- UI changes — видимы, triggers новизну
- Notifications — привыкают / раздражаются со временем
- Content feeds — novelty of new algorithm
- Gamification — streak bonuses лучше работают первую неделю
Когда это НЕ novelty
- Background features (backend optimizations)
- Не-видимые изменения (pricing)
- Features with utility growing over time (retention → больше ценности)
Ship decision framework
- Short-term lift выглядит значимым?
- Trend стабилизируется или падает?
- Segmentation: returning vs new — отличается ли lift?
- Если возможно — continue для long-term confirmation
Ship только если long-term lift positive и meaningful.
На собесе
«Что такое novelty effect?» Временный буст метрики от новизны, угасает со временем.
«Как detecting?» Time series lift, сегментирование cohorts.
«Как избегать ложных решений?» Длиннее тест, holdout, follow-up.
«Primacy effect?» Обратное — временное падение от resistance change.
Частые ошибки
Ship после недели
Classic ошибка junior аналитика.
Игнорировать segmentation
Returning users — главные source novelty signal.
Не делать follow-up
Ship и забыть → нет feedback на long-term.
Связанные темы
FAQ
Всегда ли убивает A/B?
Нет. Если решение можно откатить (soft ship) — ok ship и monitor.
Как долго длится?
Обычно 2-6 недель. Зависит от nature feature.
Primary effect опаснее?
Risk — можно «убить» хорошую feature. Balance против novelty.
Тренируйте A/B — откройте тренажёр с 1500+ вопросами для собесов.