Recently I’ve been noticing increased confusion around the built-in GA4 Events as more people are starting to switch over their reporting from Universal Analytics to GA4.
Google Analytics 4 comes with built-in events available out of the box which are called Enhanced Measurement Events. You might have not touched the Data Stream settings at all, or you might have already enabled Enhanced Measurement events in your GA4 Data Stream. But do you know what they are or how they work? In this blog, I will help explain the triggers and caveats of each event, and show you how to enhance each GA4 Enhanced Measurement event for your business.
How to Enable Enhanced Event Measurement in GA4
First of all, I always recommend to my clients to enable all Enhanced Measurement Events. It’s an easy way to collect basic data from your website without any Google Tag Manager setup. You can always switch them off later or even request to delete specific event data.
To enable Enhanced Event Measurement, go to your GA4 Property > Data Stream > Enable Enhanced Event Measurement
You will be given the option to toggle individual events on and off. I always recommend to my clients to turn on all events for a few weeks to see what data they are collecting. In the next part, I will explain when exactly the events trigger, some caveats that you should be aware of, and next steps on improving the events.
Which events are automatically collected?
Note that the naming convension for events and event parameters is lowercase separated by underscores: page_view (also known as “Snake Case”). If you want to use built-in events but also have your own custom events, I would recommend keeping the snake_case naming convention for easier reporting. Although if you really don’t like snake_case, you can also rename all the built-in events into any case you want using “Modify Event” in GA4.
How are these events triggered?
These Enhanced Measurement events are triggered automatically from your GA4 tag. Whether you’ve installed it the GA4 tag via a hardcoded gtag, via a connected UA tag, or via GTM, the tag gets used the same way to send these events to your GA4 property.
Caveats of Enhanced Event Measurement
Although the automatic collection of these events is very useful, make sure you understand the caveats for each event to see if all the data you need is collected.
Scroll event is not complete
If you only turned on these events but didn’t look deeper into what kind of data they collect, you might be surprised that the ‘scroll’ event only collects 90% scroll depth. It is essentially an event to capture if someone has reached the end of the page. Although I think most marketers are used to a more detailed breakdown - it’s quite typical to expect at least 25%, 50%, and 75% scrolls along with the 90%.
Unfortunately there aren’t any settings in GA4 to enable more granular scroll tracking. This means that if you want more detailed scroll tracking, you will need to set it up via Google Tag Manager. The set-up should take a few minutes but will definitely be worth the detailed data! Watch this quick video to learn how to set up this additional scroll tracking in less than 10 minutes.
Click event is not what you might expect
When I first saw the ‘click’ event, I assumed it tracked all clicks. But in reality, this event only tracks clicks to links outside of your domain, also known as Outbound Clicks.
It’s convenient to have this event because it means you don’t need to set it up yourself in Google Tag Manager. However, I usually advise my clients to rename the event to ‘outbound_click’ to make it more clear to anyone analysing the data. Although keep in mind that this essentially creates a new event with the name ‘outbound_click’, so the data will stop populating for the ‘click’ event on the day you rename it.
This event automatically includes the following dimensions that you can use in your reporting. I would recommend to use these in conjunction with Page Location and Page Path dimensions to identify the page on which the click happened.
How to update the event nameIn Admin Settings, go to ‘Events’ and then click on ‘Modify Event’. This allows you to change the name of any event to make it more understandable for your use case or business purpose.
Form Submit event tends to trigger falsely
I noticed that the ‘form_submit’ event tends to trigger falsely, causing inflated form submission counts for a lot of websites. It’s supposed to trigger when a form is successfully submitted, but I noticed it triggers without form validation, so even when a user encounters an error or makes a mistake when filling out the form. There is also an issue if you have the Meta (Facebook) Pixel installed, which also tends to trigger the ‘form_submit’ event.
When comparing ‘form_submit’ with custom form submission events, it tends to not trigger at all for commonly used forms like Hubspot, Webflow, or WordPress forms (e.g. Contact Form 7 or Elementor). If you rely on form submission tracking for your business, the built-in ‘form_submit’ will likely not work for you and you will need to set up the form submission tracking manually.
As for the ‘form_start’ event, it triggers when a user interacts with a form’s input fields (for example clicks into it, or starts entering information into the form). I find it to be quite accurate and use it a lot to determine the drop-offs from form_start to the form submission.
Also, note that the event parameters related to form_submit and form_start events such as ‘form_id’, ‘form_name’, and ‘form_destination’ are not automatically tracked in GA4, therefore you will need to add them manually if you want to use them in reporting. Check out my blog about event parameters and custom dimensions to learn how.
Don't let your questions go unanswered. I'm here to help explain any confusing or unclear parts in the article. Reach out for further explanation or clarification.
Site Search event’s query parameter can be modified
The ‘view_search_results’ event is pretty good at collecting the queries from your Site Search function. It is the same as the data you would see in the ‘Behaviour > Site Search’ Report in Universal Analytics.
By default, this events triggers is any of the following query parameters is present in the URL on page load:
However, if you search query is something else, this is the only event that allows you to modify the query parameter in the GA4 UI itself, without going through Google Tag Manager. You can do so in the Enhanced Measurement settings:
In terms of reporting, you will be able to see the searched term under the default “Search Term” dimension in reports, which is populated for every unique search query during that session.
Video events only work for YouTube videos
Video events such as video_start, video_complete, and video_progress only work for YouTube videos which are embedded with JS API support enabled (by appending ‘?enablejsapi=1’ to the end of the video URL).
When it comes to reporting, some dimensions such as Video Title, Video provider, Video URL, and Visible are already available by default for reporting. However, ‘video_current_time’, ‘video_duration’, and ‘video_percent’ event parameters need to be registered as custom dimensions.
File Downloads event only works for direct file clicks
The File Downloads event is quite useful if you have the downloadable actually linked to on your website. However, if you send your downloadable via email, this event will not work.
The file_download event triggers on a link click to the following RegEx match, which covers the majority of popular file extensions:
For reporting, the following dimensions are available by default. If the file is hosted on the same domain, I would use ‘File name’ which returns the page path of the link including the file extension. Otherwise ‘Link URL’ or ‘Link text’ work well for reporting.
Conclusion and Next steps
In conclusion, understanding the nuanced functionality and caveats of the built-in GA4 Enhanced Measurement Events is fundamental to leveraging your data most effectively. I would recommend all businesses check the data your GA4 Enhanced Measurement events are collecting, and further improve the events that are important for your business.
In the following articles of the GA4 Series, I will be diving deeper into reporting and how to check all of these events in both Standard and Exploration reports.