Last updated: 21 December 2024

All you need to know about Enhanced Measurement in GA4

Nick van Maaren
Freelance Ads & Analytics expert

When you create a new GA4 property, certain events are measured by default. These are found under Enhanced Measurement, which includes page views, scrolls, outbound clicks, site search, form interactions, video engagement and file downloads. This article explains each feature in detail and outlines any additional steps needed for accurate tracking.

Where can you adjust enhanced measurement settings?

Navigate to Admin (click the gear icon in the bottom-left) > Data Streams > Click the relevant stream > Click the gear icon next to Enhanced Measurement.

Page view events

When you click on Show advanced settings, you’ll see the following 2 options:

Page loads: Page views are automatically collected as events in GA4. These page_view events cannot be disabled. A page view is triggered whenever a page loads (including refreshes).

Page changes based on browser history events: Additionally, you can configure GA4 to trigger a page_view event based on browser history events, such as when a URL changes without reloading the page. However, this does not apply if the URL contains a #. You can turn off history events.

To check whether page views are collected correctly use the Preview mode in Google Tag Manager and check both the fired tags in GTM as well as the debugview. Keep in mind that the debugview will not show data when the IP address is excluded through an active data filter.

Scroll events

An event is triggered automatically when a user scrolls past 90% of the page length. While you can send custom scroll events via GTM for other thresholds, you cannot modify the default scroll event threshold in Enhanced Measurement. The only option is to enable or disable this feature. My advice is to disable this feature and set up scroll tracking through Google Tag Manager (so that you can also track when a user scrolls to 10, 25, 50, 75% of the page instead of just the 90% threshold).

Outbound click events

When someone clicks a link to an external domain, a click event is automatically triggered, along with several parameters that identify the destination domain. Internal links or links to domains with cross-domain tracking enabled do not trigger this event.

The following parameters are sent with click events by default:

  • link_classes (CSS classes of the link)
  • link_domain (e.g., measurebase.com)
  • link_url (e.g., measurebase.com/test/)
  • link_text (e.g., “Read more”)
  • outbound (true or false)
  • link_id (CSS ID of the link)

Site search events

If your website includes a search feature, search queries are often tracked automatically when site search is enabled in Enhanced Measurement. GA4 detects specific URL parameters, retrieves their values, and triggers a view_search_results event with a search_term parameter.

The default URL parameters include:

  • q (e.g., measurebase.com?q=test)
  • s (e.g., measurebase.com?s=test)
  • search (e.g., measurebase.com?search=test)
  • query (e.g., measurebase.com?query=test)
  • keyword (e.g., measurebase.com?keyword=test)

If multiple parameters are present (e.g., https://www.measurebase.com?query=test1&s=test2), the first match (test1) is used.

You can modify the default parameters and add up to 10 custom parameters. These changes should align with your site’s search functionality.

Additional parameters can also be sent to include more details, such as selected filters. However, these do not trigger the view_search_results event but add context to the event.

Default parameters sent with view_search_results events:

  • search_term (value of the matched parameter)
  • q_%additional-query-parameter% (custom parameters prefixed with “q_”)

Form interaction events

Through form interactions you can track: (1) form_start events (the amount of times that someone has started filling in a form) and (2) form_submission events (the amount of times that someone has submitted a form) without adding any code to the website or setting up form tracking through Google Tag Manager.

GA4 will automatically track the following parameters for form-related events:

  • form_id: The HTML id attribute of the <form> element.
  • form_name: The HTML name attribute of the <form> element.
  • form_destination: The URL where the form is submitted.
  • form_submit_text: Available only with the form_submit event, containing the text of the submit button.

However, unfortunately the automatic tracking is often unreliable and I wouldn’t recommend using this function because:.

  • GA4 won’t be able to automatically track AJAX forms;
  • GA4 might track failed submissions (e.g., when a required field is left blank).

Therefore, I recommend using custom form-tracking (with Google Tag Manager) instead.

Video engagement events

You can easily track interactions with embedded YouTube videos. To enable this feature, add the enablejsapi=1 parameter to the video’s iframe src URL.

For example:

<iframe width="560" height="315" src="https://www.youtube.com/embed/S708NFbvTXI?enablejsapi=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Once set up, GA4 tracks the following events:

  • video_start
  • video_progress (at 10%, 25%, 50%, and 75% thresholds)
  • video_complete

Default parameters sent with these events include:

  • video_current_time (current timestamp in seconds)
  • video_duration (total duration in seconds)
  • video_percent (threshold reached, as a number)
  • video_provider (always YouTube)
  • video_title (video title)
  • video_url (video URL)
  • visible (1 if the video is in view, 0 otherwise)

File download events

A file_download event is triggered when users click links with specific file extensions, such as:

  • .pdf
  • .xls
  • .xlsx
  • .doc
  • .docx
  • .txt
  • .rtf
  • .csv
  • .exe
  • .key
  • .pps
  • .ppt
  • .pptx
  • .7z
  • .pkg
  • .rar
  • .gz
  • .zip
  • .avi
  • .mov
  • .mp4
  • .mpe
  • .mpeg
  • .wmv
  • .mid
  • .midi
  • .mp3
  • .wav
  • .wma

You cannot add or remove extensions from the default list.

Default parameters sent with file_download events include:

  • file_extension (e.g., pdf)
  • file_name (e.g., test)
  • link_text (e.g., Download the test PDF)
  • link_url (e.g., https://www.measurebase.com/downloads/test.pdf)

Learning track: How to set-up GA4?

This article is part of the learning track: "How to set-up GA4?" In this step-by-step guide, we’ll walk you through the entire process of setting up your GA4 tracking. You don't need any prior experience with setting up GA4 to follow these steps. Explore the other articles in this learning track below.

Discover this track

Join the community

Level up your analytics skills in our free Discord community.

Join MeasureBase
This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.