GTM Kit – Google Tag Manager & GA4 integration
GTM Kit – Google Tag Manager & GA4 integration

GTM Kit – Google Tag Manager & GA4 integration

4.8/5 (20 ratings) 30K+ active installs Updated Sep 24, 2026
GTM Kit Dashboard

GTM Kit Dashboard

GTM Kit puts the Google Tag Manager container code on your website so that you don’t need to touch any code. It also pushes data from WooCommerce, Easy Digital Downloads (EDD) and Contact Form 7 to the data layer for use with for Google Analytics 4, Facebook and other GTM tags.

The goal of GTM Kit is to provide a flexible tool for generating the data layer for Google Tag Manager. It is easy to use and doesn’t require any coding, but it allows developers to customize the plugin as needed.

The settings are organised around what you are trying to do (Setup, Events & data layer, Commerce, Consent & privacy, and Tools), so related options live together and the setting you need is quick to find.

Know when your tracking breaks

Tracking fails quietly. A caching plugin strips the container out of the page, a second plugin loads it a second time, a staging copy reports into your live property, and nothing on the settings screen says so.

GTM Kit checks one of your own pages once a day, the way a visitor receives it, and tells you when nothing on your site is loading your container, or when your pages load tracking twice. Where it recognises the plugin or tool adding the second copy, it names it.

WordPress’s own Site Health screen reports on GTM Kit directly: whether your container is set up and reaching your pages, whether consent is configured, whether GTM Kit’s settings can be saved at all, and, if you serve the Google tag from your own domain, whether that is still working. A GTM Kit section on the Info tab lists your whole configuration on one screen and copies it into a support request with one click.

On sites WordPress reports as staging, development or local, GTM Kit leaves the container out, so test traffic never reaches your live analytics. The data layer is still built there, and a setting loads the container anyway when you are measuring a test site on purpose.

eCommerce events tracked with Google Analytics 4

The following GA4 events are automatically included in the dataLayer:

WooCommerce

  • view_item_list
  • select_item
  • view_item
  • add_to_wishlist [Premium]
  • add_to_cart
  • view_cart
  • remove_from_cart
  • begin_checkout
  • add_shipping_info
  • add_payment_info
  • purchase
  • refund [Premium]
  • order_paid [Premium]
  • order_processing [Premium]
  • order_completed [Premium]
  • order_refunded [Premium]
  • subscription_started [Premium]

Unlock all features with GTM Kit Premium.

Easy Digital Downloads

  • view_item
  • add_to_cart
  • begin_checkout
  • purchase

Serve the Google tag from your own domain

Ad blockers and browser tracking restrictions treat a script loaded from Google differently from one loaded by your own site. GTM Kit can serve the Google tag from your own domain instead, so the tag loads where a request to Google’s domain would have been blocked. The measurement the tag sends still goes to Google; moving that to your domain as well needs Google’s tag gateway through a CDN or host that supports it.

Before you can switch it on, GTM Kit checks that your server can reach Google and that the address it would serve the tag from is actually reachable, and it repeats both checks once a day afterwards. If either stops working, GTM Kit goes back to loading the container the standard way and tells you, so your tracking never stops without warning.

It is off by default, and it is an alternative to pointing GTM Kit at your own server-side container domain rather than something you run alongside one.

Flexible container implementation

Depending on how you use Google Tag Manager you can delay the loading of the container script until the browser is idle. This may be relevant to you be if are focusing on pagespeed.

You may enter a custom domain name if you are using a custom server side GTM (sGTM) container for tracking. It’s also possible to specify a custom loader. GTM Kit has full support for Stape server GTM hosting.

You can also exclude specific pages from GTM entirely. Add URL patterns on the Container settings page and GTM Kit holds back the container, the noscript fallback, and its data layer scripts on matching pages. Useful for third-party checkout iframes, partner-hosted subpages, and in-app webview routes that run their own tracking. Glob patterns are supported by default, with optional regex for advanced matching.

Moving from another Google Tag Manager plugin

GTM Kit imports settings from Google Tag Manager for WordPress, Google Tag Manager for WooCommerce, Metronet Tag Manager and other GTM plugins, at any time, from the Tools page. Your container ID, data layer variables, Consent Mode defaults, excluded user roles and container environment come across in one step.

Before anything is written you see exactly which of your settings will be replaced, and only settings the other plugin actually configured are touched.

Post data

You may specify which post data elements you wish to include in the dataLayer for use in Google Tag Manager.
– Post type: include the type of the current post or archive page.
– Page type: include a defined page type. I.e. post, page, product, category, cart, checkout etc.
– Categories: include the categories of the current post or archive page.
– Tags: include the tags of the current post or archive page.
– Post title: include the post title of the current post.
– Post ID: include the Post ID of the current post.
– Post date: include the post date.
– Post author name: include the post author name.
– Post author ID: include the post author ID.

External services

Stape

If your server-side Google Tag Manager container is hosted on Stape, GTM Kit can use the loader Stape issues for it. This is off by default. When you switch on “Get the loader from Stape” under Server-side Tagging, GTM Kit asks Stape’s API (api.app.stape.io, or api.app.eu.stape.io for containers in Stape’s EU region) for the loader.

The request is sent only when you save a change to the settings the loader depends on, or press “Refresh loader”. It is never sent on a schedule or when a visitor views a page. It contains your sGTM container identifier, your GTM container ID, your sGTM container domain, your data layer name and, when Cookie Keeper is on, the name of the Cookie Keeper cookie. No visitor data is sent.

Stape terms of service: https://stape.io/terms-conditions
Stape privacy policy: https://stape.io/privacy-notice