What we check
Checks whether window.dataLayer is initialised and populated via push().
Why it matters
Without a dataLayer, tracking tools scrape values from the DOM, fragile and inconsistent.
Common causes
- GTM was installed without a dataLayer concept, all triggers hang on click selectors instead of events.
- The dataLayer gets initialised after the GTM snippet and overwrites the events already collected.
- The shop system ships its own dataLayer under a different name, GTM listens to the standard one.
- Events are only pushed on some templates, checkout or forms stay silent.