Як налаштувати міждоменне відстеження в Google Tag Manager
TL;DR: Міждоменне відстеження (cross-domain tracking) в GA4 дозволяє відстежувати єдину сесію користувача на кількох доменах. Налаштуйте його в GA4 Admin через Data Streams → Configure tag settings → Configure your domains, додавши всі домени до списку. В GTM ваш тег Google Tag автоматично обробляє linker-параметр після налаштування в адмінці GA4. Виключіть власні домени з реферального трафіку та протестуйте через Tag Assistant, щоб переконатись, що параметр _gl передається між доменами.
Коли ваш бізнес охоплює кілька доменів — маркетинговий сайт на example.com, магазин на shop.example.com та оплата на pay.example.com — Google Analytics за замовчуванням розглядає кожен домен як окреме джерело трафіку. Користувач, який починає на вашому блозі і завершує покупку на домені оплати, відображається як дві окремі сесії, де друга приписується реферальному трафіку з вашого ж сайту. Міждоменне відстеження вирішує цю проблему, об'єднуючи сесії на різних доменах у єдиний шлях користувача.
Цей посібник охоплює повне налаштування: конфігурацію в адмінці GA4, налаштування тегів GTM, linker-параметр, мультидоменні конфігурації, обробку піддоменів, виключення реферального трафіку, тестування та помилки, які найчастіше порушують міждоменне відстеження.
Що таке міждоменне відстеження і коли воно потрібне?
Міждоменне відстеження (cross-domain tracking) підтримує єдину сесію користувача під час переходу між різними доменами, які належать вам. Без нього кожна зміна домену створює нову сесію в GA4, завищуючи кількість сесій та порушуючи атрибуцію.
Вам потрібне міждоменне відстеження, коли:
- Окремий домен для оплати. Ваш основний сайт —
example.com, але оплата відбувається наcheckout.example-pay.com. Без з'єднання кожна покупка відображається як нова сесія з реферального джерела — дані про шлях конверсії стають непридатними. - Сторонній сервіс бронювання чи форм. Ви використовуєте інструмент на кшталт Calendly, Typeform або систему бронювання на власному домені. Користувачі залишають ваш сайт, виконують дію і повертаються.
- Кілька брендових доменів. Ваша компанія використовує
brand-a.comіbrand-b.com, і ви хочете об'єднану аналітику. - Розділення додатку та маркетингового сайту. Маркетинг живе на
www.example.com, додаток — наapp.example.com(інший піддомен, що відстежується як окрема властивість).
Вам не потрібне міждоменне відстеження для піддоменів одного кореневого домену, якщо вони використовують один GA4 Measurement ID та однаковий домен cookie першої сторони. GA4 обробляє піддомени автоматично в більшості випадків. Детальніше про цю різницю — нижче.
Як GA4 обробляє міждоменне відстеження інакше, ніж Universal Analytics?
В Universal Analytics налаштування міждоменного відстеження вимагало ручної конфігурації плагіна linker, allowLinker: true, списку autoLink доменів та ретельних налаштувань cookie-домену. Це було ненадійно та схильне до помилок.
GA4 значно спрощує процес:
- Вбудований інтерфейс адмінки. GA4 має спеціальний розділ "Configure your domains" в налаштуваннях тегів. Жодного кастомного JavaScript не потрібно.
- Автоматичний linker-параметр. Після налаштування GA4 автоматично додає параметр
_glдо вихідних посилань. Це замінює підхід UA з декоруванням посилань параметрами_gaта_gac. - Тільки first-party cookies. GA4 використовує cookies першої сторони за замовчуванням. Linker-параметр передає client ID між доменами, оскільки cookies не можуть бути спільними для різних кореневих доменів.
- Без окремого плагіну. Функціональність вбудована в сам тег GA4. GTM обробляє це через налаштування тегу Configuration.
Основна проблема залишається тією ж: браузери обмежують cookies доменом, який їх встановив. Коли користувач переходить з site-a.com на site-b.com, site-b.com не може прочитати cookie GA4, встановлену site-a.com. Linker-параметр долає цю прогалину, передаючи client ID через URL.
Як налаштувати міждоменне відстеження в адмінці GA4?
Це основний метод, який працює незалежно від того, використовуєте ви GTM чи фрагмент gtag.js напряму.
- Відкрийте GA4 та перейдіть до Admin → Data Streams → виберіть ваш веб-потік
- Натисніть Configure tag settings (внизу деталей потоку)
- Натисніть Configure your domains
- У розділі "Include domains that match ANY of the following conditions" додайте кожен домен:
- Тип збігу: Contains
- Домен:
example.com
- Додайте новий рядок для кожного додаткового домену:
shop.example-pay.com,app.example.ioтощо - Натисніть Save
Після збереження GA4 автоматично декорує посилання, що вказують на перелічені домени, linker-параметром _gl. Домен-одержувач зчитує цей параметр, витягує client ID та продовжує ту саму сесію.
Важливо: вводьте лише доменне ім'я (наприклад, example.com), а не повний URL. Тип збігу "Contains" означає, що example.com також відповідатиме shop.example.com та blog.example.com.
Як налаштувати міждоменне відстеження в GTM?
Якщо ви керуєте GA4 через Google Tag Manager, налаштування в адмінці GA4 (описане вище) все одно застосовується — налаштування тегів GA4 працюють незалежно від методу імплементації. Однак ви також можете налаштувати міждоменне з'єднання безпосередньо у вашому тезі GTM.
- В GTM відкрийте ваш Google Tag (раніше GA4 Configuration tag)
- Натисніть Configuration Settings → розгорніть Domains to link
- Додайте кожен домен:
example.com,shop.example-pay.com,app.example.io - Збережіть тег
Альтернативно, використовуйте розділ Fields to Set:
Field Name: linker
Value: {"domains": ["example.com", "shop.example-pay.com"], "accept_incoming": true}
Перший підхід (Domains to link) простіший і рекомендований для більшості конфігурацій. Підхід Fields to Set дає більше контролю над поведінкою linker, наприклад, вимкнення accept_incoming на конкретних доменах або додавання decorate_forms: true для навігації між доменами через форми.
Один контейнер чи кілька? Якщо всі домени використовують один контейнер GTM, налаштуйте міждоменне з'єднання один раз. Якщо кожен домен має власний контейнер GTM, налаштуйте linker в кожному контейнері — кожен домен повинен і надсилати, і приймати linker-параметр.
Як працює linker-параметр?
Коли користувач натискає посилання з site-a.com на site-b.com, GA4 додає параметр _gl до URL:
https://site-b.com/page?_gl=1*1abc2de*_ga*MTIzNDU2Nzg5MC4xNjk...
Цей параметр містить:
- Client ID — унікальний ідентифікатор цього браузера/користувача, який зазвичай зберігається в cookie
_ga - Session ID — ідентифікатор поточної сесії
- Timestamp — час генерації параметра (він закінчується через 2 хвилини)
Коли site-b.com завантажується і GA4 ініціалізується, він зчитує параметр _gl, витягує client ID і встановлює власну first-party cookie _ga з тим самим client ID. Сесія продовжується безперервно.
Ключові технічні деталі:
- Параметр
_glзакінчується через 2 хвилини. Якщо користувач скопіює декорований URL і відкриє його пізніше, параметр ігнорується і починається нова сесія. - GA4 декорує теги
<a>автоматично. Для JavaScript-навігації (зміниwindow.location.href) може знадобитися ручне декорування URL черезgtagSetAPI. - Відправка форм між доменами вимагає
decorate_forms: trueв конфігурації linker. Без цього POST-навігація втрачає client ID.
Як додати кілька доменів до конфігурації cross-domain?
Додавання кількох доменів просте, але потребує уваги до шаблонів збігу. В GA4 Admin → Configure your domains додайте один рядок на домен:
| Тип збігу | Домен | Що відповідає |
|---|---|---|
| Contains | example.com | example.com, www.example.com, shop.example.com |
| Contains | partner-checkout.com | partner-checkout.com, app.partner-checkout.com |
| Exactly matches | booking.thirdparty.io | Тільки booking.thirdparty.io |
Використовуйте Contains для доменів, якими ви повністю керуєте — це автоматично охоплює піддомени. Використовуйте Exactly matches для сторонніх доменів, де ви хочете з'єднати лише один конкретний піддомен, а не все дерево домену.
Типові мультидоменні сценарії:
- Основний сайт + оплата:
example.com+secure-checkout.com— два правила "Contains" - Основний сайт + додаток + документація:
example.com+app.example.io+docs.example.io— "Contains"example.com+ "Contains"example.io - Мультибренд:
brand-a.com+brand-b.com+brand-c.com— три окремі рядки - Регіональні домени:
example.com+example.co.uk+example.de— один рядок на кожен доменний суфікс країни
Жорсткого обмеження на кількість доменів немає, але тримайте список зосередженим на доменах, між якими користувачі дійсно переходять під час сесії. Додавання доменів, на які користувачі ніколи не переходять, нешкідливе, але додає непотрібне декорування посилань.
Як протестувати міждоменне відстеження?
Тестування критично важливе. Неправильно налаштоване міждоменне відстеження тихо завищує кількість сесій та порушує атрибуцію протягом тижнів, перш ніж хтось помітить.
Крок 1: Перевірте декорування посилань
- Відкрийте ваш основний сайт у Chrome
- Клацніть правою кнопкою на посилання, що веде на другий домен
- Натисніть Inspect та подивіться на атрибут
href— він повинен залишатися незмінним у HTML - Натисніть посилання звичайним чином
- Перевірте адресний рядок браузера на сторінці-одержувачі — ви повинні побачити
?_gl=1*..., доданий до URL
Крок 2: Перевірте через GTM Tag Assistant
- В GTM натисніть Preview для запуску Tag Assistant
- Введіть URL вашого основного домену
- Перейдіть на другий домен, натиснувши посилання на сторінці
- В Tag Assistant переконайтесь, що тег GA4 спрацьовує на обох доменах
- Перевірте, що значення client_id однакове на обох доменах
Крок 3: Підтвердіть у GA4 DebugView
- Увімкніть режим відладки за допомогою розширення GA Debugger
- Перейдіть з домену A на домен B
- В GA4 DebugView переконайтесь, що події з обох доменів відображаються під одним пристроєм у таймлайні
- Перевірте, що
session_startспрацьовує лише один раз (на домені A), а не знову на домені B
Крок 4: Перевірте GA4 Realtime звіт
Після публікації перейдіть між вашими доменами та перевірте GA4 Realtime report. Ви повинні бачити одного активного користувача, а не двох. Якщо ви бачите двох активних користувачів на одному пристрої, міждоменне з'єднання не працює.
Як обробляти піддомени та окремі домени?
Це найбільш неправильно зрозуміла частина міждоменного відстеження. Правила різні для піддоменів та окремих кореневих доменів.
Піддомени (один кореневий домен)
Приклади: www.example.com, shop.example.com, blog.example.com
GA4 обробляє піддомени автоматично. Cookie _ga встановлюється на кореневому домені (.example.com) за замовчуванням, тому всі піддомени можуть її зчитати. Вам не потрібне міждоменне відстеження для піддоменів одного кореневого домену.
Однак є винятки:
- Різні властивості GA4 на піддомен. Якщо
shop.example.comвикористовує інший Measurement ID, ніжwww.example.com, ви фактично запускаєте окреме відстеження — cookies будуть встановлені з різними іменами і міждоменне з'єднання не допоможе. Використовуйте один Measurement ID на всіх піддоменах. - Невідповідність cookie-домену. Якщо конфігурація вашого тегу явно встановлює cookie-домен на конкретний піддомен (наприклад,
www.example.comзамість.example.com), інші піддомени не зможуть прочитати cookie. Перевірте налаштування cookie вашого тегу GA4.
Окремі кореневі домени
Приклади: example.com та example-shop.net
Для них завжди потрібне міждоменне відстеження. Cookies, встановлені на example.com, невидимі для example-shop.net. Linker-параметр — єдиний спосіб передати client ID між ними.
Граничні випадки з публічними суфіксами
Домени на кшталт example.co.uk та example.com.au мають багатокомпонентні публічні суфікси. GA4 обробляє їх коректно — cookie встановлюється на .example.co.uk, а не на .co.uk. Піддомени під example.co.uk ділять cookies нормально. Але example.co.uk та example.com — це окремі кореневі домени і потребують міждоменного з'єднання.
Як виключити реферальний трафік з власних доменів?
Навіть з налаштованим міждоменним відстеженням GA4 може все одно зараховувати трафік між вашими доменами як реферальний, якщо ви не виключите власні домени зі списку рефералів. Це відображається у звітах як source / medium = example.com / referral замість оригінального джерела трафіку.
- В GA4 перейдіть до Admin → Data Streams → виберіть ваш веб-потік
- Натисніть Configure tag settings
- Натисніть List unwanted referrals
- Додайте кожен з ваших доменів:
- Тип збігу: Contains
- Домен:
example.com
- Додайте рядок для кожного додаткового домену:
example-shop.net,checkout.partner.com - Натисніть Save
Чому це окремий крок: налаштування міждоменного з'єднання (linker-параметр) гарантує передачу client ID між доменами. Виключення рефералів гарантує, що GA4 не приписує другий перегляд сторінки реферальному джерелу. Вам потрібне і те, і інше. З'єднання без виключення рефералів дає правильну кількість сесій, але неправильну атрибуцію. Виключення рефералів без з'єднання дає правильну атрибуцію, але завищену кількість сесій.
Поширена помилка — додавання сторонніх платіжних провайдерів (PayPal, Stripe) до списку виключень рефералів без налаштування міждоменного з'єднання. Це приховує реферал, але фактично не з'єднує сесії — ви втрачаєте видимість того, звідки прийшли користувачі, і сесія все одно розривається.
Які найпоширеніші помилки міждоменного відстеження?
- Забули виключити реферали. Міждоменне з'єднання налаштоване, linker-параметр передається, але ваші власні домени все одно відображаються як реферальні джерела у звітах. Завжди налаштовуйте і з'єднання, і виключення рефералів.
- Зайве додавання піддоменів. Налаштування cross-domain tracking для
www.example.comтаblog.example.com, коли вони мають один кореневий домен. Це додає непотрібні параметри_glдо URL і може спричинити проблеми з URL-залежними системами (кешування, правила CDN, логіка редиректів). - Неузгоджена конфігурація між контейнерами. Контейнер GTM домену A має налаштоване міждоменне з'єднання, але контейнер домену B не приймає вхідні linker-параметри. Обидві сторони повинні бути налаштовані.
- Видалення URL-параметрів. Редирект, правило CDN або переписування URL видаляє параметр
_glдо того, як GA4 зможе його прочитати. Перевірте конфігурацію сервера, правила .htaccess та налаштування CDN, щоб переконатися, що_glзберігається під час редиректів. - JavaScript-навігація. Посилання, згенеровані динамічно через JavaScript (
window.open, навігація SPA-роутером,window.location.href), можуть не декоруватися автоматично. Потрібно використовуватиgtagSetAPI або вручну додавати linker-параметр. - Відправка форм без
decorate_forms. Якщо користувачі переходять між доменами через POST-форму (наприклад, форма пошуку, що відправляє на інший домен), linker-параметр не додається безdecorate_forms: trueв конфігурації. - Тестування тільки в одному напрямку. Міждоменне відстеження повинно працювати в обох напрямках: A в B та B в A. Тестуйте навігацію в обох напрямках.
- Cookie consent блокує linker. Якщо ваша платформа управління згодами блокує GA4 до отримання згоди, linker-параметр не може бути зчитаний на домені-одержувачі. Переконайтесь, що стан згоди синхронізований або принаймні що linker-параметр обробляється при початковому завантаженні сторінки.
Чи є швидший спосіб налаштувати міждоменне відстеження?
Стандартне налаштування вимагає навігації по адмінці GA4, налаштуванням тегів GTM, спискам виключення рефералів та ручного тестування на кількох доменах. Легко пропустити крок, особливо при роботі з трьома і більше доменами.
GTM Event Helper спрощує процес:
- Відкрийте розширення на будь-якому з ваших доменів
- Налаштуйте теги та тригери GA4 візуально — клацніть елементи, встановіть назви подій та створіть теги через GTM API
- AI Agent аналізує структуру вашої сторінки та пропонує правильне налаштування відстеження, включаючи міждоменні сценарії, коли виявляє посилання на зовнішні домени, які вам належать
- Теги та тригери створюються послідовно у вашому GTM workspace, зменшуючи ризик неузгоджених конфігурацій між доменами
Замість перемикання між адмінкою GA4, GTM та вашим сайтом, ви створюєте теги та тригери з єдиного інтерфейсу безпосередньо на сторінці.
Спростіть налаштування GTM на всіх доменах.
Встановити GTM Event HelperЗовнішні ресурси
- GA4: Налаштування міждоменного вимірювання
- GA4: Список небажаних рефералів
- GTM: Налаштування тегів подій GA4
- Google Tag (gtag.js) API reference
Пов'язані статті
- Налаштування відстеження подій GA4 у GTM без коду
- Як знайти помилки в тегах GTM, які не спрацьовують
- Налаштування ecommerce-відстеження GA4 у GTM
- Налаштування Enhanced Conversions у GTM
- Посібник з dataLayer для GTM
← Усі статті · Головна · Політика конфіденційності · Контакти