How do I track scroll depth in GA4?

Applies to: Google Analytics 4 (GA4)
Last updated: May 2025


Problem

You want to measure how far users scroll on your web pages to understand content engagement—especially on long-form pages like blogs, product detail pages, or landing pages.


Solution

GA4 includes scroll tracking by default through the Enhanced Measurement feature. It automatically fires a scroll event when a user scrolls to 90% of a page’s height. For more detailed scroll tracking (e.g., 25%, 50%, 75%), you’ll need to implement a custom solution via Google Tag Manager (GTM).


Option 1: Use GA4’s Built-in Scroll Event (90%)

Step 1: Confirm Enhanced Measurement is Enabled

  1. Go to https://analytics.google.com
  2. Select your GA4 property
  3. Navigate to Admin > Data Streams > Web
  4. Under your web stream, click Configure tag settings
  5. Click Enhanced Measurement
  6. Ensure the toggle for Scrolls is ON

GA4 will now automatically send a scroll event when users reach 90% of the page.


Step 2: View Scroll Events in GA4

  • Go to Reports > Engagement > Events
  • Look for the scroll event
  • Use Explorations or segments to analyze scroll behavior by page, device, or traffic source

Option 2: Track Detailed Scroll Depth (25%, 50%, 75%) with Google Tag Manager

Step 1: Set Up Scroll Trigger in GTM

  1. In GTM, go to Triggers > New
  2. Choose Scroll Depth as the trigger type
  3. Enable Vertical Scroll Depths
  4. Enter percentages (e.g., 25,50,75)
  5. Trigger on All Pages or specific pages
  6. Save the trigger

Step 2: Create GA4 Event Tags for Each Scroll Level

  1. Go to Tags > New
  2. Choose GA4 Event
  3. Set:
    • Event Name: scroll_depth
    • Parameters:
      • scroll_percent: {{Scroll Depth Threshold}}
      • page_path: {{Page Path}} (optional)
  4. Use the Scroll Depth Trigger
  5. Save and publish

Step 3: Register Custom Parameter (Optional)

To use scroll_percent in reports:

  • Go to Admin > Custom Definitions
  • Click Create Custom Dimension
  • Name: Scroll Percent, Scope: Event, Parameter: scroll_percent

Notes

  • GA4’s built-in scroll event only tracks the 90% mark
  • GTM gives more flexibility but requires setup and testing
  • Avoid triggering scroll events too early (like 10%), as they may inflate engagement metrics