Duplicate tracking: hard-coded tags, two containers and double page views
Page views that suddenly double, a bounce rate close to zero, or twice as many purchases in Google Ads as in your shop: these all point to tracking that runs twice. It rarely comes from Tag Manager itself. Almost always, something next to it sends the same data again.
1. A Google tag outside Tag Manager
For example a gtag.js snippet in the theme, a plugin that adds Google Analytics on its own, or on Shopify the Google & YouTube sales channel or a custom pixel under Customer events. Its hits go straight to Google, past your tagging server, and on top of the ones your container sends. Configure the measurement ID in your container only, and remove or switch off the other one.
2. A second Tag Manager container
An old container from a previous agency, one added by a plugin, or a test container left on the live site. Its tags are outside your consent settings and outside your server-side setup. Move anything you still need into your main container and remove the second snippet.
3. The same pixel inside and outside Tag Manager
Common with ad platforms on Shopify: the Meta, TikTok or Pinterest app installs its own pixel, and the same pixel also runs in your container. Every event is sent twice. Pick one place: either the app's tracking or the container, not both.
4. The old snippet still in place
When you move to the Measurebase script, the old Google Tag Manager snippet (the one loading gtm.js from googletagmanager.com) has to go, both the script in the head and the noscript part after the body tag. If both stay, every tag fires twice.
5. A page that runs twice
Sometimes the script loads once per page view, and the page itself runs twice:
- browser prerendering or speculative loading, for example WordPress's speculative loading or Chrome's speculation rules, followed by the real navigation;
- a reload straight after the cookie banner is answered;
- a redirect that lands on the same URL.
How to find it
The Measurebase tracking audit checks all five. The site crawl reports Google tags, containers and pixels loaded outside your container by name and by how they are loaded, and the audit compares the page views reaching your domain: page views sent twice within seconds for the same page and the same visitor show up as "sent twice".
By hand: open your site with the Network tab of your browser's developer tools and filter on collect. One page should give one page_view. Two means one of the causes above; the request's initiator column shows which script sent it.