Google Tag Manager on Order Forms
Add your Google Tag Manager container to Spatiko order forms — which booking events hit the dataLayer and how Consent Mode v2 gates your tags.
Last updated
If you run ads or want analytics on your booking pages, connect Google Tag Manager. Spatiko loads your GTM container on your public order forms and pushes standardized booking events to the dataLayer — you install whatever tags you need (GA4, Meta pixel, Google Ads conversions) inside GTM, without touching any code.
This is the lightest integration Spatiko has: no OAuth, no token. You paste in one ID.
Setting it up
- In Google Tag Manager, copy your container ID — it sits at the top of your container and looks like
GTM-XXXXXXX. - In Spatiko, go to Settings → Integrations, find Google Tag Manager under Analytics & Marketing, and paste the ID.
- Click Connect.
From then on, the container loads on your public booking pages: your storefront (the page listing your order forms), every order form, and the booking confirmation page. It doesn’t load inside the Spatiko app itself — only on pages your clients see.
Connecting requires a paid-plan feature (Marketing Pixels), the same one that gates HubSpot. See pricing for what’s included.
Events Spatiko pushes to the dataLayer
With a container connected, Spatiko pushes these events as visitors move through booking:
| Event | When it fires | What’s in it |
|---|---|---|
page_view | An order form, your storefront, or the confirmation page is opened | page_type (booking_form, storefront, or booking_success), plus the form slug on form and confirmation pages |
select_item | A visitor picks an order form on your storefront | The form slug |
begin_checkout | A visitor reaches the review step | currency, value, items_count |
generate_lead | A visitor submits a quote request | lead_type: quote_request |
purchase | A booking completes (confirmation page) | transaction_id, currency, value, the line items, and the client’s email and phone as SHA-256 hashes (em_sha256, ph_sha256) for advanced matching |
That’s enough to build a full booking funnel in GA4, or wire purchase to an ad platform’s conversion tag. The hashed email and phone let platforms like Meta and Google Ads do advanced matching without Spatiko ever exposing the raw values to your tags.
Consent Mode v2 and the cookie banner
Spatiko sets Google Consent Mode v2 defaults before your container loads, based on where the visitor is:
- EU/EEA, UK, Switzerland — and most of the world: consent defaults to denied and a blocking cookie banner appears. Tags that respect Consent Mode stay quiet until the visitor accepts analytics or marketing cookies. A visitor with Global Privacy Control enabled always gets this strictest treatment, wherever they are.
- United States: opt-out model — no blocking banner, consent granted by default, with a “Your Privacy Choices” link in the footer to withdraw.
- Australia and New Zealand: notice-only — granted by default, with a discreet manage link.
When a visitor changes their choice, Spatiko pushes a consent update to GTM immediately: the analytics category controls analytics_storage, and the marketing category controls ad_storage, ad_user_data, and ad_personalization.
Two things stay your responsibility:
- Configure your tags to respect consent. Consent Mode only works if the tags in your container honor it — Google’s own tags do by default; check anything custom.
- Add your privacy policy under Settings → Legal. Spatiko links it on the cookie consent banner your visitors see.
GTM or HubSpot lead capture?
They solve different problems and can run side by side. GTM is the general-purpose option: any pixel, any analytics tool, driven by the events above. HubSpot’s lead capture is narrower — it creates leads in your CRM with source attribution. If you just want to know where bookings come from and retarget visitors, GTM alone is usually enough.
Disconnecting
Disconnect from the same settings modal. Your container stops loading on your booking pages and no further events are pushed. Nothing in your GTM account is touched — the container, tags, and collected data all live on Google’s side.