AttriModel
BlogGoogle Tag Manager Triggers: The Complete Guide
GTM8 min read·June 10, 2026

Google Tag Manager Triggers: The Complete Guide

Triggers control when your GTM tags fire. Understanding all trigger types — and their edge cases — is the key to reliable tracking.

A

AttriModel Team

AttriModel Team

What Is a GTM Trigger?

A trigger is a condition that determines when a tag fires. Without a trigger, a tag never executes. Every GTM tag needs at least one trigger — even your GA4 base tag fires on the "All Pages" trigger (a Page View trigger that matches any page).

The 7 Trigger Types

1. Page View

Fires when the page DOM loads. Use this for: analytics base tags, pixel base codes.

Options:

  • Page View: fires when GTM loads (earliest, before DOM is ready)
  • DOM Ready: fires when HTML is parsed
  • Window Loaded: fires after all resources (images, scripts) load

2. Click

Fires when an element is clicked.

  • All Elements: fires on any click anywhere
  • Just Links: fires only when an anchor tag is clicked

Use variables like Click URL, Click Classes, Click Text to filter which clicks trigger the tag.

3. Form Submission

Fires when a form is submitted. Works with native HTML forms. For AJAX forms, you need a custom event trigger instead.

4. Custom Event

Fires when a specific event name is pushed to the dataLayer. This is the most important trigger type for advanced tracking.

`javascript

// This push fires any Custom Event trigger matching "video_play"

window.dataLayer.push({'event': 'video_play', 'video_title': 'Product Demo'});

`

5. Element Visibility

Fires when a specified element enters the viewport. Use for: scroll depth tracking, lazy-loaded content, above-the-fold impression tracking.

6. Timer

Fires on a time interval. Use sparingly — fires regardless of user activity.

7. Scroll Depth

Built-in trigger for tracking how far users scroll. Configure by percentage or pixel depth.

Trigger Filters: The Power Move

Every trigger supports condition filters. Instead of creating separate triggers for 10 pages, use one Page View trigger with a condition:

  • Page Path contains /blog/ → fires on all blog pages
  • Page URL matches RegEx: /checkout|cart/ → fires on checkout and cart

Common Mistakes

Firing on all pages when you meant one page: Always filter your triggers. An accidental "All Pages" trigger on a conversion tag will inflate your conversion data.

Using Page View instead of DOM Ready: If your tag reads DOM elements, the element may not exist yet at Page View time. Use DOM Ready.

Missing AJAX form submissions: Native form triggers miss many modern forms. Test with GTM Preview and add custom event tracking if needed.

GTMTriggersTagsAnalytics