GA4 enhanced measurement: what each setting does and when to disable it

Key Takeaway

Enhanced measurement auto-tracks scrolls, outbound clicks, site search, video engagement, and file downloads. But several of these fire on every page load regardless of relevance, creating noise. Disable the ones that do not match your measurement plan.
Intermediate

Enhanced Measurement in GA4 is one of the platform's most convenient features for new implementations. Enable it once and GA4 automatically tracks seven categories of user interactions without any code changes or GTM configuration. The problem is that automatic tracking without understanding its limitations leads to data that looks complete but is quietly wrong in specific ways. This article explains what each Enhanced Measurement event actually captures, the specific situations where each one should be disabled or replaced, and how to audit an existing setup for issues.

How enhanced measurement works

Enhanced Measurementevents are triggered by GA4's JavaScript listening to specific browser events: URL changes, scroll position updates, link click events, form interactions, video state changes, and file download link clicks. The tracking happens client-side, subject to all the limitations of browser-side JavaScript: ad blockers can suppress it, SPA navigation can confuse it, and some site architectures may trigger it at incorrect moments.

Go to Admin > Data Streams > click your web data stream. Enhanced Measurement is displayed with a master toggle and individual toggles for each event category when you click the settings button within the stream detail view. Confirm the stream itself is healthy first usingGA4 data stream validation.

Setting
Safe to enable by default?
Page views
Conditional, safe for traditional sites
SPAs (React, Next.js, Angular) often generate duplicate or missing page_view events; disable and implement custom route-change tracking
Scrolls (90%)
Yes, useful first-pass engagement signal
Fixed 90% threshold only; replace with custom GTM scroll depth trigger if you need multiple thresholds
Outbound clicks
Yes, low risk for most sites
If cross-domain tracking is configured, confirm GA4 is not double-counting outbound clicks to your own properties
Site search
Conditional, only if URL contains search term
Disable if search is JavaScript-powered without a URL query parameter, or if your query parameter is not one of the five defaults
Form interactions
Use with caution, because browser submission behavior is not the same as a confirmed lead or completed form workflow
Can overcount business-successful submissions on complex forms; replace with custom tracking when you need a strict success definition
Video engagement
Conditional. YouTube embeds only
Does not work with Vimeo, Wistia, JW Player, or any non-YouTube platform; disable and implement platform SDK tracking
File downloads
Yes, reliable for most implementations
Replace with custom tracking only if you need custom parameters (document title, category) beyond what Enhanced Measurement provides

Page views

GA4 automatically fires apage_viewevent on every page load. The Enhanced Measurement panel does not include a page_view toggle, but the automatic page_view can be suppressed by settingsend_page_view: falsein the GA4 Configuration tag or gtag config call.

The issue arises with Single Page Applications (SPAs) built with React, Angular, Vue, or Next.js. When users navigate between SPA routes, the URL changes but the page does not fully reload. GA4's page change detection listens for browser history state changes and fires a page_view on these virtual navigations, but accuracy varies significantly depending on the SPA's routing implementation. For SPAs, disable automatic page_view (via send_page_view: false in the GA4 Config tag) and implement custom page_view events in GTM triggered by route change events — see ourGA4 property configuration checksguide for the related stream and tag settings to review.

Scrolls

Thescrollevent fires when a user scrolls to 90% of the page depth for the first time on a page load. The 90% threshold is fixed and cannot be changed through the Enhanced Measurement panel. Keep it for any site that wants a basic engagement signal. Disable it and use a GTM Scroll Depth trigger if you need configurable thresholds (25%, 50%, 75%, 90%).

Outbound clicks

Theclickevent fires when a user clicks a link to a different domain. The parameteroutboundis set to true for these events. If you have cross-domain tracking configured, GA4 excludes configured domains from outbound click tracking automatically. Build a custom GTM implementation if you need custom parameters beyond what Enhanced Measurement provides per click.

Site search

Theview_search_resultsevent fires when a URL contains one of five default query parameters: q, s, search, query, or keyword. Keep it if your site uses standard search URL formats. Disable it if your search is JavaScript-powered without URL updates, or if your query parameter differs from the five defaults.

Form interactions

Form interactions are one of the riskiest Enhanced Measurement categories for business reporting. GA4 listens to browser-side form behavior, which does not always match your definition of a successful lead, signup, or checkout step. On complex forms, disable Form Interactions and replace them with custom tracking that fires on a confirmed success state you can verify — seeauditing custom events in GA4for the schema and naming patterns to follow.

Video engagement

Video engagement events (video_start,video_progress,video_complete) only work with YouTube videos embedded using the standard iframe API. They do not work with Vimeo, Wistia, JW Player, or any other platform. Disable if non-YouTube videos are present and implement platform SDK tracking instead.

File downloads

Thefile_downloadevent fires when a user clicks a link with a file extension matching a predefined list including pdf, xls, xlsx, doc, docx, zip, and common media formats. This is one of the most reliable Enhanced Measurement events because it detects file extensions in href attributes. Keep it enabled unless you need custom parameters like document title or category that Enhanced Measurement does not provide. Validate that file_download is firing as expected usingGA4 debug modebefore assuming it is reliable on every page template.

Not sure which Enhanced Measurement settings are causing issues on your site?

Enhanced measurement: validate, fix, and monitor

Validate

  • Review each enabled Enhanced Measurement setting against your site type. SPAs, JavaScript-powered search, and non-YouTube video all need special attention
  • Check for double-counted events: if you have a custom GTM tag and the same Enhanced Measurement event both enabled, events will fire twice

Fix

  • Disable Form Interactions and replace with a custom GTM tag that fires on thank-you page load or a dataLayer event from your form processor
  • Disable Enhanced Measurement events that fire false positives for your site type, each one can be toggled individually without affecting the others

Watch for

  • Double-counted events after deploying new GTM tags, if you add a custom page_view or scroll event tag without disabling the Enhanced Measurement equivalent, both will fire

Enhanced measurement audit checklist

  • Form Interactions is disabled and replaced with custom GTM tracking that fires on successful form submission only
  • Site Search configuration is tested to confirm it correctly captures search terms from your URL format
  • Video Engagement is disabled if non-YouTube videos are present and replaced with platform-specific tracking
  • Scroll tracking is supplemented or replaced with multi-threshold custom tracking if scroll depth beyond 90% is needed
  • SPA sites have disabled automatic page_view and implemented custom route-change-triggered page views
  • No Enhanced Measurement event is double-firing with a custom GTM implementation of the same event

Audit your enhanced measurement configuration

GA4 Audits checks each Enhanced Measurement setting against your site type and flags double-firing events, PII risks, and SPA issues.

Audit findings should be reviewed by a qualified analyst before they are used for major reporting, media, or implementation decisions. Review your findings

GA4 Audits Team

GA4 Audits Team

Analytics Engineering

Specialising in GA4 architecture, consent mode implementation, and multi-layer audit frameworks.

Share