Передача кастомных параметров, показателей и событий в Google Analytics

Категория: Аналитика

Инструкция и примеры по созданию и передаче пользовательских событий и показателей (параметров и метрики) в статистику Universal Google Analytics (без использования Диспетчера тегов - Google Tag Manager).

Базис

Рассмотрим стандартный код подключения аналитики (скрипта analytics.js):

<script>
  // IIFE ф-ция не интересна, здесь лишь подключается скрипт `//google-analytics.com/analytics.js`

  ga('create', 'UA-XXXXXXXX-1', 'auto');

  // Установка пользовательских параметров (если нужно)
  // ga('set', 'dimensionX', 'some value');

  ga('send', 'pageview');
</script>
Внимание!

Гугл об этом умалчивает на странице с кодом аналитики, но вы должны знать, что пользовательские параметры и метрики, которые относятся к области доступа просмотр страницы (hit), необходимо устанавливать перед вызовом pageview! Мне этот момент не показался очевидным.

При передаче команд счетчику ga вы можете использовать несколько форматов вызова:

ga('[trackerName.]command', [fieldsObject]);
ga('[trackerName.]command', [field1], [field2], ..., [fieldObject]);
Примечание

trackerName - это неймспейс, который позволяет использовать несколько счетчиков на одной странице.

Что нужно знать:

  • Области доступа: https://support.google.com/analytics/answer/2709828?hl=ru#example-hit
  • Параметры аналитики: https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference?hl=ru

А это пример установки параметров аналитики по умолчанию:

ga('create', 'UA-XXXXXXXX-1', {name: 'gtm1223344556677'});
ga('gtm1458922461577.set', '&gtm', 'GTM-KRGDG4');
ga('gtm1458922461577.set', 'hitCallback', <func>);
ga('gtm1458922461577.require', 'displayfeatures', undefined, {cookieName: '_dc_gtm_UA-XXXXXXXX-1'});
ga('gtm1458922461577.send', 'pageview'); // В ЭТОТ МОМЕНТ ОТПРАВЛЯЮТСЯ ПАРАМЕТРЫ ПРОСМОТРА
Примечание

Метод set используется, когда вам нужно передать специальные параметры или показатели вместе со всеми обращениями на данной странице (или на протяжении всего жизненного цикла объекта отслеживания).

Кастомные данные

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

  1. Параметры (dimension) - строка данных. Параметры описывают пользователей, их сеансы и действия. Параметр "Город" описывает характеристику сессий и указывает на город, из которого был выполнен сеанс.
  2. Показатели (metric) - числовой инкрементный счетчик (число, валюта, время). Показатели позволяют получать количественные данные. Показатель Сеансы представляет собой общее количество сессий.
  3. События - поведение пользователя на странице.

Не все показатели и параметры сочетаются между собой. Обычно они применяются на определенном уровне данных – на уровне пользователя, сеанса или действия.

Custom Dimension - кастомный параметр

Для использования пользовательского параметра необходимо выполнить 3 шага:

  1. Создать параметр в админке аналитики: Администратор » Ресурс » Пользовательские определения » Параметры.
  2. Установить и передать значение этого параметра на странице сайта
  3. Создать отчет с использованием этого параметра.

 По порядку...

1. Создать параметр в админке

Авторизируйтесь в админке аналитики и перейдите на страницу: Администратор » Ресурс » Пользовательские определения » Параметры. Добавьте новый параметр:


Форма добавления пользовательского параметра (custom dimension)


Настройки специальных параметров:

  • Название - читабельное название параметра, которое вы будете видеть в отчетах.
  • Область действия или область доступа:
    • обращение (запрос, хит) - это просмотр страницы или загрузка экрана.
    • сеанс - параметр задается на уровне всего сеанса песетителя.
    • пользователь - параметр применим к пользователю вцелом.
    • товар - установка доп. параметров для товара.
  • Активный.

2. Установить и передать значение параметра

После создания параметра, вы увидите пример кода для установки значения этого параметра (здесь и появляется переменная dimension1 - это ключ для параметра с названием design):

ga('set', 'dimension1', 'light');

Пример передачи параметра:

// подключаем скрипт analytics.js
ga('create', 'UA-XXXXXXXX-Y', 'auto'); // устанавливаем код отслеживания
ga('set', 'dimension1', 'light');      // устанавливаем кастомные параметры
ga('send', 'pageview', '/level_1/');   // отправляем параметры на сервер аналитики

Вы можете установить хеш-лист параметров:

ga('send', 'pageview', {'dimension1': 'dark', 'dimension2': 'other value'});
Внимание!

Еще раз, значение пользовательского параметра необходимо установить до вызова события pageview! Мне этот факт не показался очевидным. Также имейте в виду, что событие pageview выполняется только 1 раз.

Вы можете посмотреть какие параметры отправляются на сервер аналитики из консоли, вкладка Network:


Параметр design, он же dimension1=light передается как get параметр cd1.

Важно:

  • В каждом ресурсе доступно 20 индексов для персонализированных параметров (dimension) и ещё 20 – для показателей (metric). Для VIP аккаунтов по 200 индексов и для параметров, и для показателей.
Примечание

Специальные параметры и показатели передаются в Analytics вместе с обращениями (событиями).

3. Создать отчет

С отчетами я не разобрался..

Custom Metric - кастомные определения

Панель управления пользовательскими показателями находится рядом с параметрами: Администратор » Ресурс » Пользовательские определения » Показатели. Создание и передача данных показателя принчипиально ничем не отличается от создания параметра. Поэтому я остановлюсь лишь на отличиях и деталях.

Настройки пользовательских показателей:

  • Название для отчетов.
  • Область действия или область доступа:
    • обращение (запрос, хит) - это просмотр страницы или загрузка экрана.
    • товар - установка показателя для товара. Показатели уровня товара связываются только с товаром, с которым они были отправлены.
  • Тип - число, валюта, время.
  • Диапазон значений - минимальное и максимальное значения.

Пример установки значений для пользовательского параметра и показателя:

ga('set', {
  'dimension1': 'custom dimension value',
  'metric1':    'custom metric value'
});

Custom Event - кастомные события

Кастомные события позволяют анализировать поведение пользователя. Формат параметров установки события зависит от типа обращения.

Общий формат передачи события:

ga('send', [hitType], [fields], [fieldObject]);

Стандартное событие просмотра страницы:

ga('send', 'pageview');
ga('send', 'pageview', '/path/page.php', {'dimension1': 'some value'});

Кастомное событие:

ga('send', 'event', 'eventCategory', 'eventAction', 'eventLabel', 'eventValue', {fieldsObject});

Свойства кастомного события можно задавать также через хеш-объект fieldsObject:

ga('send', 'event', {
  eventCategory: 'Category', // объект, с которым взаимодействует посетитель (Video). Обязательно!
  eventAction: 'Action',     // название/тип действия (play, close,..). Обязательно!
  eventLabel: 'Label',       // ярлык события (название видео, имя скачиваемого документа). Не обязательно
  eventValue: 55             // INT, значение связанное с событием (время загрузки). Значения суммируются! Не обязательно
});

Типы обращений (hitType):

  1. pageview (просмотр страницы)
  2. screenview (просмотр экрана)
  3. event (событие) - кастомное действие пользователя.
  4. transaction (транзакция)
  5. item (товар)
  6. social (социальное взаимодействие)
    ga('send', 'social', 'socialNetwork', 'socialAction', 'socialTarget', [fieldObject]);
  7. exception (исключение)
  8. timing (время)
ga('send', {
  hitType: 'event',
  eventCategory: 'Post',
  eventAction: 'like',
  nonInteraction: false,
  hitCallback: function() {
    // ф-ция будет вызвана после обработки обращения
  }
});

События без взаимодействия:

ga('send', 'event', 'Videos', 'play', 'Fall Campaign', {
  nonInteraction: true
});

Важно:

  • Событие (как и посещение страницы) классифицируется как взаимодействие.
  • Первые 10 событий, отправленные в Analytics, отслеживаются сразу, а затем отслеживание выполняется не чаще одного события в секунду. Когда количество событий начнет приближаться к максимально допустимому за сеанс, отслеживание может прекратиться.

Документация:

  • Справка по очереди команд ga: https://developers.google.com/analytics/devguides/collection/analyticsjs/command-queue-reference
  • Подробнее о параметрах событий: https://support.google.com/analytics/answer/1033068?hl=ru#Anatomy
  • Рекомендации гугл по использованию событий: https://support.google.com/analytics/answer/1033068?hl=ru#BestPractices

#ga custom dimension, metrix, event