Глоссарий

Триггер (Trigger)

Триггер (Trigger) в Google Tag Manager — набор условий, по которым GTM активирует привязанный к нему тег. Триггер определяет момент и контекст срабатывания: просмотр страницы, клик, отправка формы, скролл, пользовательское событие в dataLayer.

Триггер (Trigger) в Google Tag Manager (GTM) — это сущность, которая решает, когда именно должен сработать тег. Без триггера тег в GTM просто не запускается: маркетолог или аналитик создаёт условие («когда пользователь кликает по кнопке с классом .btn-buy», «когда загрузилась страница checkout», «когда в dataLayer появилось событие purchase»), а GTM постоянно мониторит события браузера и dataLayer. Как только условие выполняется — GTM активирует все теги, к которым этот триггер привязан, передав им контекст события. Вместе с тегами и переменными триггер формирует ядро GTM-модели: тег определяет что делать, триггер — когда, переменная — с какими данными.

Как устроен триггер

Технически триггер — это пара «тип события + набор фильтров». Пример:

Тип: Click - All Elements
Фильтр: Click Classes matches RegEx ^btn-cta$
       AND Page Path equals /pricing

Триггер срабатывает, когда наступает событие (клик по любому элементу) и оба фильтра истинны. Если хотя бы один фильтр false — тег не активируется. Кроме основных условий, у каждого тега есть отдельный раздел Exceptions (исключения) — триггеры-блокировщики, запрещающие запуск тега даже при активном основном триггере.

В Preview-режиме GTM показывает каждый триггер: сработал он или нет, какие условия выполнились, какие — нет. Это основной инструмент диагностики при настройке.

Основные типы триггеров

GTM делит триггеры на девять категорий. Чаще всего используются:

ТипКогда срабатываетПримеры применения
Page ViewБазовый просмотр страницыИнициализация GA4 Configuration Tag
DOM ReadyПосле парсинга DOMСкрипты, которым нужен доступ к элементам
Window LoadedПосле полной загрузки (изображения, скрипты)Тяжёлые пиксели, чтобы не замедлять LCP
Click - All ElementsКлик по любому элементуКлики по кнопкам, CTA, ссылкам
Click - Just LinksКлик только по <a>Outbound-ссылки, tel: и mailto:
Form SubmissionОтправка HTML-формыЛиды, регистрации
Element VisibilityЭлемент появился в видимой зонеВидимость CTA, лид-магнитов
Scroll DepthПользователь скроллит до %/pxГлубина чтения, scroll_depth_25/50/75/90
VideoСобытие YouTube-плеераvideo_start, video_progress, video_complete
TimerИнтервальный таймер«Active user after 30s»
Custom EventПроизвольное событие из dataLayerОсновной тип для SPA, e-commerce, CRM
History ChangeИзменение URL без перезагрузкиSPA-маршрутизация (React, Vue, Next.js)
JavaScript ErrorUnhandled error в window.onerrorМониторинг JS-ошибок

Помните: триггеры Form Submission и Click по умолчанию ловят все формы и клики, поэтому без фильтров тег сработает буквально везде. Всегда добавляйте условие (селектор, URL, класс).

Custom Event — главный триггер для сложных сайтов

Все триггеры, кроме Custom Event, работают с DOM-событиями браузера: click, submit, load, scroll. В SPA и e-commerce DOM может вообще не обновляться (React ре-рендерит элементы без перезагрузки), поэтому DOM-триггеры часто пропускают важные моменты. Решение — разработчик пушит в dataLayer кастомное событие:

dataLayer.push({
  event: 'add_to_cart',
  ecommerce: {
    currency: 'UAH',
    value: 999,
    items: [{ item_id: 'SKU-001', item_name: 'Курс GA4', quantity: 1 }]
  }
});

Триггер Custom Event с условием Event Name = add_to_cart ловит этот push и запускает GA4 Event Tag, который читает значения из dataLayer и отправляет в Google Analytics. Этот паттерн — фактический стандарт для любого современного проекта: DOM-триггеры остаются для простых случаев, Custom Event покрывает все более сложные.

Trigger Groups: когда нужно несколько условий подряд

Trigger Group — отдельный тип триггера, срабатывающий, когда все указанные триггеры уже сработали в течение одной сессии. Пример: «Пользователь посмотрел ≥3 страниц и проскроллил ≥75%» → тег «Engaged User» активируется один раз, когда оба условия выполнились. Это удобно для:

  • Пометки вовлечённых пользователей для Google Ads ремаркетинга.
  • Трекинга сложных воронок, где важен порядок действий.
  • Запуска дорогих пикселей только для «качественного» трафика.

Исключения (Trigger Exceptions)

Важный, но недооценённый механизм. Типичный пример: у вас GA4 Pageview на всех страницах, но не надо фиксировать просмотры в админ-панели. Вместо того чтобы усложнять основной триггер, в разделе Exceptions тега добавляете:

Trigger: Page View - Admin Pages
Condition: Page Path matches RegEx ^/admin

Этот триггер блокирует тег, когда URL содержит /admin. Исключения также полезны для:

  • Отключения трекинга для команды (по User Agent или cookie).
  • Блокировки тега для пользователей без согласия на аналитику (Consent Mode).
  • Исключения тестовых транзакций в development-среде.

Триггер vs тег vs событие

Три понятия, которые часто путают:

СущностьРольПример
Event (в GA4)Единица данных, попадающая в аналитикуpurchase, sign_up
Trigger (в GTM)Условие, по которому GTM запускает тегCustom Event purchase, Click на .buy-btn
Tag (в GTM)Код, отправляющий данные в системуGA4 Event Tag, отправляющий purchase в GA4

Простая ментальная цепочка: event в dataLayer → trigger в GTM ловит его → tag в GTM отправляет во внешнюю систему.

Типовые ошибки при настройке триггеров

  • Триггер без фильтров. Click - All Elements без условия срабатывает на каждый клик — GA4 забивается шумом.
  • RegEx без якорей. Условие Page Path matches RegEx checkout срабатывает на /pre-checkout и /checkout-faq. Правильно — ^/checkout.
  • Путаница между Built-in и Custom variables. Built-in Click Classes нужно включить в Variables → Configure, иначе фильтр никогда не выполнится.
  • Дубль между Page View и Window Loaded. Тот же тег с обоими триггерами — GA4 получает page_view дважды.
  • Form Submission без проверки валидации. Триггер срабатывает до валидации формы — регистрируются «лиды», которых на самом деле нет.

Стандартная проверка: после создания нового триггера открыть Preview в GTM, выполнить целевое действие на сайте и посмотреть, появился ли триггер в списке сработавших и активировались ли правильные теги. Если триггер показан как «Not Fired» — расширить список до «All triggers» и увидеть, какое именно условие не выполнилось.

Чтобы закрыть тему GTM полностью, стоит также разобраться с dataLayer — основным источником данных для триггеров, и с конверсиями и сессиями в GA4, куда обычно отправляются результаты работы тегов.

Связанные термины

Связанный контент