Skip to main content
This integration loads a Google Tag Manager (GTM) container on your 1Club public-facing surfaces - the member portal and the CMS website - without any code changes. An owner or admin pastes your container ID once and 1Club injects the GTM snippet on every page load. From there, whoever runs your marketing controls what fires from your GTM workspace (GA4, Meta Pixel, conversion pixels, custom tags, and so on).

When to use it

Use it when you want your own analytics and ad tags on the pages where members sign up, book, and pay. 1Club pushes standard events (page views, sign-up, login, booking, payment, form submit) to the dataLayer, so you can wire them to GA4 or any tag without a redeploy. Consent stays in your hands too: the container works with Google Consent Mode configured in GTM. Typical uses:
  • Measuring which ads produce bookings - forward the booking_created event to GA4 and the Meta Pixel, so booking conversions are attributed to campaign and surface.
  • Separating website leads from portal sign-ups - trigger on sign_up, remap form_submitted to GA4’s generate_lead, and split the reports with event_source.
  • Reporting portal purchases as revenue - forward payment_success to GA4’s purchase with transaction_id, value, and currency, so checkout revenue appears in GA4’s monetization reports.

Before you start

You need a GTM container ID in the format GTM-XXXXXXX. Find it on the workspace overview screen in tagmanager.google.com, next to your container name. If you want to use Google Analytics 4, configure the GA4 Configuration tag inside your GTM container. 1Club does not accept a standalone GA4 measurement ID - everything goes through GTM. Google Tag Manager is a paid-plan feature. On the Free plan and during the trial you can’t save a container ID until you upgrade. Saving the container ID requires the settings.manage.organization permission. Viewing it requires settings.read.organization.

Activate Google Tag Manager

  1. Go to Settings > Integrations and click Activate on the Google Tag Manager card, under Marketing. The Google Tag Manager page opens.
  2. Paste your container ID into GTM Container ID. Spaces are trimmed and letters are made uppercase. The ID must be GTM- followed by letters or digits.
  3. Click Save.
A “Google Tag Manager settings saved.” message confirms it, and Google Tag Manager moves to Active Integrations on the Integrations page. It becomes active only once a container ID is saved. The container ID is stored on your organization. The next page load on your member portal and CMS website includes the GTM snippet. No redeploy is required. To change the container, enter the new ID and click Save. If you clear the field and save, the snippet stops loading and Google Tag Manager returns to the available integrations.

Where the tag loads

1Club injects two things on every public page render:
  • The standard GTM script (https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXXX), loaded with Next.js afterInteractive strategy so it does not block first paint.
  • The noscript iframe fallback for visitors with JavaScript disabled.
Both the member portal ({org}.portal.1club.ai or your custom portal domain) and the CMS website (your branded site) read the container ID from your organization settings and load the same container.

What gets tracked

1Club only loads the container. What it tracks is entirely up to your GTM workspace. Typical setups include:
  • Page views on the marketing site and member portal.
  • Conversion events for sign-up, booking confirmation, purchase, or contact-form lead.
  • Custom dataLayer events you trigger from GTM tags.

Events pushed by 1Club

The member portal and CMS website push a small set of standard events to window.dataLayer automatically. Create a Custom Event trigger in GTM with the matching name and forward to GA4 (or any other tag). All non-page_view events also carry event_source so you can split GA4 reports by surface.

Suggested GA4 mapping

For drop-in GA4 coverage, map the events above to GA4’s recommended names where they line up, and pass them through as-is otherwise:
  • sign_up and login already match GA4’s recommended events - forward with Event Name {{Event}} and GA4 surfaces them in the standard user-engagement reports.
  • payment_success maps to GA4’s purchase if you also pass transaction_id, value, and currency. If you don’t have those yet, forward as payment_success and report on it as a custom event.
  • form_submitted is a good fit for GA4’s recommended generate_lead event. Either forward as form_submitted or remap to generate_lead in your GA4 Event tag - whichever you prefer for reporting.
The GTM snippet runs on every page load. If you operate under GDPR, ePrivacy, or similar regulations, configure consent in your GTM container using Google’s Consent Mode and gate marketing or analytics tags on the appropriate consent state. 1Club’s cookie banner records the visitor’s preferences but does not configure GTM tags for you.

Worked examples

Padel gym measuring booking conversions

A padel gym runs Google and Meta ads and wants to know which spend produces court bookings. Save the GTM container ID in 1Club, then in GTM create a Custom Event trigger on booking_created and forward it to a GA4 event and the Meta Pixel. Because 1Club pushes booking_created with booking_id and event_source automatically, the gym sees booking conversions attributed to campaign and surface without touching any code.

Yoga studio tracking free-trial sign-ups

A yoga studio’s goal is portal sign-ups from its website. In GTM, add a trigger on sign_up and remap form_submitted to GA4’s generate_lead for contact-form leads. The event_source parameter lets the studio split reports between website leads and portal sign-ups in GA4.

Gym reporting membership purchases as revenue

A fitness gym forwards payment_success to GA4’s purchase, adding transaction_id, value, and currency in the GA4 Event tag. Revenue from portal checkout then shows up in GA4’s monetization reports alongside the invoice_id 1Club already passes.

Tips and best practices

  • Keep all tags in GTM, not scattered across tools. 1Club only loads the container; everything else (GA4, pixels, remarketing) lives in your GTM workspace so you can change it without a code change.
  • Publish your GTM workspace after every change. 1Club loading the container does nothing until you publish the version that contains your tags and triggers.
  • Use the built-in event_source parameter to separate portal and website performance in the same GA4 property.
  • Test with Tag Assistant on both the portal and the CMS website after saving, since they load the same container independently.
  • If you operate under GDPR or ePrivacy, wire your marketing and analytics tags to Google Consent Mode in GTM before you start advertising.

Deactivate

  1. Click Deactivate at the top of the Google Tag Manager page.
  2. Confirm in the Deactivate Google Tag Manager? dialog. It warns that the integration stops working and its settings are deleted.
1Club removes the container ID and takes you back to Settings > Integrations. If the deactivation is refused, the reason shows inside the dialog. The GTM snippet stops loading on the next page load. Visitors who already have a page open keep the script until they navigate away or refresh.

Troubleshooting

  • Integrations - the full integration catalog and how activation works.
  • Website - the CMS website surface where the container loads.