Тег Менеджер. Настройка и интеграции

Порядок работы при разметке событий на сайте

Разметка событий сайта

При разметке событий на сайте используется тип тега andataEvent в случае работы с Андата Аналитикой, если события размечаются для отправки в Яндекс Метрику или Google Analytics, то используйте тип trackingEvent. Порядок работы с обоими типами тегов аналогичный и заключается в следующем:

1) определить, какое событие на сайте нужно разметить и какие параметры передавать вместе с ним;

2) создать соответствующие Поля, в которых будут передаваться пользовательские параметры;

3) создать соответствующие Переменные, в которых необходимо указать, откуда брать значения для передаваемых параметров;

4) создать Триггеры - условия, при активации которых будут срабатывать теги;

5) создать сами теги;

6) события с типом trackingEvent необходимо так же отправить во внешние системы, например, в Яндекс Метрику. Для событий с типом andataEvent передача в Яндекс Метрику или Google Analytics не является обязательным шагом, поскольку события будут отправляться в хранилище данных Андата.

Первый пункт каждый определяет для себя самостоятельно. Создание полей и переменных аналогично и возможно двумя способами.
Первый способ - через одноименную вкладку в верхнем меню:
Второй способ - в процессе создания тега: при выборе типа тега “AndataEvent” (в некоторых случаях - trackingEvent) станет доступен блок Пользовательские параметры, необходимо кликнуть по кнопке Добавить и появится пара полей: слева указываются поля, справа в значениях свойства - переменные.
Кликнув на левое поле, раскроется список, в котором можно выбрать созданные ранее поля или добавить новое.
В поле Значение свойств список переменных появится, если начать вводить две фигурные скобки {{ . Здесь уже отражаются предустановленные переменные, которые доступны для выбора. Для создания новой переменной необходимо выбрать Добавить переменную.
Независимо от того, какой способ выбрать, откроется окно для создания нового поля или переменной.

Поле необходимо для указания типа данных, которые будут отправляться в коллектор SnowPlow. При создании необходимо указать его название (допустимые символы: a-z, A-Z, 0-9, _), алиас поля и описание добавляется при необходимости:
В зависимости от того, какие данные необходимо передавать, выбирается тип полей: String, Number, Date, Array, Object.

Более подробно с типами полей можно ознакомиться в разделе Типы полей.

Определившись с типом поля, нажимаем Сохранить.

Важно! После публикации контейнера созданные поля удалить будет уже невозможно, т.к. они попадут в json-схему. Поэтому к созданию полей необходимо подходить очень внимательно. До публикации созданные поля удалить можно.

Переменные - это контейнеры для хранения меняющихся значений, например, номера заказа, цены товара, даты и др. Так же, как и в случае с полем, при создании новой переменной необходимо указать имя переменной и при необходимости описание:
Далее необходимо выбрать тип переменной. Для выбора доступны следующие типы: Пользовательская, Переменная уровня данных, Переменная из URL query, Переменная из Cookie, Переменная из RegExp, Значение из поля формы, Стек, Объект.

Более подробно с типами переменных можно ознакомиться в разделе Типы переменных.

После выбора типа переменной и заполнения необходимых полей, нажимаем Сохранить.

Следующим шагом является создание триггера. Триггеры необходимы для определения условий, при которых сработает тот или иной тег. Создать триггеры можно тремя способами: первый - через одноименную вкладку:
Второй способ - в самом теге при выборе триггера:
Откроется окно с созданными ранее триггерами, далее в верхнем правом углу необходимо нажать на иконку “+”.
Третий способ - через вкладку Обзор:
Во всех случаях откроется окно для создания нового триггера. Необходимо дать название, описание (при необходимости) и выбрать тип триггера:
Выбрать можно следующие типы: Просмотр страницы, Клик по заданному селектору, Mousedown по заданному селектору, Нажатие на клавишу по заданному селектору, Пользовательское событие, Отправка формы, В процентах от высоты страницы, До попадания элемента во viewport. Также можно использовать Объединение триггеров через "И", если вам необходимо создать сложное условие, по которому будет срабатывать событие на сайте.

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

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

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

Далее есть два поля, которые также заполняются при необходимости.

Поле “Наследуется от” – предназначено для создания нескольких тегов с одинаковым набором передаваемых пользовательских параметров. Перед выбором родительского тега необходимо выбрать Тип тега. Таким образом, вместе с событием будут передаваться параметры из тега, выбранного в поле “Наследуется от”. Например, создаем тег Клиентские реквизиты, в котором укажем необходимые нам для передачи пользовательские параметры (имя клиента, номер телефона и почта). В других тегах нам уже не нужно будет каждый раз выбирать одни и те же пользовательские параметры, достаточно указать тег Клиентские реквизиты в поле Наследуется от.

Поле Зависит от – предназначено для указания тега, инициализации которого необходимо дождаться. Например, нам нужно, чтобы событие клик по кнопке срабатывало только после того, как пользователь просмотрит 50% страницы. Для этого мы создаем тег Скроллинг 50%, далее создаем тег Клик по кнопке и в поле “Зависит от” добавляет созданный ранее тег Скроллинг 50%. В результате, если пользователь проскроллил только 20% страницы и кликнул по кнопке, событие не отправится.

Типом тега в случае с разметкой событий на сайте выбирается andataEvent. Если вы не используете Андата Аналитику, то вместо типа andataEvent у вас будет доступен тип trackingEvent, его и нужно будет выбрать. Заполняем поле Имя события, даем короткое и понятное название, далее добавляем пользовательские параметры (поле=переменная), которые были созданы на предыдущих шагах. В случае, если нет необходимости вместе с событием передавать дополнительную информацию, данный блок оставляем пустым.
Если у Вас подключена Яндекс.Метрика и Google Analytics, то Вы можете передавать данные о событии в эти системы аналитики. Далее активируем тег, установив переключатель в положение Включен.
В блоке Триггеры выбираем триггер, созданный на предыдущем этапе, и нажимаем Создать.

В разделе Разметка событий, примеры мы описали самые востребованные примеры разметки различных событий на сайте.

Порядок работы при добавлении пользовательского HTML-кода

Тип тега Пользовательский HTML-код предназначен для вставки произвольного кода на страницы сайта, на которых установлен код Андата Таг менеджера.

Порядок работы в этом случае следующий:
  1. создать триггеры - условия, при активации которых будут срабатывать теги;
  2. создать сами теги.

Создать триггеры можно тремя способами: первый - через одноименную вкладку:
Второй способ - в самом теге при выборе триггера:
Откроется окно с созданными ранее триггерами, далее в верхнем правом углу необходимо нажать на иконку “+”.
Третий способ - через вкладку Обзор:
Во всех случаях откроется окно для создания нового триггера. Необходимо дать название, описание (при необходимости) и выбрать тип триггера:
Выбрать можно следующие типы: Просмотр страницы, Клик по заданному селектору, Mousedown по заданному селектору, Нажатие на клавишу по заданному селектору, Пользовательское событие, Отправка формы, В процентах от высоты страницы, До попадания элемента во viewport.

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

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

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

Поле Наследуется от в данном случае не влияет на работу тега, оно отвечает за передачу пользовательских параметров вместе с тегами типа AndataEvent.

Поле Зависит от – предназначено для указания тега, инициализации которого необходимо дождаться. Например, нам нужно, чтобы событие клик по кнопке срабатывало только после того, как пользователь просмотрит 50% страницы. Для этого мы создаем тег Скроллинг 50%, далее создаем тег Клик по кнопке и в поле “Зависит от” добавляет созданный ранее тег Скроллинг 50%. В результате, если пользователь проскроллил только 20% страницы и кликнул по кнопке, событие не отправится.

Тип тега необходимо выбрать Пользовательский HTML-код. При добавлении JavaScript в поле HTML-код всегда размещайте его внутри тегов <script> </script>.

При необходимости в поле Селектор для вставки можно добавить css-селектор элемента, в который необходимо добавить пользовательский html-код.
В блоке Триггеры выбираем триггер, созданный ранее, и нажимаем Создать.

Порядок работы при кросс-доменном отслеживании

Междоменное или кроссдоменное отслеживание — это способ отслеживания переходов пользователей между разными доменами (сайтами), на которых размещен тркекинг код, без потери данных о пользователе для аналитики. Например, такими данными могут быть источник возникновения и другие пользовательские параметры.

Чтобы данные не терялись при переходе между несколькими вашими доменами, необходимо воспользоваться функцией Андата Таг менеджера Обогащение ссылок.

Порядок работы в этом случае следующий:
  1. создать триггер - условие, при активации которого будет срабатывать тег;
  2. создать тег Обогащение ссылок.
Создаем новый триггер. Необходимо дать название, описание (при необходимости) и выбрать тип триггера - Клик по заданному селектору:
В поле DOM selector указываем все ссылки таким образом: a[href].

Следующим шагом будет создание тега. Необходимо указать название тега (произвольное, но понятное) и его описание (необязательное поле).
Тип тега необходимо выбрать Обогащение ссылок.

Откроется блок с параметрами, которые будут добавляться ко всем ссылкам. В поле Имя параметра необходимо указать произвольное, но понятное название, а в поле Значение параметра в двойных фигурных скобках нужно указать, из какой переменной будет передаваться значение. Можно выбрать из предустановленных переменных или создать свою.
Более подробно ознакомиться с тем, как создавать переменные, можно в разделе Как создавать пользовательские параметры.

Установите переключатель “Применять только к ссылкам за пределы сайта” в положение Включен. Таким образом, указанными параметрами “обогатятся” только внешние переходы. Активируйте тег, переведя переключатель “Активность тега” в положение Включен.

В блоке Триггеры выберите триггер, созданный заранее и нажмите Создать.

Порядок работы с доменами третьего и выше уровня

По умолчанию два доменных имени третьего уровня под одним и тем же доменным именем второго уровня не могут использовать файлы cookie в интерактивном режиме, например test1.site.ru и test2.site.ru, поскольку эти два доменных имени не совсем одинаковы. Это в свою очередь негативно влияет на корректный сбор данных. С помощью Тег Менеджера можно решить эту проблему.

Порядок работы в этом случае следующий:
  1. создать переменную, которую необходимо сохранить в cookies на всех уровнях домена;
  2. создать триггер;
  3. создать тег.
Создайте переменную, варианты создания можно изучить в разделе Переменные. Дайте название переменной и при необходимости описание. Тип переменной - Переменная из Cookies, далее необходимо указать имя cookies, а поля Значение по умолчанию и Сохранять в LocalStorage - заполните при необходимости.
Переходим к созданию триггера. Поскольку сохранять переменную необходимо с первого визита пользователя, триггером будет служить Просмотр всех страниц. Данный триггер в большинстве случаев уже должен быть создан, т.к. тег отслеживания Andata Traсking подвязывается именно к этому триггеру.
Следующим шагом будет создание тега. Необходимо указать название тега (произвольное, но понятное) и его описание (необязательное поле).

Типом тега необходимо выбрать Установить cookies из переменной. В поле Имя переменной указываем то название, которое будет отражаться в файлах cookies, а в значение добавляем созданную ранее переменную, обязательно в двойных фигурных скобках.
Далее в поле Domain указываем основной домен второго уровня в формате .site.ru. Атрибут path определяет путь, разрешенный для доступа к cookie. Чтобы разрешить использование файлов cookie на всех путях, в данном поле устанавливаем значение "/". При необходимости указываем время жизни cookies в секундах. Включенный переключатель Secure (только для HPPTS) означает, что cookie будет возвращен только при подключении SSH.
Активируем тег. В блоке Триггеры выбираем триггер, созданный на предыдущем этапе (Просмотр страниц), и нажимаем Создать.

Как создавать пользовательские параметры

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

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

Создать поля и переменные можно двумя способами.

Первый способ - через одноименную вкладку в верхнем меню:
Второй способ - в процессе создания тега: при выборе типа тега “AndataEvent” (в некоторых случаях - trackingEvent) станет доступен блок Пользовательские параметры, необходимо кликнуть по кнопке Добавить и появится пара полей: слева указываются поля, справа в значениях свойства - переменные.
Кликнув на левое поле, раскроется список, в котором можно выбрать созданные ранее поля или добавить новое.
В поле Значение свойств список переменных появится, если начать вводить две фигурные скобки {{ . Здесь уже отражаются предустановленные переменные, которые доступны для выбора. Для создания новой переменной необходимо выбрать Добавить переменную.
Независимо от того, какой способ выбрать, откроется окно для создания нового поля или переменной.

Поле необходимо для указания типа данных, которые будут отправляться в коллектор SnowPlow. При создании необходимо указать его название (допустимые символы: a-z, A-Z, 0-9, _), алиас поля и описание добавляется при необходимости:
В зависимости от того, какие данные необходимо передавать, выбирается тип полей:

String - используется в случаях, когда Вы хотите передать строковое значение, например, наименование товара, заголовок статьи в блоге.

Number - используется в случаях отправки числовых значений, например, суммы заказа.

Date - используется для передачи даты и времени в формате 2023-07-13T09:23:55.910Z

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

Object - объект, используется для хранения и передачи набора разнотипных элементов. Внутри этого поля также нужно будет обозначить, какие типы полей будут передаваться внутри массива. Необходимо указать все передаваемые типы полей.

Определившись с типом поля, нажимаем Сохранить.

Важно! После публикации контейнера созданные поля удалить будет уже невозможно, т.к. они попадут в json-схему. Поэтому к созданию полей необходимо подходить очень внимательно. До публикации созданные поля удалить можно.

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

Пользовательская - используется в случаях добавления кастомного кода, например, если необходимо изъять значения из какого-либо атрибута или тега.
Переменная уровня данных - для изъятия данных из уровня данных, например, из Data Layer
Переменная из URL query - для изъятия данных из URL-запроса, например, значение метки utm_term.
Переменная из Cookie - для изъятия информации из cookies-файлов, например, значение из cookies _ym_uid (CliendID Яндекс.Метрики).
Переменная из RegExp - используется в случаях, когда необходимо считывать значения из какой-либо переменной с помощью регулярного выражения, например, из URL ссылки изъять значение метки utm_source. Здесь необходимо отметить, что значение для переменной нужно брать в скобки (как в примере ниже), а регулярное выражение точно соответствовать источнику.
Значение из поля формы - для изъятия информации из полей формы на сайте.
Стек - используется в случаях, когда необходимо последить историю изменения какого-либо объекта, например, данные utm-разметки.
Объект - позволяет хранить набор переменных как один JS объект, где поля объекта - некоторые названия, а значения - константы либо переменные.
После выбора типа переменной и заполнения необходимых полей, нажимаем Сохранить.
Далее созданные поля и соответствующие им переменные добавляются в тег. В случае с типом тега andataEvent передача в системы аналитики не является обязательным и настраивается при необходимости. Если вы не используете Андата Аналитику и вместо типа andataEvent у вас тип trackingEvent, то передача в Яндекс Метрику или Google Analytics является обязательным, поскольку данные события не передаются в хранилище Андата и соответственно нигде не фиксируются.

Как читать и передавать значения из полей форм с помощью Андата

В некоторых случаях получить значение из полей форм стандартными переменными не удается. В таких ситуациях с помощью Андата Тег Менеджер можно прочитать и передать значения из полей форм на сайте следующим образом.

Разделим задачу на 3 этапа: сначала будем читать значение из поля формы, затем писать его в переменную, а уже потом - передавать значение переменной туда, куда вам нужно. Мы покажем, как это делается, на примере передачи значений в Андату.

Чтение полей форм

Изначально нужно создать поля для формирования json-схемы, в которых будут храниться значения из полей формы. Для этого во вкладке Поля создаем новое поле, даем ему название, в нашем примере это phone, при необходимости добавляем алиас и описание. Далее выбираем тип поля, для телефона это будет string и сохраняем.
Далее нужно создать новый триггер. Он будет считывать значения поля формы на сайте, пока оно активно, т.е. в фокусе. Дадим ему название, например, Чтение поля phone. При необходимости добавим описание, в качестве типа триггера необходимо выбрать “Нажатие на клавишу по заданному селектору”. В поле “DOM selector” нужно указать селектор из поля формы в фокусе:

input[type=tel]:focus
Далее нажимаем Сохранить. Аналогично создаем триггеры для других полей, которые хотите отслеживать.

Запись значения из поля формы в переменную

Для записи значений из полей формы в переменную необходимо создать переменные: одну - ту, откуда будем брать значение, и вторую - куда записывать. Во вкладке Переменные создаем новую переменную. Даем название, к примеру, phone_tilda, при необходимости - описание. Типом переменной нужно выбрать “Значение из поля формы”, в поле “Селектор поля с данными” указываем уже знакомую нам конструкцию

input[type=tel]:focus
Сохраняем переменную. Создаем следующую переменную, назовем ее atm_phone, в качестве типа нужно выбрать “Пользовательская”. В функцию-геттер добавляем следующий код:
return window.hasOwnProperty("_atm_phone") ? window._atm_phone : '';
Также сохраняем.

Следующим шагом будет создание тега. Во вкладке Теги создаем новый, называем Сохранение поля phone. В качестве типа тега нужно выбрать “Пользовательский HTML-код”, в поле “HTML-код” добавляем следующий код:
<script>

window._atm_phone = "{{phone_tilda}}";
console.log(window._atm_phone);

</script>
Если необходимо передавать номер телефона только цифрами, без тире и скобок, можно использовать следующий код (добавляется конструкция .replace(/\D/ig,"") ):
<script>

window._atm_phone = "{{phone_tilda}}".replace(/\D/ig,"");
console.log(window._atm_phone);

</script>
Далее выбираем созданный ранее триггер “Чтение поля phone” и сохраняем тег.
Аналогичным образом создаются переменные и теги для других полей формы. Таким образом, для каждого поля формы необходимо создать поле (если оно не было создано ранее), две переменные, один триггер и один тег. Далее уже нужно будет создать триггер и тег на непосредственно отправку формы с пользовательскими параметрами в Андату.

Отправка значения полей формы в Андату для аналитики

Создаем новый триггер, даем соответствующее название, например, Отправка любой формы.
Тип триггера в данном случае выбираем Клик по заданному селектору, в качестве DOM selector указываем все кнопки, у которых type=submit:

button[type=submit]
Сохраняем триггер. Переходим во вкладку Теги. Создаем новый, даем название “Отправка любой формы”, при необходимости добавляем описание, типом тега выбираем Andata Event и указываем имя события (необходимо, чтобы оно было на латинице и без пробелов):
Далее заполняем пользовательские параметры, слева добавляем созданное поле phone, справа соответствующую переменную с приставкой atm (которым мы присвоили значения с полей формы):
Далее активируем тег. В качестве триггера выбираем созданный ранее триггер Отправка любой формы. Сохраняем.

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

Проверить настройки можно с помощью расширения Snowplow Debugger для Google Chrome.

Читайте также:
Как проверить отправку событий с помощью Snowplow Debugger для Google Chrome

Как передать события AndataEvent как цели в Яндекс Метрику

Передача событий andataEvent в Яндекс.Метрику состоит из двух этапов: первый - настроить цель типа JavaScript-событие в Яндекс.Метрике, второй - установить настройки в Andata Tag Manager. Если вы не используете Андата Аналитику, то вместо типа andataEvent у вас будет доступен тип trackingEvent.

Для примера выберем событие “Успешная регистрация”. Переходим в Яндекс. Метрику, в раздел Цели, создаем новую. Типом условия нужно выбрать JavaScript-событие, а в качестве идентификатора цели указываем имя события andataEvent (или trackingEvent):
Они должны в точности совпадать. Добавляем цель:
Далее заходим в личный кабинет Андата, раздел Tag Manager. Переходим в то событие, которое необходимо отправить в Яндекс.Метрику, событие “Успешная регистрация”. В поле “Является конверсионным” устанавливаем переключатель в положение “Включен”:
После этого станут доступными дополнительные настройки:
В поле “Отправлять данные в Yandex Metrika” отражаются все подключенные к Андате аккаунты Яндекс.Директа, необходимо выбрать тот, у которого есть доступ к счетчику Яндекс.Метрика, в который хотите отправлять события. Поскольку у одного аккаунта Директа может быть доступ к нескольким счетчикам Метрики, рядом с названием цели отражается номер счетчика.

Поле “Отправлять данные в Yandex Metrika через backend” предназначено для отправки офлайн-конверсий, например, у вас уже настроена передача событий покупки из CRM-системы в Андату, включив данный переключатель, вы сможете отправлять события в Метрику без дополнительных настроек со стороны CRM. После включения передачи через backend, рядом с пользовательскими параметрами появятся чекбоксы, можно выбрать какие поля являются полями ценности или валюты:
Также для офлайн конверсий станет доступным поле для куки Яндекс Метрики, необходимо выбрать из списка то поле, в котором передается значение куки яндекса в CRM-событиях.
Далее в обоих случаях (и в случае передача обычных событий, и офлайн-конверсий) необходимо выбрать цель в Яндекс.Метрике. В большинстве случаев цель в тегах появляется сразу после создания в метрике. Однако если цель не появилась, можно подождать несколько минут либо перейти в раздел Data Hub и в настройках подключения Яндекс Директа обновить список целей.
Далее в самом теге выбираем необходимую цель для события и сохраняем тег.

После того, как во всех выбранных событиях настроили передачу в Метрику, нужно переопубликовать контейнер. При поступлении новых событий в Андата данные начнут передаваться в Яндекс.Метрику.

Помните! Яндекс Метрика отображает данные в отчетах с задержкой до 30 минут. Чтобы ускорить процесс проверки корректности передачи данных в Метрику, можно воспользоваться расширением для Google Chrome - Яндекс.Метрика Инспектор. Если все настроено корректно, то в расширении Яндекс.Метрика Инспектор при совершении тестируемого события на сайте отразиться Цель с названием и пользовательскими параметрами (если они настроены):

Проверка работы с помощью SnowPlow Debugger

Как протестировать отправку событий из Тег Менеджера Андаты

Проверить настройку тега можно с помощью расширения Snowplow Analytics Debugger для Google Chrome. После установки он появится в инструментах разработчика (F12 на клавиатуре или клик правой кнопкой мыши и в появившемся меню - Показать код):
Переходим в само расширение, обновляем страницу и должно появиться событие Pageview, значит расширение работает. Далее совершаем на сайте желаемое действие, например, клик по кнопке перехода в youtube, в Snowplow находим в первом столбце Event событие под названием "Self-Describing Event", кликаем на него, в правой части листаем до раздела Unstructured Event, там должно появиться событие click_youtube (или то название, которое дали в тег менеджере в самом теге Клик по кнопке youtube):
В случае с тегом с передаваемыми пользовательскими параметрами, например отправкой формы на сайте, в Snowplow в событии "Self-Describing Event" в разделе Unstructured Event, будет отражаться созданное событие и добавленные параметры:

Как передавать события в Андата через Google Tag Manager

Если на сайте имеется контейнер Google Tag Manager (далее GTM) с настроенными событиями, эти события можно передавать в коллектор данных Андата. Для этого мы будем использовать Andata Tag Manager (далее ATM).

Первым шагом определимся, какое событие будем передавать и какие дополнительные параметры мы хотим передать вместе с событием. К примеру, это отправка формы обратной связи с полем для ввода номера телефона. Переходим в GTM, в раздел Переменные, создаем новую переменную в блоке Пользовательские переменные. Если на сайте установлен код трекинга Андата, то значение для переменной возьмем из файла cookie. Указываем название переменной atm_ubtcuid , тип переменной — Собственный файл cookie, в поле название cookie указываем _ubtcuid:
Если на сайте код трекинга Андата не установлен, то значение для переменной укажем 'none':
Также передаем cookies яндекса и гугла. Обратите внимание, что для корректной работы должен быть передан как минимум один заполненный идентификатор, т.е. если код Андаты на сайте не установлен и передается значение "none", то кука Яндекса или Google или внутренний идентификатор посетителей необходимо передавать в обязательном порядке. Если никаких идентификаторов нет, то необходимо установить трекинг код Андата и передавать значения куки ubtcuid.
Добавляем переменную, тип переменной выбираем Собственный файл cookies. Имя переменной atm_ym_uid , тип переменной — Собственный файл cookies, в поле вводим _ym_uid:
Имя переменной atm_ga , тип переменной — Собственный файл cookies, в поле вводим - _ga:
Значение из поля формы можно забрать следующим кодом, также тип переменной выбираем Собственный код JavaScript, переменную называем tel_input:
function() {
try {
return document.querySelector("input[type=tel]").value.replace(/\D/ig,"");
} catch(e) {
return "unknown";
}
}
Аналогичным образом можно создавать переменные для передачи значений любых параметров.

Переходим в раздел Триггеры. Если в GTM триггеры по необходимым событиям уже созданы, то пропускаем следующий шаг.

Ознакомиться с настройкой триггеров Google Tag Manager можно в документации Google. В нашем примере формы обратной связи созданы в Тильде. Она отдает событие с уникальным именем при отправки формы, поэтому можно настроить триггер следующим образом:
Далее переходим в раздел Теги. Создаем новый тег, тип тега выбираем Пользовательский HTML. В поле для кода вводим следующий код JavaScript:
<script>
(function(){
var container_id = '111f1f-1e1e-1111-b111-11111ad11111';// id контейнера в АТМ
var event_ubtcuid = {{atm_ubtcuid}};
var event_source = 'GTM_event';
var event_datetime = new Date().toISOString();
var event_name = 'gtm_send_form_instant';
var event_data =
{"atm_ym_uid": {{atm_ym_uid}},
"atm_ga": {{atm_ga}},
"tel_input": {{tel_input}}
};

var data = "container_id="+container_id+"&event_ubtcuid="+event_ubtcuid+"&event_source="+event_source+"&event_datetime="+event_datetime+"&event_name="+event_name+"&event_data="+JSON.stringify(event_data);
 
var xhr = new XMLHttpRequest();
xhr.addEventListener("readystatechange", function () {
  if (this.readyState === 4) {
console.log(this.responseText);
  }
  else {console.log(data)}
});
xhr.open("POST", "https://mdeploy.andata.ru/api2.php?"+data);
xhr.send();

})();
</script>
Здесь container_id (обязательный параметр) — это id контейнера АТМ, по нему определяется схема валидации и имя индекса в Big-data. Он находится в личном кабинете Андата, в разделе Tag Manager во вкладке Обзор:
event_ubtcuid (обязательный параметр) — в фигурных скобках указали переменную, которую создали на первом шаге, это поле обязательно;

event_source (обязательный параметр) — название источника события, можно указать любое статическое значение;

event_datetime (обязательный параметр) — дата и время отправки события. В формате ISO 8601: YYYY-MM-DDTHH:MI:SSZ**.** Компонент времени в UTC0 (Zero offset);

event_name (обязательный параметр) — имя события;

event_data — объект, содержащий пользовательские поля конкретного события. В данном случае мы передаем поля с cookies Яндекса, Google и с номером телефона, важно в фигурных скобках указывать такие же имена переменных, которые были созданы на первом шаге.

После этого подцепляем к тегу триггер, созданный ранее, и сохраняем.
Таким же образом можно передавать и другие события, например, клики по кнопкам, просмотры важных страниц и т.д. Важно, чтобы для каждого события было свое имя события в поле event_name. После внесенных изменений не забудьте опубликовать контейнер GTM.

Далее переходим в личный кабинет Андата, в раздел Tag Manager. На этом этапе будем создавать валидационную схему для события из GTM.

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

Переменная ubtcuid — это идентификатор трекинга Андата, и поскольку поле c ubtcuid обязательное, его дополнительно создавать в АТМ не нужно.

В нашем примере создаем поля для переменных, указанных в объекте event_data, т.е. это atm_ym_uid, atm_ga, tel_input. Типы полей выбираем string:
Далее переходим в Теги и создаем новый. Даем понятное название, выбираем тип - AndataEvent, в поле Имя события добавляем то же самое имя события, которое указывали в коде GTM, в нашем случае — это gtm_send_form_instant. Важно, чтобы эти имена совпадали. Далее добавляем все три поля, активируем тег и сохраняем. В случае с событиями из GTM мы создаем схему, поэтому создавать и прикреплять триггер не нужно, так же как и добавлять переменные в пользовательские параметры.
Таким же образом создаем теги-схемы для других событий из GTM. Для каждого события должно быть свое имя, которое совпадает в теге GTM в поле event_nameи в теге АТМ в поле Имя события.

После этого публикуем контейнер.

В данном случае проверка через расширение Snowplow невозможна, поскольку данный способ подразумевает отправку событий по API, это значит, что код контейнера Андата на сайте может и отсутствовать. А расширение Snowplow Debugger трекает события контейнера Андата. Проверить корректность настройки можно через консоль разработчика. На сайте открываем панель разработчика,переходим в консоль. После этого совершаем отслеживаемое действие на сайте, в нашем примере, заполняем и отправляем форму обратной связи, при этом в консоли видим запись такого вида:

Здесь указаны все данные, что мы настроили в теге, проверяем, что корректно передаются параметры в event_data: cookie яндекса и google и номер телефона (персональные данные можно передавать в захэшированном виде). Также обращаем внимание на статус, он должен быть success, что означает успешную отправку.

Отслеживание событий JivoSite

Для отслеживания событий, которые вызывает виджет JivoSite, необходимо следовать следующим шагам:

1) Создаем тег с типом "Ретранслятор событий JivoSite" , в качестве триггера выбираем "pageView" (Просмотр всех страниц), чтобы Тег Менеджер смог подписаться на все события JivoSite.
2) Создаем триггер с типом "Пользовательское событие" , в поле “Название пользовательского события” указываем то название события, на которое хотим подписаться. К примеру, если мы хотим отследить загрузку jivoSite на сайте, мы можем подписаться на событие jivo_onLoadCallback. Все события и описания можно найти в документации JivoSite по ссылке.
3) Далее создаем тег, который будет выполнять необходимое действие. Триггером выбираем созданный на предыдущем шаге jivo_onLoadCallback. Тег будет выполнен, как только это событие произойдет. Типом тега можно выбрать, например, andataEvent, тогда событие будет отправляться в хранилище данных Andata.
Также можно выбрать это событие конверсионным и отправить параллельно в Яндекс Метрику (предварительно нужно создать цель в Яндекс Метрике с типом Java-Script событие и названием, совпадающим с название andataEvent) :
Если вы хотите направлять данные только в Яндекс Метрику, можно выбрать тип Пользовательский html-код и добавить код цели из Яндекс Метрики (необходимо обернуть этот код в тег <script> </script>):
После добавления всех необходимых событий, контейнер нужно опубликовать.