Import the Ready-Made GA4 Setup into Tag Manager

A downloadable set of GA4 tags for your site, imported in about ten minutes.


Instead of building GA4 tracking in Google Tag Manager by hand, you can import a ready-made set of tags that already understands your site's events. It takes about ten minutes, and you can see and change everything it adds.

Before you start

  • A Tag Manager container connected to your site. Its ID (it starts GTM-) goes in Settings → Analytics & Tracking.
  • A GA4 property with a web data stream for your site's address. You'll need the stream's Measurement ID, which starts G-. You'll find it in GA4 under Admin → Data streams.

What gets added

Everything arrives in a folder called SignalPage:

  • Google tag (GA4), which loads GA4 on every page.
  • page_view, one per page.
  • form_start and generate_lead: someone started a form, and someone sent one. Both include the form's name so you can tell forms apart.
  • social_click, gig_ticket_click (including which ticket seller the visitor went to), project_link_click and filter_projects for the clicks your site tracks.
  • A setting called GA4 Measurement ID that every tag reads, so you enter your ID once.

Every event also carries the page's type (home, blog_post, gig and so on), and during an A/B test, which version the visitor saw. So you can compare leads and clicks between the two versions directly.

The lead event deliberately sends no names, emails or phone numbers. Google's policies forbid personal information in GA4 event parameters. That data is for Google Ads enhanced conversions instead.

Importing it

  1. Download the SignalPage container file.
  2. In Tag Manager, open your container and go to Admin → Import Container.
  3. Choose the file. For the workspace, pick your existing workspace.
  4. Choose Merge, then Rename conflicting tags, triggers and variables. Merging adds to what you already have rather than replacing it.
  5. Confirm. Tag Manager shows a summary of what it's adding first.

Finishing the setup

  1. Under Variables, open GA4 Measurement ID, replace G-XXXXXXXXXX with your own ID, and save.
  2. If the container already had a GA4 Google tag from an earlier setup, pause or delete it. Otherwise GA4 loads twice and counts everything twice.
  3. In GA4, go to Admin → Data streams, open your stream and the Enhanced measurement settings, and turn off Form interactions. Your site already reports its forms more accurately, and leaving it on doubles form_start.
  4. Optionally, in the same place, turn off Outbound clicks. GA4 would otherwise log a generic click event alongside the named social, ticket and project clicks. Nothing breaks if you leave it on; it just adds clutter.

If you have visitors in the EEA or the UK, you also need a cookie consent banner that sets Google's Consent Mode before these tags run. The tags respect it automatically, but nothing in the container sets it for you.

Checking it works

  1. In Tag Manager, click Preview and enter your site's address. Your site opens in a new tab, with Tag Assistant connected.
  2. On the first page, Tag Assistant should list SignalPage - Google tag (GA4) and SignalPage - GA4 page_view as fired.
  3. Click into a form, then send it. You should see form_start and then generate_lead fire. Use a test message, and delete it from your inbox afterwards.
  4. When it all looks right, close Preview and click Submit, then Publish. Nothing reaches your visitors until you publish.

Counting leads in GA4

In GA4, open Admin → Key events and add a new key event named generate_lead. From then on, every successful form submission counts as a key event, and GA4's reports show which pages and traffic sources bring them in. If you sell tickets, add gig_ticket_click as a key event too.

Reporting on the extra details

GA4 collects every detail the tags send, but only shows the ones it knows about in reports. Form name, form ID, link URL and link text work straight away. Register the others under Admin → Custom definitions as event-scoped custom dimensions, using these parameter names:

  • page_type
  • content_id
  • ab_test and ab_variant
  • social_platform
  • gig_id and gig_title, if you list gigs
  • project_id and project_category, if you have projects

GA4 only shows them from the moment you register them; it doesn't fill in the past, so it's worth doing on day one.

If you rename a form's event

The lead tag fires on generate_lead, which is what every form uses unless you change it in the form's Enhanced conversions box. If you give a form a different event name, add that name to the trigger SignalPage - generate_lead, or that form's submissions won't reach GA4. Starting a form is always contact_form_start, whatever the form is for, so that trigger never needs changing.

The full list of events and fields is in Events Your Site Sends to Tag Manager.