Триггеры в Google Tag Manager

14 августа, 2018

Триггер (от анг. слова trigger в значении спусковой крючок, или приводящий в действие элемент) в GTM – это условие, при котором активируется или блокируется тег. Для запуска тега должен быть хотя бы один триггер.

Таким образом, нельзя создать тег без триггера. Триггер может принимать значение «true» (истина), либо «false» (ложь). Он выполняется только в том случае, когда его значение является истинным, и если выполняются все условия триггера.

А чтобы это определить (true или false), значение переменной сравнивается с тем, которое задано в триггере. Все триггеры в Google Tag Manager связаны с событиями. Также они могут иметь дополнительные условия или фильтры. В старой версии диспетчера тегов Google триггер назывался «правилом».

Существует два способа создания триггеров:

1. перейти на вкладку «Триггеры» и нажать на кнопку «Создать»;

Триггеры в Google Tag Manager

Создание триггера

2. через сам тег в блоке «Триггеры» по нажатию на «+» если в нем уже есть триггеры;

Триггеры в Google Tag Manager

Создание триггера

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

Триггеры в Google Tag Manager

Создание триггера

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

  • Просмотр страницы;
  • Клик;
  • Взаимодействие пользователей;
  • Другое;

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

Просмотр страницы

 

Триггеры «Просмотры страницы»

Триггеры «Просмотры страницы»

  • Модель DOM готова (DOM Ready) - передается gtm.dom событие, как только браузер загрузил объектную модель документа;
  • Окно загружено (Window Loaded) – передается gtm.load событие после завершения загрузки всей страницы, когда окно полностью загружено;
  • Просмотр страницы (Page View) – передается gtm.js событие, когда контейнер GTM готов к работе.

Google Tag Manager передает эти три события на уровень данных по умолчанию. Убедиться в этом можно перейдя в режим предварительного просмотра.

Триггеры в Google Tag Manager

Предварительный просмотр

Перейдя на сайт в режиме отладки, вы увидите:

Триггеры в Google Tag Manager

Режим отладки – три события

Выбрав событие, например, Window Loaded, и перейдя на вкладку «Variables» (Переменные), можно просмотреть зафиксированное пользовательское событие (переменная _event) и его значение (value – в нашем примере gtm.load):

Триггеры в Google Tag Manager

Пользовательское событие

или у переменной «Пользовательское событие»:

Триггеры в Google Tag Manager

Переменная «Пользовательское событие»

Клик

Тип триггера фиксирует клики по ссылкам или любым кликабельным элементам сайта.

Триггеры в Google Tag Manager

Триггеры «Клики»

  • Все элементы - передается gtm.click событие когда на странице щелкнут любой элемент;
  • Только ссылки – передается gtm.linkClick событие при нажатии на тег <a> элемента HTML.

Например, создадим триггер на «Все элементы» с условием активации триггера «Все клики».

Триггеры в Google Tag Manager

Тип триггера – Клик – Все элементы

В таком случае при каждом клике по любой области на странице в режиме предварительного просмотра GTM будет фиксировать событие gtm.click:

Триггеры в Google Tag Manager

Фиксация кликов в режиме отладки

То есть вне зависимости от того, куда пользователь кликнул (на кнопку, на фон, в пустую область на странице) – все события будут зафиксированы. Если же мы хотим отслеживать события только по определенным элементам, то вместо условия активации триггера «Все клики» выбираем «Некоторые клики»:

Триггеры в Google Tag Manager

Клики по определенным элементам

Нам станет доступна настройка активации триггера при наступлении события и выполнении всех условий, а именно:

  1. сначала задается переменная (на примере выше – Click Element);
  2. затем выбирается оператор из списка (равно, содержит, соответствует селектору CSS, регулярному выражению и т.д.);
  3. задается само значение (на изображении выше – CSS селектор одного элемента на сайте).

При необходимости можно задать несколько фильтров с помощью значка «+», либо же удалить ненужное с помощью «-».

Триггеры в Google Tag Manager

Добавление условий через +/-

Условия и фильтры связаны между собой логическим «И». То есть задав две строки, триггер будет срабатывать только тогда (событие будет считаться истинным и принимать значение true), когда одновременно соблюдаются первое И второе условия.

Триггеры в Google Tag Manager

Логическое «И»

В этом примере триггер сработает только тогда, когда пользователь кликнет по элементу с соответствующим селектором #features1 > div > ul > li:nthИ только на странице https://site.ru/catalog.

Важно: gtm.click - это предустановленные события GTM, они срабатывают при любом клике вне зависимости от того, был ли он осуществлен по некоторым элементам (при выборе такого) или же по всем элементам страницы. Главное, чтобы на нецелевых событиях не срабатывал тег, который активируется соответствующим триггером.

Триггеры в Google Tag Manager

Соблюдение условий активации триггера

Аналогичным образом настраиваются триггеры для «Только ссылки», а событие в режиме отладки будет называться gtm.linkClick:

Триггеры в Google Tag Manager

Событие gtm.linkClick

Однако данный тип триггера имеет дополнительные настройки. Такие же опции появляются при создании триггера «Отправка формы».

Триггеры в Google Tag Manager

Опции «Ждать теги» и «Проверка ошибок»

  • Ждать теги – опция блокирует действие (задержка открытия ссылок или отправки формы) до активации всех тегов в контейнере GTM, то есть пока все теги не загрузятся или пока не истечет указанное время ожидания (смотря что произойдет раньше), событие зафиксировано не будет. Задается в миллисекундах (2000 мс = 2 секунды);
  • Проверка ошибок – функция блокирует активацию тега, если для отслеживаемого элемента ссылки/формы не было выполнено действие по умолчанию («Клик по ссылке» или «Отправка формы»). Опция отвечает за то, на каких страницах нам необходимо использовать данный триггер.

Блок «Проверка ошибок» позволяет нам указать ГДЕ мы хотим использовать данный триггер, а блок с условиями активации определяет КОГДА этому быть. В качестве примера давайте разберем условие клика по ссылке (элемент – кнопка) со значением CSS-селектора и зададим «Проверка ошибок» на главной странице сайта.

Триггеры в Google Tag Manager

КОГДА и ГДЕ

В режиме предварительного просмотра при клике на данную кнопку зафиксируется событие gtm.linkClick:

Триггеры в Google Tag Manager

Событие gtm.linkClick

Но если мы поменяем условие проверки ошибок, например, на такое:

Триггеры в Google Tag Manager

Пример условия проверки ошибок

То события gtm.linkClick фиксироваться не будут, поскольку не соблюдено условие ГДЕ. До обновления Google Tag Manager «Проверка ошибок» и условие активации назывались «Условия включения» и «Условия активации». Рядовой пользователь мог легко запутаться в данной терминологии.

Для триггера типа «Отправка формы» распространенным условием активации функции «Проверка ошибок» является указание только тех страниц, на которых есть формы.

Триггер можно использовать со специально встроенными переменными: Click Element, Click Classes, Click ID, Click Target, Click URL, Click Text.

Взаимодействие пользователей

Триггеры в Google Tag Manager

Триггеры «Взаимодействие пользователей»

  • Видео YouTube – срабатывает событие gtm.video когда пользователь просматривает видео на сайте (пока доступен только сервис-поставщик YouTube);
  • Глубина прокрутки – срабатывает событие gtm.scrollDepth в том случае, когда пользователь прокручивает страницу (как горизонтально, так и вертикально);
  • Доступность элемента - срабатывает событие gtm.elementVisibility когда элемент становится видимым на странице;
  • Отправка формы – срабатывает тег gtm.formSubmit в случае, если форма была отправлена.

Видео YouTube

Триггеры в Google Tag Manager

Пример настройки триггера «Видео YouTube»

Тоже самое, что было описано в разделе «Переменные»:

  • Начало (Start) – пользователь начинает просмотр видео;
  • Завершение (Complete) – пользователь достигает конца видео;
  • Приостановка (пауза), перемотка, буферизация (Pause, Seeking, Buffering) – пользователь останавливает, перематывает видео или когда происходит буферизация;
  • Ход просмотра (Progress) – пользователь проходит процентный или временный порог (время измеряется в секундах). Целые положительные числа указываются через запятую.
  • «Включить поддержку JavaScript API для всех видео YouTube»

Установив этот флажок, вы включите YouTube iFrame Player API. В результате ко всем URL видеопроигрывателя YouTube будет добавлен параметр enablejsapi = 1 для управления проигрывателем через iframe или JavaScript.

Как правило, данный триггер используется в связке со встроенными переменными из блока «Видео»: Video Provider, Video Status, Video URL, Video Title, Video Duration, Video Current Time, Video Percent, Video Visible.

Глубина прокрутки

Триггеры в Google Tag Manager

Триггер «Глубина прокрутки»

  • Глубина вертикальной прокрутки в процентах – 10, 25, 50, 75, 90 (пример);
  • Глубина горизонтальной прокрутки в пикселях – 100 (пример);
  • Условия активации триггера – Все страницы.

Как правило, данный триггер используется в связке со встроенными переменными из блока «Прокрутка»: Scroll Depth Threshold, Scroll Depth Units, Scroll Direction.

Доступность элемента

Триггеры в Google Tag Manager

Триггер «Доступность элемента»

Доступны следующие настройки:

Метод выбора:

  • Идентификатор (id);
Триггеры в Google Tag Manager

Метод выбора - id

В большинстве случаев название атрибута id на странице уникальное.

  • Селектор CSS
Триггеры в Google Tag Manager

Метод выбора – Селектор CSS

Применяется, если у отслеживаемого элемента нет атрибута id, а также если нам нужно отследить несколько элементов.

Например, у нас на сайте есть несколько форм отправки. У каждой из них есть свой уникальный id. Отслеживание всех форм через «Идентификатор» нам бы не подошло. А вот привязать метод выбора через «Селектор CSS» элементов вполне можно.

Совет: если не знаете, за что зацепиться, а нужно прослушивать конкретный элемент – цепляйтесь за его CSS-селектор. Получить его легко можно через консоль разработчика (в браузере Google Chrome вызывается через клавишу F12, см. скриншот выше).

Правило запуска этого триггера

Триггеры в Google Tag Manager

Правило запуска триггера

  • Один раз на страницу — если несколько элементов на странице сопоставляются идентификатором или CSS-селектором, этот триггер запускается только один раз, когда первый из них отображается на этой странице.

При перезагрузке страницы триггер сработает повторно;

  • Один раз на элемент — если несколько элементов на странице сопоставляются CSS-селектором, этот триггер будет запускаться когда каждый из них будет видимым на этой странице в первый раз. Если несколько элементов на странице имеют одинаковый идентификатор, только первый согласованный элемент будет запускать этот триггер;

Если на странице несколько форм, по которым по заполнения информации всплывает одно и то же сообщение, используйте эту настройку.

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

Минимальный процент видимости – какой процент выбранного элемента должен быть виден на экране для срабатывания триггера. Можно использовать собственную переменные.

Триггеры в Google Tag Manager

Минимальный процент видимости

Укажите минимальное время видимости – как долго выбранный элемент должен быть виден на экране для срабатывания триггера. Время периодов видимости на одной странице суммируется. Например, если элемент был виден в течение 4000 мс (4 секунд), затем скрыт из видимости окна браузера и после этого снова виден в течение 2000 мс, то общее время видимости этого элемента составит 6 000 мс.

Триггеры в Google Tag Manager

Минимальное время видимости

Если галочку не ставить, то время видимости для срабатывания триггера не будет играть роли.

Регистрация изменений DOM - настройка отслеживает элементы, которых изначально нет на странице, которые подгружены динамически и могут не входить в DOM (Объектная Модель Документа). Например, всплывающие формы. Если у вас есть на сайте есть такой контент, поставьте галочку, и такие элементы будут регистрироваться.

Триггеры в Google Tag Manager

Регистрация изменений DOM

Отправка формы

Триггеры в Google Tag Manager

Триггер «Отправка формы»

Триггер аналогичен настройкам другого триггера «Клик – Только ссылки». Можно использовать со специально встроенными переменными: Form Element, Form Classes, Form Target, Form URL, Form Text.

Другое

Триггеры в Google Tag Manager

Триггеры «Другое»

  • Изменение в истории - срабатывает событие gtm.historyChange если изменился фрагмент URL (хэш, #). Как правило, используется на сайтах, контент которых подгружается динамически, без перезагрузки страниц;

В GTM можно использовать со встроенными переменными: New History Fragment, Old History Fragment, New History State, Old History State, History Source.

  • Ошибка JavaScript – срабатывает событие pageError если происходит неперехваченное исключение JavaScript (window.onError);

В случае, если в JavaScript мы используем конструкцию «try..catch», то GTM не зафиксирует ошибку. Также триггер не будет сигнализировать об ошибках, которые произошли до загрузки кода Диспетчера тегов. Можно использовать со встроенными переменными Google Tag Manager: Error Message, Error URL, Error Line, Debug Mode.

  • Пользовательское событие – срабатывает событие event, которое отправили с помощью конструкции push({'event': 'event_name'});

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

Допустим мы хотим отправлять событие на уровень данных (dataLayer) при нажатии кнопки «Отправить заявку». Для этого добавим код: dataLayer.push({'event': ‘button1-click’})

Триггеры в Google Tag Manager

dataLayer.push({'event': ‘button1-click’})

где button1-click – название пользовательского события;

Далее необходимо создать тег, а в настройках триггера «Пользовательское событие» задать название button1-click и условие активации – «Все специальные события». При необходимости можно использовать регулярные выражения.

Триггеры в Google Tag Manager

Пользовательское событие button1-click

Когда пользователь нажмет кнопку, на уровень данных будет отправлено пользовательское событие со значением button1-click. Затем GTM определит button1-click как значение пользовательского события и активирует тег.

Триггеры в Google Tag Manager

Событие button1-click

В dataLayer.push() можно добавить не только одну переменную вида «ключ=значение», но и целый массив. А чтобы посмотреть порядок в котором события передаются на уровень данных, откройте консоль JavaScript в веб-браузере и введите dataLayer:

Триггеры в Google Tag Manager

Console - dataLayer

  • start – запуск контейнера GTM;
  • dom – модель DOM готова;
  • load – окно загружено;
  • linkClick – открытие формы;
  • button1-click – клик по кнопке.

Таймер

Событие gtm.timer срабатывает через заданный интервал времени (в миллисекундах).

Доступны следующие настройки:

Триггеры в Google Tag Manager

Триггер «Таймер»

  • Имя события (по умолчанию gtm.timer) – можем изменить на любое другое. Например, timer2018;
  • Интервал - время, через которое должно активироваться событие. Например, через 2,5 секунды;
  • Ограничение - максимальное число активаций события. Например, 1. Если оставить это поле пустым, событие будет активироваться до тех пор, пока пользователь не покинет страницу.

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

Так выглядит уровень данных события gtm.timer:

Триггеры в Google Tag Manager

gtm.timer в Data Layer

Триггеры в Google Tag Manager делятся на триггеры активации тегов и триггеры блокировки тегов.

Триггер активации — это условие, при выполнении которого срабатывает тег.

Например, вы хотите отслеживать клики по определенной кнопке на сайте. Зная значения переменной, вы можете настроить триггер активации, например, по Click ID:

Триггеры в Google Tag Manager

Пример условия активации триггера

Таким образом, тег активируется только в том случае, когда идентификатор HTML-тега равен menu-item-4306.

Триггеры активации делятся на:

  • встроенные триггеры – доступны к использованию готовые шаблоны;
  • пользовательские триггеры – ручная самостоятельная настройка.

Триггер блокировки — это условие, при выполнении которого активация тега блокируется.

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

Триггеры в Google Tag Manager

Триггер блокировки или исключения

При конфликте триггеров активации и блокировки, приоритет отдается блокиратору. Добавить триггер блокировки можно с помощью кнопки «Добавить исключение» в настройках тега.

Триггеры в Google Tag Manager

Добавить исключение

В Google Tag Manager существует триггер, который добавлен по умолчанию и который нельзя удалить. Это All Pages (Просмотр страницы).

Также как и переменные, триггеры в GTM можно копировать, удалять, просматривать изменения, и у них можно вывести примечания. Для этого в правом верхнем углу нажмите на значок «три точки».

Триггеры в Google Tag Manager

Действия над триггерами

В «Просмотреть изменения» можно узнать, что конкретно было изменено в переменной по сравнению с предыдущей версией, а в «Показать примечания» есть возможность заносить какие-то пометки, добавить описание по функциональности и т.д.

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

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

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

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