GA4 Audit Checklist: 16 Things to Check Before Your Data Costs You Money

Most GA4 setups we inherit have the same critical flaws. Missing custom parameters. Broken key event attribution. Traffic source data that makes no sense. These are not edge cases — they are the norm across the industry.

We audit GA4 properties for agencies and high-growth brands every week. This checklist covers the 16 most common issues we find, in rough order of impact. Use it on your own properties, or on the ones your agency manages. Either way, you will catch something before bad data costs you ad spend.

CHECK 01 Data stream configuration

Check that your data stream is measuring the right domain. Sounds obvious, but we regularly find staging sites, old domains, and development environments reporting directly into production GA4 properties. Go to Admin → Data Streams and verify every URL. One stray staging stream can inflate your user numbers by 30% or more with artificial developer traffic.

CHECK 02 Internal traffic filtering

If you have not defined internal traffic rules, your own team's clicks, pageviews, and test purchases are in your reports. Go to Admin → Data Streams → [your stream] → More Tagging Settings → Define Internal Traffic. Create a rule matching your office IP or IP range. Then create a data filter to exclude it.

⚠ Critical Implementation Gotcha

The "Testing" Filter Trap: Defining the internal traffic rule is only half the job. You also need to activate the data filter. Go to Admin → Data Settings → Data Filters, and change the filter state from "Testing" to "Active". We see this step missed on roughly half the properties we audit — the rule exists, but internal visits are still polluting production dashboards.

CHECK 03 Unwanted referrals

Payment gateways, third-party checkout pages, and subdomains often appear as referral traffic when they should not. Check Admin → Data Streams → [your stream] → More Tagging Settings → List Unwanted Referrals. Add every domain that should not count as a referral source. Stripe (checkout.stripe.com), PayPal, Klarna, and your own subdomains are the usual suspects.

CHECK 04 Cross-domain tracking

If your user journey crosses multiple domains (e.g. shop.example.com to checkout.example.com, or your main site to an external booking engine), you need cross-domain tracking configured. Without it, every domain transition breaks session continuity, resets the traffic source to direct/referral, and destroys conversion attribution.

To verify cross-domain tracking is working, open Tag Assistant and navigate through the full user journey across domains. Check that the client_id (_ga cookie value) remains identical throughout the session. If it changes at any domain boundary, the linker is not passing measurement parameters correctly.

CHECK 05 Enhanced measurement review

Enhanced Measurement is enabled by default for new data streams. It auto-tracks pageviews, scrolls, outbound clicks, site search, video engagement, and file downloads. Some of these are useful, but some produce massive data noise and duplicate custom GTM events. Go to Admin → Data Streams → Enhanced Measurement and disable anything you do not need.

CHECK 06 Event naming consistency

GA4 relies on recommended event names (add_to_cart, purchase, generate_lead, sign_up) and standard parameter naming conventions. Using custom names where recommended ones exist breaks automated GA4 funnel reports and prevents you from utilizing built-in predictive audiences. Open Events in the left navigation and scan for non-standard names.

CHECK 07 Key events (conversions)

In GA4, events do not become conversions until you mark them as Key Events. We regularly find properties where the purchase or lead event fires correctly, but nobody turned on the key event toggle. Go to Admin → Events and mark high-value milestones as Key Events. You have 30 slots available on a standard property.

CHECK 08 Conversion counting method

Each key event has a counting method: Once per event or Once per session. The default is once per event, which is vital for eCommerce transactions. For lead generation forms, Once per session is usually preferred — avoiding duplicate conversion records if a user clicks submit twice.

CHECK 09 Attribution model settings

GA4 defaults to data-driven attribution. Go to Admin → Attribution Settings to verify your reporting attribution model and lookback windows (default is 30 days for acquisition, 90 days for conversion events). Adjust lookback windows if your sales cycle spans longer timelines.

CHECK 10 Data retention

GA4 defaults to a meager 2 months of event-level data retention. After 2 months, custom exploration reports cannot query granular parameters. Go to Admin → Data Settings → Data Retention and immediately switch the setting to 14 months.

⚡ Pro Architecture Tip

Bypass Retention Limits with BigQuery: To perform multi-year cohort analysis, stream GA4 events into Google BigQuery. Daily table exports are 100% free from Google, and BigQuery storage gives you permanent, unsampled access to raw SQL event logs.

CHECK 11 Google Signals

Google Signals enriches your data with cross-device and remarketing information from logged-in Google users. It improves demographic reporting and enables remarketing lists. Go to Admin → Data Settings → Data Collection and activate it if needed, verifying that your Privacy Policy discloses cross-device profiling.

CHECK 12 Consent Mode v2 verification

If you run ads or measure visitors in the UK or EEA, Google Consent Mode v2 is mandatory under the Digital Markets Act (DMA). Without proper signalling for ad_user_data and ad_personalization, Google Ads conversion modelling is terminated. Inspect the consent state in GA4 Realtime and DebugView to ensure default denied states exist.

CHECK 13 Thresholding & reporting identity

GA4 applies automated data thresholds when Google Signals is enabled on low-traffic dimensions. If you see an orange warning triangle stating "Thresholding applied", switch your Reporting Identity in Admin → Reporting Identity to Device-based to unmask hidden granular rows.

CHECK 14 Custom dimensions & metrics

Standard GA4 properties have a quota of 50 event-scoped and 25 user-scoped custom dimensions. Audit your custom definitions regularly in Admin → Custom definitions to archive obsolete test parameters and free up valuable parameter slots.

CHECK 15 Linked Google product accounts

GA4 should be connected to Google Ads, Google Search Console, and BigQuery. Linking Google Ads enables conversion imports and audience sharing. Linking Search Console populates organic landing page queries. Linking BigQuery ensures raw data ownership.

CHECK 16 DebugView real-time validation

DebugView is the ultimate pre-flight validation suite. Open Admin → DebugView and browse your staging or live environment using GTM Preview Mode. Verify each tag payload before deploying container versions to production:

  • Pageview Parameters: Ensure page_location and page_title are clean.
  • Custom Parameter Payloads: Verify custom key-value pairs populate.
  • Consent Signals: Confirm consent_update fires with the user's explicit preference.
  • Ecommerce Schema: Verify items arrays adhere to required GA4 object keys.
// TECHNICAL AUDIT SERVICE
Need a certified engineer to audit your GA4 & GTM setup?

We perform deep-dive technical audits of GA4 properties, server-side GTM containers, and BigQuery schemas for agencies and high-volume eCommerce brands. We deliver an actionable engineering report with zero jargon.

Book a Technical GA4 Audit ↵