A/B test -- user_properties
aктивные тесты: НЕТ
учавствовать в АБ тесте "test_1":
учавствовать в АБ тесте "test_2":
gtag('set', 'user_properties', {testName:testVar});
gtag('event', 'joined_ab_test',
{
'exp_name': testName,
'exp_variant': testVar,
'exp_method': 'метод_что_стригерил_аб_тест' // любое название
});
стригерить ивенты:
Есть проблема в том, если юзер, который уже был помечен в GA4 через user_properties о том, что принимает участие в тестировании(и вариант каком ему отображается из АБ теста), -> почистит данные браузера или залогинится с другого устройства -> как мы узнаем именно на сайте, какой вариант из А/Б теста ему показать?
GA4 в отчетах его и смэтчит через Data collection(в включенными Google signals), но GA4 не позволяет нам вытянуть инфу об этом(GA4 работает только в одну сторону, на сбор данных).
это решается только через базу данных на бекенде, и только для залогиненных юзеров, где мы будем связывать userId с тем, в каком конкретно тесте и его варианте он принимает участие(для залогиненных есть другой способ без БД). Для незарегистрированных юзеров такие данные по таким тестам будут не точными. Есть платформы, которые вроде как решают эти проблемы, Statsig, LaunchDarkly, но я с ними не работал.
для залогиненных есть способ назначать/определять вариант теста без БД. вычислять номер варианта теста через хэш-функцию от userId - возвращая число от 0 до {номер последнего варианта теста}, JS пример. для не залогиненных есть еще вариант с хэшом от fingerprint-а, вы вроде их собирали... но это совсем другая тема.
Чтобы не городить огород, проблема "шума" в статах по кросдевайс аналитике(или когда юзер чистит банные браузера) решается через фильтры при создании айдиторий для репортов
Инструкция по настройке GA4 для A/B тестов
Чтобы данные из атрибутов data-exp-name превратились в отчеты по LTV, необходимо зарегистрировать их в панели управления Google Analytics 4.
Важно: Настройка в интерфейсе GA4 занимает до 24 часов, прежде чем данные начнут отображаться в отчетах "Исследования" (Explorations).
Шаги в интерфейсе GA4:
- Перейдите в раздел Администратор (Admin) в левом нижнем углу экрана.
- В колонке Просмотр данных выберите пункт Пользовательские определения (Custom definitions).
- Нажмите синюю кнопку Создать пользовательский параметр (Create custom dimension).
- Заполните поля для Первого теста:
- Имя параметра: Test_1 (так вы будете видеть его в отчетах).
- Область действия (Scope): Выберите Пользователь (User).
- Свойство пользователя: Впишите test_1 (должно точно совпадать с
data-exp-nameв коде).
- Нажмите Сохранить.
- Для Второго теста: Повторите шаги, указав имя Test_2 и свойство test_2.
⚠️ Важно: Если вы планируете запускать много тестов, вам придется создавать такой параметр для каждого test-N. Если их (одновременных тестов) будет больше 25 штук, лимиты GA4 закончатся.
Event-scoped custom dimensions (exp_name, exp_variant, exp_method) = 50 max
Как проверить (DebugView):
Чтобы убедиться, что код работает, перейдите в Администратор → DebugView. Нажмите на кнопку на сайте. В потоке событий вы должны увидеть событие joined_ab_test. Перейдите на вкладку