Правила потоків
Правила потоків визначають, який напрямок отримає відвідувач, коли відкриє домен кампанії.
Уявіть потоки як смуги на дорозі. Правило — це знак над кожною смугою: country == "FR" направляє відвідувачів із Франції в одну смугу, а is_mobile == true може направляти мобільних відвідувачів в іншу. Трекер перевіряє увімкнені потоки по черзі та використовує перший потік, правило якого підходить відвідувачу.
Використовуйте правила потоків, коли різні відвідувачі мають отримувати різні лендинги або редиректи в межах однієї кампанії.
Як працює вибір потоку
Коли відвідувач відкриває домен кампанії, трекер виконує таку послідовність:
Важлива поведінка:
- Вимкнені і видалені потоки пропускаються.
- Потоки перевіряються відповідно до їхнього порядку в кампанії.
- Порожнє правило означає, що потік може приймати весь трафік.
- Перемагає перший потік, правило якого збіглося.
- Default flow використовується лише тоді, коли жоден звичайний потік не підійшов.
- Default flow може бути використаний навіть тоді, коли його власне правило не підходить.
Доступні поля правил
У правилах потоків можна використовувати такі поля.
| Поле | Тип | Приклад значення | Для чого використовується |
|---|---|---|---|
country |
Текст або null |
"FR" |
Роутинг за країною через дволітерний код країни |
browser_family |
Текст або null |
"Chrome" |
Роутинг за браузером |
device_family |
Текст або null |
"iPhone" |
Роутинг за моделлю або сімейством пристрою |
os_family |
Текст або null |
"iOS" |
Роутинг за операційною системою |
is_mobile |
Boolean | true |
Мобільний або немобільний трафік |
is_bot |
Boolean | false |
Бот або не бот |
roll |
Число | 1 до 100 |
Розподіл трафіку у відсотковому стилі |
Текстові значення потрібно брати в подвійні лапки.
country == "FR"
Boolean-значення пишуться малими літерами: true або false.
is_mobile == true
null означає, що трекер не зміг розпізнати конкретне поле для відвідувача або цього поля немає в даних відвідувача. Це не означає, що в правилі потрібно вводити порожній рядок. Для звичайного catch-all потоку залиште порожнім усе поле правила.
Поширені оператори
| Оператор | Значення | Приклад |
|---|---|---|
== |
Дорівнює | country == "FR" |
!= |
Не дорівнює | country != "FR" |
and |
Обидві умови мають збігтися | country == "FR" and is_mobile == true |
or |
Має збігтися хоча б одна умова | country == "FR" or country == "BE" |
not |
Інвертує умову | not is_bot |
< |
Менше ніж | roll < 50 |
<= |
Менше або дорівнює | roll <= 50 |
> |
Більше ніж | roll > 50 |
>= |
Більше або дорівнює | roll >= 51 |
( ) |
Групує умови | (country == "FR" or country == "BE") and is_mobile == true |
Використовуйте дужки, коли правило поєднує and і or. Так правило легше читати, і воно працює очікувано.
Правила за країною
Використовуйте country, коли відвідувачі з різних країн мають бачити різні офери або лендинги.
Значення країни — це дволітерний код країни, наприклад FR, US, UA, PL або DE.
| Ціль | Правило |
|---|---|
| Тільки Франція | country == "FR" |
| Усі, крім Франції | country != "FR" |
| Франція або Бельгія | country == "FR" or country == "BE" |
| Тільки мобільний трафік із Франції | country == "FR" and is_mobile == true |
| Немобільний трафік не з Франції | country != "FR" and is_mobile == false |
Визначення країни потребує налаштованого IP2Location. Якщо таргетинг за країною недоступний, трекер не дозволить зберегти правила з country.
Правила за пристроєм, браузером та ОС
Використовуйте поля браузера, пристрою та операційної системи, коли лендинг краще працює для конкретного середовища відвідувача.
| Ціль | Правило |
|---|---|
| Відвідувачі з iPhone | device_family == "iPhone" |
| Відвідувачі з Android | os_family == "Android" |
| Відвідувачі з Chrome | browser_family == "Chrome" |
| Mobile Safari на iOS | browser_family == "Mobile Safari" and os_family == "iOS" |
| Немобільні відвідувачі | is_mobile == false |
| Пропустити ботів | is_bot == false |
Точні значення браузера, пристрою та операційної системи беруться з user agent відвідувача. Якщо ви не впевнені, яке значення визначає трекер, спочатку перевірте дані у звітах на реальному трафіку, а потім використайте таке саме написання в правилі.
Поширені визначені значення:
| Середовище відвідувача | browser_family |
os_family |
device_family |
|---|---|---|---|
| Chrome на Windows | "Chrome" |
"Windows" |
"Other" |
| Microsoft Edge на Windows | "Edge" |
"Windows" |
"Other" |
| Firefox на Windows | "Firefox" |
"Windows" |
"Other" |
| Safari на macOS | "Safari" |
"Mac OS X" |
"Mac" |
| Chrome на macOS | "Chrome" |
"Mac OS X" |
"Mac" |
| Safari на iPhone | "Mobile Safari" |
"iOS" |
"iPhone" |
| Chrome на iPhone | "Chrome Mobile iOS" |
"iOS" |
"iPhone" |
| Safari на iPad | "Mobile Safari" |
"iOS" |
"iPad" |
| Chrome на Android | "Chrome Mobile" |
"Android" |
Модель пристрою, наприклад "Pixel 8 Pro" |
| Samsung Internet на Android | "Samsung Internet" |
"Android" |
Модель пристрою, наприклад "Samsung SM-S928B" |
| Firefox на Android | "Firefox Mobile" |
"Android" |
Часто "Generic Smartphone" |
| Chrome на Linux desktop | "Chrome" |
"Linux" |
"Other" |
Використовуйте цю таблицю як стартову підказку, а не як повний каталог. Десктопні пристрої часто визначаються як "Other" або "Mac", а Android-пристрої можуть визначатися як конкретна модель, код моделі Samsung або узагальнене сімейство пристрою.
Відсотковий розподіл через roll
Використовуйте roll, коли потрібно розділити трафік між потоками.
Для кожного візиту трекер призначає випадкове число від 1 до 100. Це число можна використовувати для відсоткового роутингу.
Приклад розподілу 50/50:
| Потік | Правило |
|---|---|
| Landing A | roll <= 50 |
| Landing B | roll >= 51 |
Приклад розподілу 70/30:
| Потік | Правило |
|---|---|
| Landing A | roll <= 70 |
| Landing B | roll > 70 |
Також можна комбінувати roll із таргетингом:
country == "FR" and roll <= 50
Це правило підходить приблизно для половини трафіку з Франції.
Порожні правила та catch-all потоки
Порожнє правило означає, що потік може прийняти будь-якого відвідувача.
Використовуйте порожнє правило обережно. Оскільки трекер вибирає перший потік, правило якого підходить, потік із порожнім правилом, розміщений вище за специфічніші потоки, може забрати трафік до того, як ці специфічніші потоки будуть перевірені.
Рекомендований порядок:
- Специфічні потоки першими.
- Ширші потоки після специфічних.
- Catch-all потік останнім.
- Default flow вибраний у кампанії.
Приклад:
| Порядок | Потік | Правило |
|---|---|---|
| 1 | France mobile | country == "FR" and is_mobile == true |
| 2 | France desktop | country == "FR" and is_mobile == false |
| 3 | Global mobile | is_mobile == true |
| 4 | Global fallback | порожнє |
Повторний показ: Show only once per visitor
Show only once per visitor змінює обробку повторних візитів.
Коли ця опція увімкнена, трекер може пропустити потік після того, як той самий відвідувач уже його бачив. Це корисно, коли ви хочете, щоб повторні відвідувачі проходили через кілька лендингів, а не бачили один і той самий щоразу.
Приклад ротації:
| Порядок | Потік | Правило | Show only once per visitor |
|---|---|---|---|
| 1 | Landing A | country == "FR" |
Увімкнено |
| 2 | Landing B | country == "FR" |
Увімкнено |
| 3 | France fallback | country == "FR" |
Вимкнено |
Під час першого візиту з Франції відвідувач може отримати Landing A. Під час наступного візиту трекер може пропустити Landing A і спробувати Landing B. Якщо обидва одноразові потоки вже були показані, France fallback залишається доступним.
Практичні приклади
Направити трафік із Франції на локальний лендинг
| Потік | Правило |
|---|---|
| France landing | country == "FR" |
| Global landing | country != "FR" |
Встановіть Global landing як default flow кампанії.
Направити мобільний і десктопний трафік на різні сторінки
| Потік | Правило |
|---|---|
| Mobile page | is_mobile == true |
| Desktop page | is_mobile == false |
Це корисно, коли у вас є окремі лендинги для мобільного і десктопного трафіку.
Виключити ботів з основних лендингів
| Потік | Правило |
|---|---|
| Main landing | is_bot == false |
| Bot fallback | is_bot == true |
Також можна налаштувати default flow для трафіку, який не підійшов жодному правилу.
Розділити одну країну між двома оферами
| Потік | Правило |
|---|---|
| France offer A | country == "FR" and roll <= 50 |
| France offer B | country == "FR" and roll > 50 |
| Global offer | country != "FR" |
Це утримує розподіл тільки всередині трафіку з Франції.
Чекліст перед збереженням правил
Перед збереженням або зміною порядку потоків перевірте таке:
- Текстові значення взяті в подвійні лапки.
- Boolean-значення написані малими літерами:
trueабоfalse. - Коди країн складаються з двох великих літер.
- Специфічні правила розміщені вище за широкі правила.
- Catch-all потоки з порожнім правилом розміщені ближче до кінця.
- У кампанії вибрано default flow.
- Default flow увімкнений і не видалений.
- Правила з
countryвикористовуються лише тоді, коли IP2Location налаштований.
Усунення проблем
| Проблема | Ймовірна причина | Рішення |
|---|---|---|
| Правило не зберігається | Синтаксична помилка або непідтримувана назва поля | Перевірте назви полів, лапки та оператори |
| Правило з країною не зберігається | IP2Location не налаштований | Налаштуйте IP2Location перед використанням country |
| Специфічний потік ніколи не отримує трафік | Над ним розміщено ширший потік | Перемістіть специфічний потік вище |
| Відвідувач отримує неправильний потік | Кілька правил підходять, і першим перемагає інший потік | Перевірте порядок потоків і зробіть правила точнішими |
| Відвідувач не отримує напрямок | Жоден увімкнений потік не підходить і default flow не налаштований | Додайте catch-all потік або налаштуйте default flow |
| Повторний відвідувач пропускає потік | Show only once per visitor увімкнено |
Вимкніть опцію, якщо відвідувач завжди має залишатися на цьому потоці |
| Правило за браузером або пристроєм не підходить | Визначене user-agent значення відрізняється від тексту в правилі | Перевірте реальні значення у звітах і оновіть написання в правилі |