Сбор событий Universal Analytics в Google Analytics 4

13 ноября, 2021

Несколько дней назад в GA4 появилась новая функция - Сбор событий Universal Analytics. Она позволяет собирать события, которые настроены под Universal Analytics, и корректно обрабатывать их в Google Analytics 4. О том, как это работает, подробнее в этом материале.

Обновление (февраль 2022): я выпустил электронное руководство по Google Analytics 4. Бесплатно скачать его можно в формате .PDF по ссылке.

Типы обращений

Как вы знаете, в новом счетчике Google Analytics любое отслеживаемое обращение - это событие. В официальной документации Google даже приведена сводная таблица, в которой сопоставляются различные типы обращений в двух разных системах:

Типы обращений в ресурсе Universal Analytics и Google Analytics 4

Если в Universal Analytics существует несколько типов обращений (просмотр страницы, событие, социальное взаимодействие, транзакция электронной торговли, пользовательское время, исключение, просмотра экрана приложения), то для Google Analytics 4 это все отслеживается как события.

Новая настройка Сбор событий Universal Analytics (Collect Universal Analytics events) позволяет регистрировать в GA4 такие типы обращений из Universal Analytics (analytics.js), как: событие (event), пользовательское время (timing) и исключение (exception). Для этого ее необходимо активировать.

Включение сбора событий Universal Analytics

Чтобы включить Сбор событий Universal Analytics в Google Analytics 4, перейдите на уровень ресурса в раздел Потоки данных и выберите свой Веб-поток:

Потоки данных - Веб-поток

После этого кликните на меню Дополнительные настройки добавления тегов внизу окна:

Дополнительные настройки добавления тегов

В разделе Настройки событий включите переключатель Сбор событий Universal Analytics:

Сбор событий Universal Analytics

На этом настройка завершена. Теперь давайте на примерах разберем какие типы обращений Universal Analytics будут отслеживаться и передаваться в Google Analytics 4 после включения данной опции.

Тип обращения "Событие"

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

- для analytics.js:

- для gtag.js:

, где:

  • eventCategory (Категория события, обязательный параметр) – общее имя для группы объектов, которое нужно отслеживать. Например: кнопка, форма, ссылка и т.д.;
  • eventAction (Действие по событию, обязательный параметр) – определяет тип взаимодействия пользователя с объектом сайта. Например: клик, просмотр, загрузка и т.д.;
  • eventLabel (Ярлык события, необязательный параметр, но рекомендуемый) – это категория (группа), к которой относится отслеживаемый объект. Например: «навигационное меню»;
  • eventValue (Ценность события, необязательный параметр) – целочисленное значение, которое можно использовать для предоставления данных о событии пользователя, например: «время, сумма транзакции, прохождение n-ого уровня в игре и т.д.»
  • nonInteraction / non_interaction (без взаимодействия, необязательный параметр) - может принимать значение true или false. Если передается true, то это событие никак не повлияет на параметры и показатели в отчетах Google Analytics, в том числе и на показатель отказов.

В эти компоненты вы можете добавлять произвольные названия, как по-английски, так и на кириллице. В Universal Analytics это делается на уровне представления, в разделе Цели.

Пример создания цели-события (конверсии) в Universal Analytics

Статистика по событиям в Universal Analytics представлена в разделе Поведение - События - Лучшие события.

Отчет "Поведение - События - Лучшие события" в Universal Analytics

В Google Analytics 4 нет вышеописанных компонент (Категория, Действие, Ярлык, Ценность), для него используется только глобальный тега сайта (Global Site Tag, gtag.js), а сама конструкция имеет вид:

Если сопоставить компоненты UA и GA4, то получится:

  • <eventAction> (Действие) в Universal Analytics сопоставляется с <event_name> (Название события) в Google Analytics 4;
  • <eventCategory> (Категория)<eventLabel> (Ярлык)<eventValue> (Ценность) и их значения передается как параметры события в виде пары ключ:значение.

Разберем это на конкретном примере. Предположим, вы отслеживаете на сайте клик по кнопке:

Пример отслеживания кнопки на сайте

Причем делаете это напрямую, без использования Google Tag Manager. У вас установлен счетчик Universal Analytics (analytics.js). Тогда при таких исходных данных и текущей библиотеки вам необходимо использовать следующую конструкцию для события:

Максимально упростив ее до 2 компонентов, а также задав им соответствующие названия, получим:

, где greenButton - Категория (eventCategory), а click - Действие (eventAction).

Поскольку это событие отслеживается как клик по кнопке, то используется конструкция onclick. Итоговую конструкцию:

необходимо добавить на отслеживаемый элемент на сайте. В данном случае, это зеленая кнопка "Консультация".

Конструкция события для Universal Analytics (клик по кнопке)

Если нажать на отслеживаемую кнопку, то в Universal Analytics в отчете В режиме реального времени мы увидим наше событие с соответствующими параметрами:

Событие (клик по кнопке) в реальном времени

Но даже если у вас параллельно установлен счетчик Google Analytics 4 (gtag.js), это событие для него фиксироваться не будет. Для этого, как вы уже знаете, необходимо использовать другую конструкцию события:

А поскольку она отличается, нам необходимо самостоятельно продумывать то, как будет называться передаваемое событие и будут ли вместе с ним передаваться какие-либо еще параметры события Самая простая конструкция для отслеживания клика по кнопке (без параметров события) для GA4 может выглядеть так:

, где click - название события GA4.

Этот код можно добавить после основной конструкции от Universal Analytics. Таким образом, получится следующее:

На самом элементе общая конструкция для отслеживания события UA (analytics.js) и GA4 (gtag.js) будет выглядеть так:

Общая конструкция события для двух счетчиков

Если нажать на отслеживаемую кнопку, то в Google Analytics 4 в инструменте DebugView мы увидим наше событие click:

Событие (клик по кнопке) в DebugView

Все вышеописанное требовалось выполнять до момента выхода функции сбора событий Universal Analytics. С ее появлением отпала необходимость добавления второй конструкции от Google Analytics 4. Теперь можно использовать только вызов функции ga () из Universal Analytics, а далее сама настройка сделает те самые преобразования, о которых я писал выше:

Преобразование события из UA в GA4

Отличия заключаются и в том, как пишутся эти параметры событий в GA4:

  • 'eventCategory' -> 'event_category'
  • 'eventLabel' -> 'event_label'
  • 'eventValue' -> 'value'

То есть, если мы возьмем наш предыдущий пример с отслеживанием кнопки и добавим к нему все 4 компонента, то конструкция события станет такой:

, где:

  • greenButton - Категория (eventCategory);
  • click - Действие (eventAction);
  • homepage - Ярлык (eventLabel);
  • 100 - Ценность (eventValue);

Добавив ее на отслеживаемый элемент, получим:

Конструкция события со всеми компонентами для Universal Analytics (клик по кнопке)

Как видите, я удалил вторую конструкцию для Google Analytics 4 с gtag('event', 'click'), поскольку у нас включен сбор событий Universal Analytics в настройках GA4. С этой настройкой событие должно отправить в Google Analytics 4, но преобразованное:

Сопоставление данных по событию UA и GA4

Если нажать на отслеживаемую кнопку, то в Google Analytics 4 в инструменте DebugView мы увидим наше событие click, преобразованное благодаря функции Сбор событий Universal Analytics:

Преобразованное событие UA в формат GA4

Система сама сконвертировала нам событие с компонентами для Universal Analytics в формат, понимаемый Google Analytics 4. Именно так это работает для типов обращений Событие.

Тип обращения "Пользовательское время"

В Universal Analytics есть группа отчетов, которая позволяет следить за скоростью загрузки ваших страниц и быстродействием его различных элементов (например, за скоростью загрузки картинок или временем отклика на нажатие кнопки) с помощью временных меток. Эти отчеты находятся в разделе Поведение - Скорость загрузки сайта. В этом разделе также присутствует отчет Пользовательское время.

Отчет "Пользовательское время"

Он позволяет отслеживать события, связанные со временем, и измерять дополнительную информацию с целью улучшения производительности. Например, сколько секунд пользователь заполнял форму на сайте или читал материал на странице. Можно не просто отследить воронку клиента от страницы корзины до страницы с успешным заказом (факт перехода со страницы на страницу), но и передать время выполнения каждого шага в отдельности.

По умолчанию отчет в Universal Analytics пустой и не имеет никаких данных. Для того, чтобы статистика в этом отчете появилась, необходимо настроить передачу пользовательского времени.

Данные о пользовательском времени в Google Analytics можно отправлять с помощью команды send (для библиотеки analytics.js), задав параметру hitType (тип отслеживания) значение timing. Сам пример конструкции выглядит так:

, где:

  • timingCategory - категория пользовательского времени;
  • timingVar - переменная пользовательского времени;
  • timingValue - значение пользовательского времени (в миллисекундах);
  • timingLabel - ярлык пользовательского времени.

В моем блоге есть статья, в которой я описываю способ отслеживания пользовательского времени с помощью диспетчера тегов Google. Подробнее читайте здесь.

Есть отличия в написании параметров событий в Google Analytics 4:

  • 'timingCategory' -> 'event_category'
  • 'timingVar' -> 'name'
  • 'timingValue' -> 'value'
  • 'timingLabel' -> 'event_label'

С включенной настройкой сбора событий Universal Analytics в GA4, в случае достижения события, также произойдет преобразование:

Сопоставление данных по событию UA и GA4

Тип обращения "Исключение"

Тип обращения Исключение предназначен для отслеживания количества и типов сбоев и ошибок, которые происходили в вашем ресурсе Universal Analytics.

Данные об исключениях можно отправлять с помощью команды send (для библиотеки analytics.js), задав параметру hitType значение exception. Сам пример конструкции выглядит так:

, где:

  • exDescription - описание исключения;
  • exFatal - тип ошибки (true - критическая ошибка, false - нет).

Подробнее об этом типе обращения читайте в официальной справке Google.

Есть отличия в написании параметров событий в Google Analytics 4:

  • 'exDescription' -> 'description'
  • 'exFatal' -> 'fatal'

С включенной настройкой сбора событий Universal Analytics в GA4, в случае достижения события, также произойдет преобразование:

Сопоставление данных по событию UA и GA4

Получайте бесплатные уроки и фишки

По контекстной, таргетированной рекламе и аналитике