GTM·Google Tag Manager·warning

DataLayer Variable Dependencies

Tag parameters in this container reference variables using `{{Variable Name}}` syntax, but the named variables do not exist in the container's User-Defined Variables. At runtime, GTM resolves these placeholders to empty strings, so the tags fire with missing data. Currency, transaction ID, user identifiers, or whatever the unresolved variable was supposed to carry.

CL
By Christopher LandaverdeCreator of AdLint · ad-tech tracking specialistUpdated

Why It Matters

GTM's variable resolution is permissive: a tag can reference `{{DLV - ecommerce.value}}` even if no such variable exists. At runtime, GTM logs nothing and substitutes an empty string. The tag fires, looks healthy in Tag Assistant, but the field it was supposed to carry is empty. This is one of the highest-frequency causes of "the tracking is in place but reports are wrong" tickets. Common root causes: a variable was deleted but tag references were not updated; a tag was copy-pasted from another container with different variable names; a typo in the variable name (case-sensitive); or a variable that exists in a parent workspace but not in the current one.

How To Fix It

  1. Open the affected tag in GTM and list every `{{...}}` placeholder in the configuration.
  2. For each placeholder, search Workspace → Variables → User-Defined Variables for an exact case-sensitive match.
  3. Create any missing variables. Usually Data Layer Variables. With the correct Data Layer Variable Name and Version.
  4. If a referenced variable is truly no longer needed, edit the tag to remove the placeholder.
  5. In Preview mode, fire the tag and verify every parameter shows a resolved value (not an empty string). Publish after verification.

Example

Configuration
Tag references: {{DLV - customer.email}}
Workspace variable: missing (typo: {{DLV - customer.Email}})
Fix: create DLV - customer.email with Data Layer Variable Name = customer.email
For Your Client Report

Tag parameters in this container referencing Data Layer Variables that do not exist as User-Defined Variables. Google's GTM variable resolution behaviour, unresolved variable references evaluate to empty strings at runtime. The tag fires but the field is empty. This is a high-frequency cause of silent measurement degradation. Fix: audit each flagged tag, create the missing variables with correct Data Layer Variable Names and Versions, and verify resolution in Preview mode. Source: support.google.com/tagmanager/answer/6164391.

Drop this paragraph into your client deliverable. Sources back to the canonical platform documentation linked below.

References

Audit your own files for this check

AdLint runs this check (and 177 others) against your GTM, Google Ads, Meta, TikTok, LinkedIn, Pinterest, Twitter/X, and Snapchat exports. Everything stays in your browser. No uploads, no accounts.

Run a free audit