How to audit Google Analytics 4 in 45 steps. Verify your data quality, detect tracking errors and make sure your metrics are reliable.

Performing a Google Analytics 4 (GA4) audit will help you answer several key questions:
Is my property collecting the data I need? Can I trust the data that GA4 shows me? What are the configuration errors? Are there elements that could be improved? Are my key events (conversions) properly defined? Are there gaps in the tracking implementation?
Data analysis work is based on trust in the data. GA4 aims to guide action and plays an important role in decision-making. Data must be reliable and accurate. The main goal of the audit is to ensure data integrity and quality — fixing what is causing problems and improving what can be improved.
Important note: Universal Analytics (UA) was shut down on 1 July 2023. This article covers exclusively Google Analytics 4 (GA4), Google’s current platform.
GA4 has a different structure from Universal Analytics. “Views” no longer exist. The hierarchy is:
Account → Property → Data Streams
Each GA4 property can have multiple Data Streams: one for web, one for iOS and one for Android. For most websites, you will have a single web Data Stream with a Measurement ID of the type G-XXXXXXXXXX.
Go to Admin → Data Streams and check:
G-XXXXXXXXXX) matches the one installed on your site.In Admin → Property settings, verify that:
Your Google account is the gateway to all services: Gmail, Drive, GA4, Google Ads… Never share your username and password with third parties. If a vendor or collaborator needs access, create an individual access for them from within GA4.
In GA4, access is managed at the Account or Property level. Regularly review who has access and with what permission level:
As a general rule, grant the minimum necessary access level. Revoke access from former collaborators or agencies you no longer work with.
This is one of the most critical points and one of the most overlooked. By default, GA4 retains event data for 2 months. To be able to make year-over-year comparisons and long-term analyses, you must change this value to 14 months.
To change it: Admin → Property settings → Data collection and modification → Data retention.
Google Signals allows GA4 to aggregate data from users who are signed in to Google and have enabled ad personalisation. This improves demographic reports and cross-device tracking.
To enable it: Admin → Data collection and modification → Data collection → Enable Google Signals.
Note: with Google Signals active, GA4 may apply Data Thresholds in demographic reports to protect user privacy. If you see “(other)” in your demographic reports, this is normal.
GA4 offers three options for identifying users:
We recommend using Blended for the most complete view of the user. This configuration is also necessary for Consent Mode behaviour modelling to work.
In GA4 there are no View-level filters as in UA. IP filtering is done at the Data Stream level. To exclude your team’s traffic:
Remember: if the filter is in “Testing” mode, data is flagged but not excluded from reports.
If you use DebugView to test your implementation, GA4 can create an automatic filter to exclude that traffic. You can also configure it manually at Admin → Data filters → Create data filter → Developer traffic.
If you have an online store that redirects to an external payment gateway, that gateway is likely to appear as a conversion source in your reports. This is incorrect.
In GA4, referral exclusions are configured at: Admin → Data Streams → [your stream] → Configure tag settings → List unwanted referrals.
Add the domains of your payment gateways (paypal.com, redsys.es, stripe.com, etc.) so that GA4 does not treat them as a new traffic source.
If your website uses multiple domains (for example, shop.yourdomain.com and checkout.otherdomain.com), you need to configure cross-domain tracking so that GA4 treats the user as the same session.
Configure it at: Admin → Data Streams → [your stream] → Configure tag settings → Configure your domains.
Add all domains involved in the user flow.
Check the Exploration report or the Tech report to confirm that data only comes from your legitimate domains. If you see unknown hostnames, there may be scraping of your site (someone copying your site with your GA4 code included) or data from test environments being sent to production.
GA4 does not use sampling like UA, but it does apply data thresholds in certain reports to protect privacy, especially when Google Signals is active. When this occurs, you will see a shield icon at the top of the report.
To minimise thresholds:
GA4 includes enhanced measurement, which automatically records a series of events without additional code:
page_view)Verify that enhanced measurement is active at Admin → Data Streams → [your stream] → Enhanced measurement and review which events you have enabled. Only activate those relevant to your business; unnecessary events add noise.
Before signing off on any configuration, use DebugView to check that events are arriving correctly. Access it from Admin → DebugView.
To activate debug mode:
?gtm_debug=x to the URL or use the Chrome extension “GA Debugger”.In DebugView you will see in real time all events, their parameters, and whether they are being marked as conversions.
UTM parameters work in GA4 exactly the same way as in UA:
utm_source: traffic source (google, newsletter, linkedin)utm_medium: medium (cpc, email, social)utm_campaign: campaign nameutm_content: ad variationutm_term: keywordTo create tagged URLs, use the official Google Campaign URL Builder (the old appspot.com URL no longer works).
Tip: establish a naming convention and always follow it. GA4 is case-sensitive for UTM values. “Email” and “email” will appear as two different mediums in your reports.
If enhanced measurement does not cover your needs, you can create custom events. In GA4, everything is an event with parameters. For example, a form_submitted event with the parameter form_type = "contact".
Review your custom events and verify:
In Admin → Custom definitions, register all event parameters you want to see in your standard reports. GA4 has a limit of 50 custom dimensions and 50 custom metrics per property.
Review existing definitions:
In GA4, the “Goals” of Universal Analytics no longer exist. Conversions are managed by marking events as Key Events (previously called “Conversions” until the 2024 nomenclature change).
These are the most important indicators for your business. Verify that you have configured as Key Events:
purchase event) for e-commerce.These are relevant interactions that indicate interest, even if they are not the final objective:
Go to Admin → Events and then Conversions to see all events marked as key. Verify:
purchase event have the value parameter with the correct value?GA4 has its own e-commerce model based on standard events. The main event is purchase, which must include:
transaction_id: unique transaction identifier.value: total transaction value.currency: currency (e.g. “EUR”).items: array with the purchased products, where each item includes item_id, item_name, price, quantity and optionally item_category.transaction_id unique? If not, you may be counting duplicate transactions.item_ids consistent? They must match your product catalogue.currency parameter correct? GA4 needs the ISO code (EUR, USD, GBP…).purchase event only fire once per transaction? If the user reloads the confirmation page, it could fire multiple times.view_item, add_to_cart, begin_checkout allow you to analyse the funnel in Explorations.Link your GA4 property with Google Ads at Admin → Product links → Google Ads linking. This integration allows you to:
Link Search Console at Admin → Product links → Search Console linking. This adds the Organic search queries report directly in GA4, with impressions, clicks and average position data.
If you handle large volumes of data or need to perform advanced SQL analyses, link GA4 with BigQuery. The daily export (free) sends all raw events to BigQuery, where you can query them without sampling limitations or thresholds.
Go to Admin → Product links → BigQuery linking.
Explorations are the GA4 equivalent of UA’s custom reports, but much more powerful. You can create:
Review whether you have saved Explorations that are no longer used or that have outdated configurations.
In the Reports section, you can customise which metrics and dimensions appear in each standard report. Verify that the reports your team consults are well configured and display the most relevant data.
GA4 includes predefined channel groups and allows you to create custom channel groups. This feature (at Admin → Channel groups) lets you reclassify traffic according to your own business rules.
For example, you can create a “Brand” channel to separate paid search traffic from your brand keywords from generic paid traffic.
Since March 2024, Consent Mode v2 is mandatory in order to run remarketing and personalised advertising in the European Economic Area (EEA). Without it, Google Ads and Display will not be able to use conversion data from users who have not given their consent.
Verify that you have implemented Consent Mode v2 with the four parameters:
ad_storageanalytics_storagead_user_dataad_personalizationIf your Consent Management Platform (CMP) does not support the new ad_user_data and ad_personalization parameters, you must update it urgently.
Verify that you are not sending Personally Identifiable Information (PII) to GA4: email addresses, names, phone numbers, etc. This is prohibited by Google’s Terms of Service and can result in penalties under the GDPR.
Review especially:
Audiences in GA4 still work for remarketing in Google Ads. Review the audiences configured at Admin → Audiences:
GA4 incorporated Annotations in 2024 (at Admin → Property → Annotations). Use them to record important events that may affect your data: campaign launches, site redesigns, tracking changes, Google algorithm updates, etc.
Annotations are essential for historical analysis. Without them, in six months you will not remember why there was a traffic spike on a specific date.
If you use landing pages for your paid campaigns, verify that:
You do not want to send paid traffic to a page that returns a 404 error.
Email traffic has no referrer by nature, so without UTM tagging it will appear as direct traffic in GA4. Verify that:
utm_medium=email.utm_source identifies the name of your tool or list (mailchimp, newsletter, etc.).utm_campaign identifies the specific campaign.A well-executed GA4 audit is the foundation of any solid data strategy. This is not a one-time process: we recommend carrying out a full audit every 6 months and monthly reviews of the most critical points (conversions, filters, integrations).
Do you have questions about any aspect of your GA4 configuration? At lionelz.com/services/ we can help you review and optimise your implementation.
30 minutes to review your situation and tell you exactly what I would change. No pitch, no sales proposal.