YOUR INTEGRATION

GTM integration points

This site loads Google Tag Manager globally and pushes page, product, cart, profile, authentication, and purchase signals into the GTM data layer.

Global install

Container and base page context

GTM loads from data/global-head.html with container GTM-TH2S88TX, plus the noscript fallback in data/global-body.html. On page load, public/global.js pushes zeta_id, zeta_type, zeta_url, zeta_cat_1, and zeta_cat_2.
Product context

Product and category variables

Product pages set window.z_prd_id, window.z_prd_title, window.z_cat_1, and window.z_cat_2 before the global data-layer push runs. Zeta product pages also emit bt:id and bt:type=product meta tags.
Cart

z_updated_cart

Fired when a shopper adds, removes, or changes cart quantity. The payload includes zeta_cart with the current cart snapshot.
Checkout

z_purchased

Fired after checkout succeeds and the latest purchase is fetched from /api/purchase/latest. The payload includes purchase/cart data.
Profile

z_updated_profile

Fired after a profile update succeeds. The integration clears zeta_user_profile first so stale nested values do not remain in GTM.
Authentication

Signup, login, and logout events

Signup pushes z_signed_up with zeta_user_id and zeta_user_email. Login pushes z_logged_in with the same identifiers. Logout pushes z_logged_out.
What can change

Common GTM edits

You can change trigger conditions, event names, downstream vendor tags, variable mappings, cart/profile payload handling, and which pages/products send category or product context.