[UA→GA4] Советы по переходу с analytics.js на gtag.js

Эта статья предназначена для владельцев сайтов, которых интересует, как analytics.js для ресурса Universal Analytics (UA) сопоставляется с gtag.js для ресурса Google Аналитики 4, и которые хотят понять механизм реализации. Подразумевается, что издатель уже создал ресурс Google Аналитики 4. Если вы просто хотите добавить на страницу базовый код отслеживания, ознакомьтесь с этими инструкциями.
Содержание

О фрагменте gtag.js

Если вы используете в ресурсе Universal Analytics код analytics.js, вам понадобится добавить фрагмент gtag.js для нового ресурса Google Аналитики 4. Фрагмент gtag.js имеет следующую структуру:

01: <script async src="https://www.googletagmanager.com/gtag/js?id=<Идентификатор ресурса А>"></script>

02: <script>

03: window.dataLayer = window.dataLayer || [];

04: function gtag(){dataLayer.push(arguments);}

05: gtag('js', new Date());

06:

07: gtag('config', '<Идентификатор ресурса А>');

08:

09: gtag('config', '<Идентификатор ресурса Б>');

10:

11: gtag('event', 'sign_up', { 'method': 'email' });

12:

13: gtag('event', 'view_video', { 'send_to': '<Идентификатор ресурса Б>' });

14:

15: </script>

Строка 7. Директива config тега gtag.js включает сбор данных для ресурса, связанного с <Идентификатором ресурса А>. Например, добавление такой директивы с идентификатором тега для ресурса Google Аналитики 4 запустит передачу событий page_view в этот ресурс.

Идентификатор ресурса может обозначать разные продукты Google, включая ресурс Universal Analytics (UA-XXXXXXXX), ресурс Google Аналитики 4 (G-XXXXXXXX), Google Рекламу (AW-XXXXXXXX) и Floodlight (DC-XXXXXXXX).

Строка 11. Директива event тега gtag.js передает событие. Если во фрагменте присутствуют директивы config для нескольких ресурсов, событие передается во все эти ресурсы.

В примере выше параметр sign_up – это название события. Последний параметр – это объект, содержащий набор параметров события. В нашем примере method – параметр со значением email.

Строка 13. Здесь send_to – параметр события. Это специальный параметр, который направляет связанное с ним событие в определенный ресурс. В нашем примере это событие будет передано только в ресурс, обозначенный как <Идентификатор ресурса Б>.

Для ресурса Google Аналитики 4 директива config включает базовый сбор данных и сбор событий page_view как автоматически регистрируемых, когда загружается на странице.

Обращение pageview или событие page_view можно изменить или заблокировать, используя определенные параметры.

Идентификаторы ресурсов

Идентификатор ресурса Universal Analytics имеет формат "UA-XXXXXXXX". Его иногда называют идентификатором отслеживания, но в этой статье мы используем термин "идентификатор ресурса Universal Analytics".

В потоках данных сайта для ресурсов Google Аналитики 4 используется идентификатор тега в формате "G-XXXXXXXX".

В некоторых примерах кода и документации они иногда могут называться "TAG_ID".

Базовый сбор данных

Включив базовый сбор данных для ресурса Google Аналитики 4, вы сможете собирать следующее:

Чтобы настроить базовый сбор данных для ресурса Google Аналитики 4, добавьте в раздел <head> каждой страницы фрагмент gtag.js (тег Google).

Сравнение фрагментов gtag.js и analytics.js

Фрагмент gtag.js для ресурса Google Аналитики 4 выполняет ту же задачу, что и фрагмент analytics.js для ресурса Universal Analytics.

Основное различие между ними заключается в том, что код analytics.js содержит отдельный вызов send pageview, а код gtag.js – нет. В коде gtag.js просмотр страницы – автоматически регистрируемое событие, которое передается с помощью директивы config.

 

Ресурс Universal Analytics (analytics.js)

<script>

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'TAG_ID', 'auto');

ga('send', 'pageview');

</script>

Ресурс Google Аналитики 4 (gtag.js)

<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>

<script>

window.dataLayer = window.dataLayer || [];

function gtag(){dataLayer.push(arguments);}

gtag('js', new Date());

gtag('config', 'TAG_ID');

</script>

Настройки конфигурации gtag.js

Вы можете настроить базовый фрагмент gtag.js, чтобы управлять настройками сбора данных, например деидентификацией IP-адресов, персонализацией файлов cookie и сигналами Google, так же, как с помощью analytics.js. Для этого используются директивы config и set в gtag.js (в analytics.js. это директивы set, create и require).

Ресурсы Google Аналитики 4 (G-XXXXXXXX) поддерживают аналогичную реализацию настроек конфигурации в gtag.js. Однако есть некоторые различия, которые следует учитывать.

  • Если ко всем сконфигурированным ресурсам нужно применить общие настройки, используйте команду set в gtag.js, с помощью которой можно охватить все идентификаторы тегов и ресурсов.
  • Обратите особое внимание на отключение функций для рекламодателей и персонализации рекламы, которое обычно реализуется в строке set.

Если в вашей реализации analytics.js используются директивы set, create и require, проверьте, какие из них автоматически настраиваются в ресурсе Google Аналитики 4, а какие нужно задать в коде ресурса (сопоставление параметров).

Ниже приведены примеры кода конфигурации для analytics.js (ресурс Universal Analytics) и gtag.js (ресурс Google Аналитики 4).

Включение базового сбора данных и настройка User-ID

analytics.js

ga('create', 'TAG_ID', 'auto', {

userId: USER_ID

});

ga('send', 'pageview');

gtag.js

gtag('config', 'TAG_ID', {

'user_id': 'USER_ID'

});

Настройки cookie

analytics.js

ga('create', 'TAG_ID', {

'cookieName': 'gaCookie',

'cookieDomain': 'blog.example.com',

'cookieExpires': 60 * 60 * 24 * 28 // Время в секундах.

});

gtag.js

gtag('config', 'TAG_ID', {

'cookie_prefix': 'MyCookie',

'cookie_domain': 'blog.example.com',

'cookie_expires': 28 * 24 * 60 * 60 // 28 дней в секундах

});

Блокировка события page_view

Если вы не хотите, чтобы при загрузке кода config передавалось событие page_view (например, когда загружается окно iframe), вы можете заблокировать это событие. Допустим, событие page_view передается, когда пользователь выполняет вход на сайте. Вы задаете для взаимодействия типа "Вход" идентификатор пользователя с помощью директивы config, но не хотите передавать ещё одно событие page_view. В коде ниже показано, как его заблокировать.

gtag('config', 'TAG_ID', {

'user_id': 'USER_ID',

'send_page_view': false

});

Названия тегов

Названия тегов (трекеры) используются, если вы хотите передавать данные через analytics.js в разные ресурсы Universal Analytics. В analytics.js трекеры указывают, в какой ресурс отправлять данные. В обращениях после первого обращения create не нужно указывать идентификатор ресурса Universal Analytics, достаточно задать название трекера.

В gtag.js трекеры недоступны для ресурсов любого типа. Если вы хотите передавать все обращения в несколько ресурсов (разные потоки данных для ресурсов Google Аналитики 4), укажите все идентификаторы тегов и ресурсов в строке config.

События

Ознакомьтесь с руководством по переносу событий.

Специальные параметры и показатели

Специальные параметры и показатели можно использовать, чтобы получать больше информации с сайта и импортировать офлайн-данные, например из CRM-систем. Для ресурса Universal Analytics (UA-XXXXXXXX) специальные параметры и показатели необходимо создавать в интерфейсе. Им присваивается идентификатор, после чего их можно добавлять или импортировать. Их можно создавать на уровне обращения, сеанса, пользователя или товара.

Для ресурса Google Аналитики 4 (G-XXXXXXXX) специальные параметры и показатели реализуются по-другому. Специальные параметры и показатели из ресурса Universal Analytics, реализованные с помощью analytics.js, необходимо заново добавить в ресурс Google Аналитики 4 как параметры.

Специальный параметр для ресурса Universal Analytics может быть реализован с помощью analytics.js следующим образом:

ga('send', 'event', 'category_value', 'action_name', {'dimension5': 'custom data'

});

ИЛИ

ga('set', 'dimension5', 'custom data');

 

Эти специальные параметры можно перенести в ресурс Google Аналитики 4 через gtag.js как показано ниже.

gtag('event', 'action_name', {'eventCategory': 'category_value',

'dimension5': 'custom data'

});

ИЛИ

gtag('set', {'dimension5': 'custom data'});

Обратите внимание на следующее:

  1. Чтобы параметры отображались в отчетах, их необходимо зарегистрировать в интерфейсе. Это похоже на регистрацию специальных параметров в Universal Analytics (действуют ограничения). Если вы анализируете только экспортированные данные или используете параметры только для активации аудиторий, регистрация не требуется.
  2. Специальные параметры всегда задаются на уровне события (он эквивалентен уровню обращения). Это же происходит со специальными параметрами, которые автоматически преобразуются в параметры (для реализаций с помощью gtag.js "UA-XXXXXXXX"), независимо от их исходного уровня.

Такая же логика и принципы сопоставления применяются для специальных показателей, но для них применяются ограничения для числовых параметров (при регистрации для отчетов применяются ограничения для текстовых параметров).

В целом, специальные параметры и показатели различных уровней из ресурса Universal Analytics переносятся в ресурс Google Аналитики 4 следующим образом:

  • Специальный параметр на уровне обращения: параметр (не более 25 параметров на событие во время сбора данных; не более 50 специальных параметров/показателей).
    Примечание. Автоматически регистрируемые события и параметры могут охватывать некоторые случаи использования, в которых ранее применялись специальные параметры на уровне обращения.
  • Специальный параметр на уровне пользователя: свойства пользователя (не более 25 при регистрации в интерфейсе для отчетов). Автоматически регистрируемые свойства пользователя при этом не учитываются.
  • Специальный параметр на уровне сеанса: в ресурсе Google Аналитики 4 аналога нет. Используйте специальные параметры и свойства пользователя.

Рекомендации для свойств пользователя

Свойства присваиваются пользователю независимо от платформы (например, для всех источников потока данных), поэтому нужны только в тех случаях, когда данные применяются на уровне пользователя. Свойства пользователя нельзя передавать для данных на уровне сеансов или устройств (таких как размер экрана).

Пример для ресурса Google Аналитики 4

gtag('set', 'user_properties', {

favorite_composer: 'Малер',

favorite_instrument: 'контрабас',

season_ticketholder: 'true'

});

Эта информация оказалась полезной?

Как можно улучшить эту статью?
Поиск
Очистить поле поиска
Закрыть поиск
Главное меню
4355720698383127051
true
Поиск по Справочному центру
true
true
true
true
true
69256
false
false