Stape/Documentation

How to debug sGTM configuration using Preview Mode

Updated Mar 10, 2026

This guide explains how to check:

- Web GTM Preview:

  • Web event exists: event data from a user’s browser reached your web GTM container.
  • Web tag sent: web container passed event data to your server GTM container.

- Server GTM Preview:

  • Server received the request: event data reached the server GTM container.
  • Client processed the request: the server container correctly interpreted event data.
  • Server tag sent: the server container passed the outgoing request to the final platform (GA4, Meta, etc.)

Before you start

1. Install Google Tag Assistant

Google Tag Assistant is Google’s official tool that ensures smooth functioning and accuracy of tags in Google Tag Manager.

How to use Google Tag Assistant:

  1. Install the Google Tag Assistant extension for Chrome.
  2. Launch the Preview mode in Google Tag Manager.
  3. Once you connect to your website with preview, Tag Assistant will launch automatically.

2. Install Stape GTM Helper

If your GTM containers include multiple tags, triggers, and variables, it may be a good idea to use the GTM Helper extension. This is a free Chrome browser extension developed by Stape that makes debugging web and server-side GTM containers easy and intuitive.

How to use GTM Helper:

  1. Install the Stape GTM Helper Chrome extension for Chrome.
  2. To configure the extension, open your GTM container and click on the extension’s icon.
  3. Launch the Preview mode in Google Tag Manager. You will notice new or updated features, such as the entity filter or tag type coloring. For more information about the extension and its features, check out our detailed guide on GTM Helper.

How to use Preview to debug your sGTM setup

1. Open preview mode in web and server containers

  • Open your ​server GTM container​ → click Preview.
  • In a different browser tab, open your web GTM container → click Preview → enter your website’s URL. 

This will start the web debug session. Your website will open in a new window with the GTM debug panel active at the bottom.

Web debug session

2. Trigger a request from your website

  • Perform actions that trigger tags. By simply loading the page, you’ve triggered the page_view event. Other simple possible actions include reloading the page or clicking a button. Such events will show in your debugger.
  • In the web GTM Preview, click on the event. Under Tags Fired, find the tag you configured to send data to your server (e.g., Google Analytics 4 tag). If it fired, it means the tag worked. Next, select the tag and inspect the hit sent - check that it was sent to your server container URL.
Trigger a request from your website

3. Check incoming requests in the server GTM Preview

  • Go back to the ​server GTM Preview tab​ you opened in the first step.
  • If you see events coming from your website domain, the setup works and requests are successfully reaching your sGTM container hosted on Stape.
  • Click on the incoming request. Check the ​Tags Fired​ tab to see that your server-side tags (like the GA4 tag) have activated. 
Check incoming requests in the server GTM Preview
  • In the fired tag, check the ​Outgoing HTTP Requests​ tab to see the request that your server container successfully sent to Google Analytics. 
Outgoing HTTP Requests​ tab

If you see that outgoing request, it means that the event data has passed from your website, through your server container, and on to the final destination.

Common web preview problems

Summary (event timeline)

The chronological sequence of events detected on the page.

The chronological sequence of events detected on the page.

Common problems:

  • Expected event is missing.
  • Duplicate events are fired.

Possible solutions:

  • Check the event’s configuration and trigger in the web GTM container. 
  • Check for duplicate scripts or triggers on the page.

Tags tab

Tags that fired or did not fire for the selected event.

Tags that fired or did not fire for the selected event.

Common problems:

  • Tags not fired.

Possible solutions:

  • Trigger conditions are wrong - check the tag’s configurations.
  • Consent blocked it - check the Consent tab to see more details on which permissions are missing.
  • Variables are missing (for some platforms) - click on the tag and check the section Firing Triggers to learn which. Then check its variables. It will help you find the variables and their values to set up the tag’s trigger correctly.

Variables tab

Shows what values your variables captured. Pro tip: while the following advice for this tab is correct, it’s best to inspect the variable values of specific tags (in the Tags tab), instead of all variables shown here. The Variables tab shows all of the variables of the container, not all of which will be relevant for each tag.

Variables tab

Common problems:

  •  Undefined or wrong value. Keep in mind, this doesn’t always mean there is an issue. For example, an email value will surely be undefined for the steps where the user hasn’t provided it yet, for instance, at the page_view event. So consider what type of event you’re inspecting while deciding whether the lack of value in its variables is an error or not.

Possible solutions:

  • Fix the variable’s setup in GTM.
  • Check that the data appears in the Data Layer tab and that its key matches the variable's name.

Data Layer tab

Shows raw data sent by the website.

Data Layer tab

Common problems:

  • Data is missing or wrong.

Possible solutions:

  • Tags don’t fire - if you can't fire tags in all needed locations on the website, check the variable names on different pages.
  • Data layer push doesn’t work - if you see that variables or events fail to push, you most likely don’t use proper casing for object names or missed quotes.

Troubleshooting data layer

Shows the state of consent for every type of relevant tracking action.

Consent tab

Common problems:

  • Consent not provided.

Possible solutions:

Console tab

This screen will show you information about any errors that occurred on the side of web GTM, which is extremely useful for debugging. 

Console tab

Common server preview problems

Summary (event timeline)

Similar to web preview, this section shows all requests that reached your server GTM container. 

Summary (event timeline)

Common problems:

  • Expected event is missing.

Possible solutions:

  • Check the event’s configuration and trigger in the server GTM container. If the server preview doesn’t show the event that’s been successfully sent from the web container, it means the request never reached the server.

Request tab

This tab shows a lot of information about your request. 

Request tab

Common problems:

  • No client claimed the request.
  • Missing request headers.
  • Outgoing request returns non-20X status.
  • Request path mismatch.

Possible solutions:

  • Client - if no client claimed the request, check the Request URL in the Incoming HTTP Request menu - there may be a request path mismatch or typos in the URL.
  • Incoming HTTP Request - the Request Headers section is useful to verify that the server GTM container correctly enriches requests with necessary data (for instance, the user’s geo data). If some headers are missing, check the tag’s settings on the server container. A good idea is to activate Stape’s Custom Loader power-up, as it automatically adds a number of geo parameters to the event data.
  • Outgoing HTTP Request - if the response code for the outgoing request is different from 20X, it means there were some issues with processing the request. You can check the response body and read which error exactly stopped the request from processing.

Tags tab

These are server-side tags sending data to platforms.

Tags tab

Common problems:

  • Tag not fired.

Possible solutions:

  • Trigger conditions are wrong - check the tag’s configurations.
  • Variables are missing (for some platforms) - click on the tag and check the section Firing Triggers to learn which. Then check its variables to find the variables and their values to set up the tag’s trigger correctly.

Variables tab

This tab also works the same way as in web GTM preview - it shows what values your variables captured. Pro tip: while the following advice for this tab is correct, it’s best to inspect the variable values of specific tags (in the Tags tab), instead of all variables shown here. The Variables tab shows all of the variables of the container, not all of which will be relevant for each tag.

Variables tab

Common problems:

  • Undefined or wrong values. Keep in mind, this doesn’t always mean there is an issue. For example, an email value will surely be undefined for the steps where the user hasn’t provided it yet, for instance, at the page_view event. So consider what type of event you’re inspecting while deciding whether the lack of value in its variables is an error or not.

Possible solutions:

  • Check the variable’s setup in the server GTM.

Event Data tab

This screen shows you the structured data that was created by the ​Client​ that processed the incoming request. This for the server container is the same as the Data Layer tab for the web container.

Event Data tab

Common problems:

  • Empty or incorrect event data.

Possible solutions:

  • You may be sending data to the wrong endpoint.​ For example, you configured your web GTM's Facebook tag to send data to the GA4 path instead of Meta. The GA4 Client will claim the request because the path matches, but it won't understand the Facebook request format, so it produces no event data.
  • If the data exists, but the values are wrong (e.g., price is 0, or product_name is "undefined"), first of all, check your variables in web GTM - the tag in the web container may be pulling from the wrong Data Layer variable, or the variable is misconfigured. Next, check if there are any data formatting issues (the Client failing to interpret the value). For instance, you might be sending a price as a string like "$25.99" instead of a number like 25.99. 

Console tab

This screen will show you information about any errors that occurred on the side of the server GTM. 

Console tab

Comments

Can’t find what you are looking for?
How to Debug sGTM Configuration Using Preview | Stape