Blog

Track newsletter signups across destinations from sGTM

One signup event, fan-out to GA4, Meta, your CRM, and your warehouse, with consistent dedup and consent.

A newsletter signup is one of the cleanest events to test a fan-out pattern on: low frequency, high value, easy to verify in each destination. Once it works for newsletter signups, the same pattern scales to every other event type.

The capture

When the user submits the newsletter form, the page pushes one event into the data layer:

dataLayer.push({
  event: 'newsletter_signup',
  event_id: crypto.randomUUID(),
  user_data: { email_address: emailInput.value },
  source: 'footer_form'
});

The forward

In your client GTM, a single tag fires on this event and forwards to your tagging server. No fan-out happens client-side. The server container does all of it.

The fan-out in sGTM

In your server container, four tags fire on the same event:

DestinationConfiguration
GA4Event name: newsletter_signup. Mark as conversion in GA4 admin.
Meta CAPIEvent name: Lead. Hashed email as user_data.em.
Klaviyo / your CRMWebhook to subscribe endpoint with email as parameter.
WarehouseWebhook to your BigQuery streaming insert.

Consent gating

If the user has not granted marketing consent, the Meta tag should not fire. Use a Custom Variable that returns the consent state and add it as an exception trigger on the marketing-related tags.

GA4 (with consent mode signals) and your warehouse can usually fire regardless. The CRM signup is implicit consent for transactional emails (the user just submitted a form to receive emails) and can fire as well, but only the transactional CRM event, not the marketing-list one.

Verify each destination

After firing a real signup, check each destination separately:

  • GA4 Realtime: event newsletter_signup with user_data attached.
  • Meta Events Manager: Lead event with hashed email.
  • CRM dashboard: new contact added with the right tags.
  • BigQuery: row appears within streaming-insert latency (a few seconds).

If any one fails, you know exactly which tag to look at. The fan-out pattern keeps blast radius small for any single destination's bugs.