top of page
  • Writer's pictureGraham Marsh

Setting up GA4: 7 common mistakes to avoid


I've been working almost exclusively on GA4 migrations for the last year. The recommendation before that time was always to get GA4 set up in parallel with Universal Analytics in order to start collecting data, which has resulted in many hastily implemented GA4 setups that share similar issues.


In this article, I'll explore some of the most common mistakes and issues I've encountered, and will hopefully help you to spot or avoid them within your GA4 property.


1 / Ensure your GA4 property is properly configured to receive data


Impact: This common mistake results in no granular data showing up in your GA4 reports.


Google Analytics 4 (GA4) uses a different data model from the legacy version, Universal Analytics. When setting up events you are no longer restricted to Event Category, Event Action, and Event Label. The new structure is a single event name along with up to 25 event parameters (per event) that you can use given additional context to the interaction.


In order for these event parameters to display in your GA reports, they must be configured as custom dimensions or metrics. To set these up:

  • Go to 'Admin > Custom Definitions'

  • Choose a dimension name

  • Enter the event parameter exactly as it appears in the tracking code

For example, you have a custom event called enquiry with a parameter called form_name. You will only see the data for form_name in your reports if you have this set up as a custom dimension like this:

Note: if you're using GA4's enhanced measurement to automatically collect data, most of the parameters attached to those events are now available by default in reports without the need to set them up yourself. However, some still need to be added. At the time of writing, this includes form_name, form_id, and video_duration.


2 / Increase the data retention setting from the default


Impact: if you don't change this you will only have 2 months of data when creating custom reports in the Explore section.


The Google Analytics Data Retention controls give you the ability to set the amount of time before user-level and event-level data stored by Google Analytics is automatically deleted from Analytics servers. In free GA you can choose between 2 and 14 months (360 up to 50 months).


The retention period applies to user-level and event-level data associated with cookies, user-identifiers (e.g., User-ID), and advertising identifiers.


The data retention setting doesn't affect the default reports, which use already aggregated data, but when building custom reports in Explore, you will only have data up to the data retention setting that you choose.

So you should increase this setting from the minimum, but it should also be set in line with the data protection policies of your organisation. To change it, go to 'Admin > Data Settings > Data Retention'


3 / Ensure you are not sending multiple page views to GA4

Impact: Multiple page views obviously lead to an inflated page view count, but it also skews engagement metrics


This is a surprisingly common mistake that I've seen working on GA4 projects over the last year or so. The most common cause of this is that the property has Enhanced Measurement enabled in the data stream, but there is a second-page view event fired by the GA4 configuration tag within Google Tag Manager.

Screenshot showing GA web stream details
Check if you have enhanced measurement enabled by going to 'Admin > Data Streams > Your Data Stream' and see if it's toggled on or off.

If enhanced measurement is toggled on, your GA4 config tag in Google Tag Manager should not have this checkbox enabled.

4 / Avoid using the legacy event structure

Impact: you are not leveraging the key benefits of migrating to GA4. You may also get stuck with this suboptimal structure for a long time as it may be hard to justify starting again from scratch.


When migrating from Universal Analytics to GA4 it can be tempting to copy over the same structure of Event Category, Action, and Label, which negates the benefits of GA4's new data model. We're no longer restricted to these three, obscurely-named event parameters.


Rather than scrambling to copy every legacy event, I recommend taking the opportunity to reassess analytics requirements.


A properly planned approach to GA4 migration, led by reporting requirements, and with the help of an expert, will ensure that data is collected in a way that meets your organisation's data needs and maximises the benefits of GA4's new data model.

5 / For low-traffic sites, change reporting identity

Impact: your reports may be missing data


If you think that data for certain events might be missing from your reports, this could be the cause.


When you activate the Google Signals feature (Admin > Data Settings > Data Collection), it gives GA access to data from Google's own knowledge graph for users who have ads personalisation switched on in Google Chrome.


screenshot showing google signals is enabled
In your property, go to Admin > Data Settings > Data Collection. The checkbox at the top indicates that Google Signals is enabled.

The benefits of Google Signals are:

  • Cross-platform reporting. GA will use Google Signals data to identify users and can understand that a single user who visits across multiple devices is the same person

  • Create remarketing audiences with your GA data and share them with Google Ads

  • Demographics and interests reports

The drawback is that GA introduces something called thresholding when you have Google Signals enabled. This is designed to prevent you from inferring the identity of an individual based on your report. The result is that rows with low user counts will be withheld in your reports.


To get around this you can change the reporting identity to 'device-only'. This means that GA won't use Google Signals or User ID (another feature whereby you can send in your own custom user identifiers e.g. from your CRM). The definition of a user will be purely based on the GA cookie stored in the browser. In doing so your user count will be less accurate, but your missing data will now be available in reports.


Screenshot showing GA4 reporting identity
Go to Admin > Reporting Identity to change how GA identifies users. Note: you can go back and forth between different options without affecting the underlying data.

6 / When sending event values, you must also set the currency

Impact: the values you send in will not appear in your data


Sending in events with a value associated is recommended because it enables you to understand how the website and your marketing activity are contributing to your organisation's goals. Even if your site is not an e-commerce site and there are no transactions, you can use event values as a way of weighting the importance of different user interactions.


A common mistake is to assign a value to an event without setting the currency parameter, leading to the value not appearing in GA.

7 / Check that you're not hitting GA4's limits

Impact: data may be missing, inaccessible, or truncated.


In Universal Analytics there is a limit of 10 million hits per 30 day period. In GA4 there is no blanket limit on the total number of events you can send in but there are certain limits that you need to be aware of.


Custom Definitions


The first relates to the first issue highlighted above about setting up custom dimensions and metrics. There is a limit of 50 event-scoped custom dimensions, 25 user-scoped custom dimensions, and 50 custom metrics. Remember you need to configure these in order for your data to appear in reports in the GA4 UI.


This is also where proper planning for your GA4 migration comes in. You need to ensure a balance of keeping within the limits, whilst also naming your custom dimensions and metrics in an intuitive way for the end users of GA data.


Cardinality

Cardinality refers to the number of unique values for a particular dimension. Dimensions with a high number of unique values (>500 per day) are considered high cardinality.


The impact is that reports hit a row limit and some rows in the report are consolidated into one line labelled (other), obscuring the real story that the data is telling.


Screenshot showing data appearing on (other) row in ga4
Here 62k pageviews from multiple pages have been condensed into one row. There's no way of telling how these pageviews were distributed in reality

Check if reports are being affected by cardinality, or if there are any dimensions that have a high number of unique values.

Character limits

Event parameters are limited to 40 characters for the parameter name and 100 for the value, and user properties are limited to 24 characters for the parameter name and only 36 characters for the values.


Character limits are easy to hit and can go unnoticed until you need to use the data. Look for data that has been truncated in your reports.

BigQuery export limit

If you are using the link with Google BigQuery, be aware that there is a limit of 1M events per day for export. High traffic sites that want access to the raw data will need to upgrade to GA360.


The full list of limits in GA4 can be found here:





Comments


bottom of page