Skip to content

Guide 103 · Container · GA4 + Tag Manager

Enable the built-in variables: the click, page and form values your triggers already use

Checked 11 November 2026 · Verification: container fragment validated structurally (6 checks, all passed) · Steps traced to Tag Manager Help, opened 11 November 2026 · 5-minute read

Every trigger filter compares a value, and most of those values come from built-in variables — Click Text, Page URL, Form ID, Scroll Depth Threshold. The catch is that built-ins are switched off until you enable them. Google's built-in variables page lists them by group — Clicks, Errors, Forms, History, Pages, Scroll Depth, Utilities, Videos and Visibility — and each one reads a key the container already puts in the data layer, such as gtm.elementText for Click Text. A trigger that filters on a built-in you never enabled compares against nothing and never matches. This guide enables the eight the later guides in this section depend on.

Expected signal

After step 2, the User-Defined Variables list is unchanged, but the Built-In Variables list shows the eight as enabled, and the variable picker in a trigger now offers Click Text, Click ID, Page URL and the rest by name.

Download the container fragment: the built-in variables fragment (JSON) (export format version 2, 1252 bytes, MD5 0b834cf14c91bd746434fa5195051e2d). It holds the 8 enabled built-ins from the worked example — the six Click variables plus Page URL and Page Path. The file is a hand-built import template, validated structurally — it was not exported from a live container.

What you need

  • A container with a trigger to build. Enabling is pointless without a use — the worked example enables the variables the click, form and scroll guides in this section filter on.
  • Edit access to the container. Enabling a built-in is a container edit.
  • The list of variables your triggers need. Write it down first: every filter value in a trigger has to be an enabled built-in or a user-defined variable.

The trace

  1. Open Variables in the left navigation. The Variables page has two sections: Built-In Variables at the top and User-Defined Variables below. Built-ins are the ones Google ships with the container; user-defined ones are the ones you create.
  2. Click Configure and check the eight in the worked example. Configure opens the full built-in list. Check the six Click variables — Click Element, Click Classes, Click ID, Click Target, Click URL and Click Text — plus Page URL and Page Path. That is 6 + 2 = 8 enabled built-ins. Each one maps to a data layer key: Click Text reads gtm.elementText, Page URL reads the current page address, Page Path reads the path part of it.
  3. Check the names in the variable picker. Open any trigger and start a filter: the picker now lists the enabled built-ins as {{Click Text}}, {{Page URL}} and so on. A built-in that is not enabled does not appear in the picker at all.
  4. Use them in filters, not in tags. Built-ins are values for trigger filters and for tag fields that take a variable. Click Text belongs in a click trigger's filter — it says which element was clicked — and Page Path belongs in a page filter that limits a tag to one section of the site.

Dead ends

DEAD END — FILTERING ON A BUILT-IN THAT IS STILL OFF. A click trigger that filters on Click Text equals Add to cart never fires if Click Text was never enabled, because the variable has no value to compare. The trigger is correct and the tag is correct; the variable was never switched on.

DEAD END — ENABLING EVERYTHING JUST IN CASE. The full built-in list is long, and every enabled variable appears in the picker. Enabling all of them clutters the list the next person has to search, and adds variables nobody references. Enable the set your triggers actually filter on.

DEAD END — READING A CLICK VALUE BEFORE A CLICK. Click Text is empty until a click happens. A Page View trigger that filters on Click Text compares against an empty value on every page load and never matches — the variable only holds a value after its event.

End state

Eight built-in variables enabled, all of them referenced by the triggers in the click, form and scroll guides that follow. Built-ins cannot be edited or deleted, only enabled or disabled, so the set can be trimmed later without breaking anything that references a variable you keep.

Sources

Checked 11 November 2026. The click paths above are the ones in Google's help pages, opened 11 November 2026. No step in this guide was run inside a live Analytics property or a live Tag Manager container, because both need a Google sign-in and this site does not sign in as anyone. The container file was validated structurally instead: export format version 2, every tag's firing trigger resolves, every variable the tags reference exists in the file, and the tag types are the documented ones. Google moves menu items without warning; if a path on this page no longer matches, the linked help page is the current map. The container fragment for this guide is 1252 bytes (1.22 KB, 0.61% of the reported 200 KB container size limit), MD5 0b834cf14c91bd746434fa5195051e2d, and passed 6 structural checks.