GA4 Enhanced Measurement: What It Tracks Automatically
GA4 starts collecting several events the moment the base tag installs, with no extra code - and knowing exactly which ones, and their firing conditions, prevents both duplicate tracking and false confidence in what's covered.
In short
Enhanced Measurement automatically collects page_view, scroll (at 90% depth), outbound clicks, site search, video engagement (for embedded YouTube), file downloads, and form interactions, each individually toggleable under Admin > Data Streams. It's a strong baseline, not a complete tracking plan - anything specific to your product (a purchase, a signup, a feature action) still needs its own event, and several of the automatic ones use heuristics that can misfire on single-page apps or custom-built forms.
What's On by Default
| Event | Fires on | Condition |
|---|---|---|
| scroll | Vertical scroll depth | Once per page, at 90% of document height |
| click (outbound) | Link to a different domain | Domain not in your configured domains list |
| view_search_results | A URL query parameter matching a recognized search-term pattern | Configurable query parameters under site search settings |
| video_start / progress / complete | Embedded YouTube videos with the JS API enabled | Does not cover self-hosted video players |
| file_download | A link to a recognized file extension (PDF, DOCX, XLSX, ZIP, etc.) | Extension-based detection |
| form_start / form_submit | Interaction with an on-page <form> element | Heuristic-based - can misfire on JS-driven custom form components |
Where It Falls Short
- Single-page apps. page_view fires on the initial load's history change events by default; a client-side route change that doesn't trigger a standard history API event can be missed, or a poorly configured SPA can fire duplicate page_views. See our SPA duplicate pageview QA page.
- Custom form components. form_start/form_submit rely on detecting standard HTML form elements and submission events - a form built entirely with JS state and a custom submit handler that never fires a native submit event may not be captured.
- Self-hosted video. Only embedded YouTube players with the JavaScript API enabled are covered automatically; Vimeo, self-hosted MP4, or other players need manual event tracking.
- Scroll on short or dynamically-extending pages. The 90% threshold is measured against the document height at the time of the check - infinite-scroll pages that keep extending can behave unpredictably.
Toggling & Verifying
Each category has its own on/off toggle under Admin > Data Streams > select the web stream > Configure tag settings > Enhanced measurement (the gear icon opens the individual toggles). Don't assume a category is working because it's enabled - open DebugView, perform the action (scroll to the bottom, click an outbound link, submit a form), and confirm the specific event actually appears with the parameters you expect before relying on it in a report.
Frequently Asked Questions
Does Enhanced Measurement replace the need for custom event tracking?
No - it covers common generic interactions (scroll, outbound clicks, site search, and similar) automatically, but anything specific to your business logic - a purchase, a lead-form qualification, a feature usage - still needs its own event, whether sent manually or through Google Tag Manager.
Why is my scroll tracking not firing on a short page?
Enhanced Measurement's scroll event fires at 90% of the page's vertical depth. A page whose content is shorter than the viewport, or that loads additional content dynamically below the fold without extending the initial document height, may never reach that threshold in a way the browser can measure at load time.
Can I turn off just one Enhanced Measurement event and keep the rest?
Yes - each Enhanced Measurement category (page views, scrolls, outbound clicks, site search, video engagement, file downloads, form interactions) has its own toggle under Admin > Data Streams > Configure tag settings > Enhanced measurement, so you can disable individual ones without turning the feature off entirely.
Not Sure What Enhanced Measurement Is Actually Catching?
We verify each category against your real site behavior and build the custom events it can't cover.
Get GA4 Setup HelpGet GA4 Setup Help
Tell us which Enhanced Measurement event isn't behaving the way you expect.