SiteAud!tLint Support

Critical Tracking & Analytics

GA4 sent by page code and by GTM

Severity
Critical
Impact
High
Effort to fix
Low
Issue code
track_ga4_double

Why it matters

The same GA4 ID is hard-coded in the page and also sent by the GTM container, so page views and events are usually counted twice.

How to fix it

Keep GA4 in one place, ideally GTM: remove the hard-coded gtag.js config for that ID.

What this means

The page sends to the same GA4 measurement ID in two ways: hard-coded in the page, and through a Google Tag Manager container that also contains a GA4 tag for that ID. The evidence shows the ID and the container, for example G-ABC123 is hard-coded and also sent by GTM-XYZ.

SiteAud!tLint reads the GTM container itself to know which GA4 IDs it sends to.

Why it matters

Every event can be counted twice: page views, sessions, scrolls and conversions. This is one of the most common causes of inflated analytics numbers, and it usually goes unnoticed because the data still looks plausible.

Common causes

  • GA4 was added to GTM, but the old gtag.js snippet was never removed from the theme.
  • A plugin or platform integration (Shopify, WooCommerce, Wix, Squarespace) installs GA4 while GTM also sends it.
  • A developer added GA4 directly to a template "to be safe".

How to fix it

  1. Choose one place for GA4. GTM is usually best: it keeps every tag in one container, with consent settings and triggers you can see.
  2. Remove the hard-coded gtag.js snippet or disable the plugin's GA4 setting.
  3. Keep the GTM GA4 tag, and check its triggers fire once per page.

Verify the fix

Recrawl. With Render JavaScript on in Crawl settings, also check Page view sent twice on one page load. See Google Tag Manager audit.

How it affects your score

Tracking issues have their own Tracking score and never lower the SEO site health score. They still appear in the Action Plan, the issues CSV, Slack messages and Linear tickets. Blocks indexing, breaks pages or loses traffic. Fix these first.

Find the affected URLs

Open Crawl > Issues and pick GA4 sent by page code and by GTM. Each affected URL is listed with its evidence, and Copy URLs or Export URLs hands the list to a developer. The issue also appears in the Action Plan, ranked by impact (high) and effort (low), and in the issues CSV under the code track_ga4_double. After fixing, run a new audit and use Compare to confirm the URLs moved to fixed.

Guides that cover this issue