You can now connect Google Tag Manager to your 17hats Lead Capture Forms and Online Scheduling Services. Tag Manager gives you a flexible, central place to manage your tracking and send the actions happening on your forms and scheduling pages to the tools you already use.
This article explains what Google Tag Manager is, how it's different from sending data straight to Google Analytics, how to add your Tag Manager Container ID inside 17hats, and what events 17hats sends so you can put them to work.
Please note: This article covers how 17hats connects to Google Tag Manager and what data we send. It is not a guide to using Google Tag Manager itself, and it won't teach you the full functionality of the tool. Google also updates Tag Manager and Google Analytics frequently, so the exact steps, screens, and button names may differ from what's described here. For help with Tag Manager features, always refer to Google's own documentation.
What is Google Tag Manager?
Google Tag Manager (GTM) is a free tool from Google that lets you manage all of your website's tracking codes (called tags) from one place. Instead of adding a separate snippet of code for every tool you use (Google Analytics, the Meta Pixel, Google Ads conversion tracking, and so on), you install a single Tag Manager container and control everything from the Tag Manager dashboard.
A few terms that are helpful to know:
Term | What it means |
Container | The single piece of Tag Manager code that holds all of your tags. It has an ID that looks like GTM-XXXXXXX. |
Tag | A piece of tracking code that does something, such as sending an event to Google Analytics or firing a Meta conversion. |
Trigger | The rule that tells a tag when to fire, such as "when a lead submits the form." |
Variable | A piece of information you can use, such as a lead's name or the name of a scheduling service. |
Data Layer | A behind-the-scenes list where information about what's happening on the page is stored. This is how 17hats hands event information to Tag Manager. |
The advantage of Tag Manager is flexibility. Once your container is in place, you can add, change, or remove tracking yourself from the Tag Manager dashboard, without needing to touch code or send anything back to 17hats.
The Difference Between Google Analytics (GA4) and Google Tag Manager
When you add tracking to a Lead Capture Form or Online Scheduling Service, 17hats now lets you choose between Google Analytics Tracking (GA4) and Google Tag Manager. Both options track the same actions on your forms and scheduling pages. The difference is how the data is delivered and how much control you have.
Choose Google Analytics (GA4) if:
You mainly want your form and scheduling activity to show up in Google Analytics.
You want the simplest possible setup. Once you add your Measurement ID, data flows automatically.
If GA4 is the better fit for you, see Google Analytics for 17hats Online Scheduling and Lead Capture Forms for setup instructions.
Choose Google Tag Manager if:
You already use Tag Manager on your website.
You want to send the same actions to more than one platform at once (for example, Google Analytics and the Meta Pixel and Google Ads).
You want full control to add or change tracking yourself over time.
The trade-off: Tag Manager is more powerful, but it requires a one-time setup inside Tag Manager before any data is sent anywhere. The next section explains why.
How Google Tag Manager Works with 17hats
This is the most important thing to understand before you choose Tag Manager.
When you choose Google Analytics (GA4), 17hats sends your data straight into your Google Analytics property automatically. There's nothing else to build.
When you choose Google Tag Manager, 17hats places your container on your form or scheduling page and pushes event information into the data layer. Tag Manager will not do anything with that information until you build the tags and triggers to use it.
A helpful way to think about it: 17hats delivers the ingredients to the data layer; you decide the recipe inside Tag Manager. If you add your Container ID and stop there, you will see the 17hats events arrive in Tag Manager's preview tools, but nothing will reach Google Analytics or any other platform until you set up tags. We'll walk through that setup below.
Add Your Google Tag Manager Container ID
Open the Lead Capture Form or Online Scheduling Service you'd like to track. Find the Tracking Keys section, choose Google Tag Manager from the dropdown, and enter your Container ID.
Finding your Container ID: Sign in to Google Tag Manager at tagmanager.google.com. Your Container ID appears at the top of the workspace and looks like GTM-XXXXXXX. Enter that full ID, including the GTM- prefix.
Lead Capture Form: Select Google Tag Manager, enter your Container ID, and save the form. That's all that's needed on the 17hats side.
Online Scheduling: Select Google Tag Manager and enter your Container ID. You'll then be prompted to choose one of three event types, which tells 17hats which event to send when a booking is made:
Lead: Use when the service is associated with new leads, such as a consult.
Schedule: Use when the service is associated with current clients.
Purchase: Use when a lead or client is purchasing a service with you.
Once you've selected the event type, save your service.
Events Sent By 17hats
17hats pushes the same actions to the data layer whether you use GA4 or Tag Manager. In Tag Manager, these arrive as Custom Events, meaning the event name (such as generate_lead) appears in the data layer, ready for you to build a trigger around it.
Lead Capture Form
Event | Description |
page_view | Fires when the Lead Capture Form loads. |
generate_lead | Fires when the Lead Capture Form is submitted. |
Online Scheduling
Event | Description |
view_item | Fires when an Online Scheduling Service is viewed. If a single service is offered, it fires on page load; if more than one service is offered, it fires once a service is selected. |
schedule | Fires when a booking is made, if you selected Schedule as the event type. |
purchase | Fires when a booking is made, if you selected Purchase as the event type. |
generate_lead | Fires when a booking is made, if you selected Lead as the event type. |
Setting Up Google Tag Manager To Use These Events
Below is the most common goal: forwarding the 17hats events into Google Analytics (GA4) through Tag Manager. The same approach works for other platforms; you'd simply use a different tag type (for example, a Meta Pixel tag) in Step 3.
Step 1: Create a trigger for the 17hats event. In Tag Manager, go to Triggers > New > Custom Event. In the Event name field, enter the exact name of the event you want to catch, such as generate_lead. Save the trigger. Repeat for each event you want to act on (page_view, view_item, purchase, schedule).
Step 2: Create variables for the parameters (optional). If you want to capture the extra information 17hats sends with each event, such as the lead's name or the scheduling service name, go to Variables > New > Data Layer Variable, and enter the exact parameter name (for example, content_name). Save it, and repeat for each parameter you'd like to use. The available parameters are listed in the next section.
Step 3: Create the tag and connect your trigger. Go to Tags > New, choose your tag type (for example, Google Analytics: GA4 Event), enter your GA4 Measurement ID, and give the event a name. Under Triggering, select the trigger you created in Step 1. If you created data layer variables in Step 2, you can add them here as event parameters. Save the tag.
Step 4: Submit and publish. Click Submit in the top-right corner of Tag Manager to publish your container. Your tags won't fire on the live site until you publish.
Event Parameters (Data Layer Variables)
When 17hats fires an event, it attaches extra information called parameters. In Tag Manager, you access these by creating Data Layer Variables (Step 2 above) using the exact parameter names below.
Lead Capture Form
Parameter | Description |
content_name | The lead's name from the form submission. |
content_ids | The 17hats Lead Capture Form internal ID. |
content_title | The Lead Capture Form title. |
content_type | Always lead. |
Online Scheduling
Parameter | Description |
service_name | The 17hats Online Scheduling Service name. |
service_ID | The Online Scheduling Service ID. |
name | The contact's name at the time of booking. |
Testing with Preview Mode
Tag Manager includes a built-in Preview mode that lets you watch events fire in real time before you publish.
In Tag Manager, click Preview in the top-right corner.
Enter the URL of your Lead Capture Form or Online Scheduling Service and connect.
Your form or scheduling page opens in a new window with Tag Manager's Tag Assistant attached.
As you load the page and submit the form (or make a booking), you'll see the 17hats events (such as page_view, view_item, and generate_lead) appear in the event timeline on the left.
Click an event to confirm your tags fired and to view the parameters 17hats sent in the data layer.
This is the best way to confirm everything is wired up correctly before publishing your container.
How are embedded forms tracked?
You can embed your Lead Capture Form and Online Scheduling on your own website. When you look at the data in Tag Manager, the page information will reflect the 17hats form or scheduling page, not the page you embedded it on.
For example, if you embed a Lead Capture Form on your homepage, the page location reported with the event will be the URL of the 17hats form, not the URL of your homepage.
A Note on Google Analytics
Google Tag Manager and Google Analytics are not the same thing, and you don't have to choose one instead of the other. Tag Manager is the delivery and management system; Google Analytics is one of the destinations you can send data to. Many businesses use Tag Manager specifically to feed Google Analytics, along with their other tools, from a single place. If Google Analytics is the only destination you care about, the simpler GA4 option in 17hats may be all you need. See Google Analytics for 17hats Online Scheduling and Lead Capture Forms for those instructions.
