How to Track Scroll Depth in Google Analytics

Cody Schneider

Thinking your visitors are reading every word on your landing pages and blog posts? You might want to check the data on that. Setting up scroll depth tracking in Google Analytics is the best way to see how far people actually get down your pages before losing interest. This article will show you exactly how to do it.

We'll cover the easy, automatic way using GA4's built-in features, and then walk through the more powerful and customized method using Google Tag Manager (GTM).

What Exactly is Scroll Depth Tracking and Why Should You Care?

Scroll depth tracking is a type of analytics measurement that tells you how far down a webpage a user scrolls. It's typically measured in percentages - for example, it triggers an event when a user has seen 25%, 50%, 75%, and 100% of the page length.

Standard metrics like Pageviews and Users tell you that someone landed on your page, but they don't say anything about what happened next. Did they read the first paragraph and leave? Did they make it all the way to your call-to-action at the bottom? Scroll depth answers these questions.

Here's why it's such a valuable metric for marketers and content creators:

  • It's a genuine indicator of engagement. Someone scrolling 75% of the way down a 2,000-word blog post is far more engaged than someone who bounces after the first headline. It proves your content is holding their attention.

  • It helps you optimize content. If you see a massive drop-off between the 25% and 50% scroll marks on a key page, you've located a problem. Maybe your introduction isn't compelling, the page layout is confusing, or the content isn't what the user expected.

  • It measures the visibility of your CTAs. Most websites have important buttons, forms, or links partway down the page. If your scroll data shows only 30% of users ever reach your "Request a Demo" button, you know why your conversion rates are low. You can then move the button higher or improve the content leading up to it.

The Two Ways to Track Scrolling in GA4

With Google Analytics 4, there are two primary methods for tracking user scrolling. The best one for you depends on how much control and detail you need.

  1. GA4 Enhanced Measurement: This is the simplest option. It's a switch you can flick on, and GA4 will automatically track when a user scrolls 90% of the way down a page. It's zero-effort but offers very little data.

  2. Google Tag Manager (GTM): This is the professional standard. Using GTM, you can set custom scroll depth thresholds (like 25%, 50%, 75%, and 90%), giving you a much more detailed view of reader behavior. It takes a few more minutes to set up, but the insights are far more valuable.

We'll walk through both methods, starting with the quick and easy GA4 option.

Method 1: The Quick Way with GA4 Enhanced Measurement

For most new Google Analytics 4 properties, scroll tracking is already turned on by default as part of a feature called "Enhanced measurement." This feature automatically captures a handful of common user interactions, including scrolls, outbound clicks, and file downloads.

The key thing to know is that Enhanced Measurement only tracks one scroll event: when a user reaches 90% of the page depth. While this is better than nothing, it's not very helpful for identifying drop-off points earlier on a page.

Here's how to check if it's enabled:

How to Check Your Enhanced Measurement Settings

  1. In your Google Analytics account, go to the Admin section (the gear icon in the bottom-left).

  2. Under the Property column, click on Data Streams and select your website's data stream.

  3. You'll see a section called Enhanced measurement. Make sure the toggle is switched on.

  4. Click the gear icon within that section to see the specific events being tracked. Ensure that Scrolls is checked.

That's it! With this enabled, GA4 will now automatically record an event named scroll every time a visitor makes it 90% down a page. While useful, the more insightful data comes from tracking multiple breakpoints, which requires Google Tag Manager.

Method 2: The Better Way Using Google Tag Manager

If you want to understand user engagement properly, this is the method you should use. By setting up scroll tracking in Google Tag Manager, you can create events for multiple depth percentage points. This turns scroll depth from a simple yes/no metric into a progressive storyline of how a reader consumes your content.

This process has a few steps, but if you follow them carefully, you'll have a professional setup in about 10 minutes. If you haven't already, make sure you have Google Tag Manager installed on your website.

Step 1: Enable Built-in Scroll Variables in GTM

First, we need to tell GTM that we're interested in using its scroll-tracking capabilities. These "variables" are data points that GTM can capture and pass along to Google Analytics.

  • In your GTM container, navigate to Variables from the left-hand menu.

  • Under the Built-In Variables section, click Configure.

  • A panel will slide out. Scroll down to the Scrolling section and check the boxes next to all the scroll variables:

    • Scroll Depth Threshold

    • Scroll Depth Units

    • Scroll Direction

This activates GTM's ability to see and use data about scrolling.

Step 2: Create a Scroll Depth Trigger

Next, we create a trigger. A trigger is a rule that tells GTM when to do something. Our rule will be "fire when a user scrolls to specific points on a page."

  1. Go to Triggers in the GTM menu and click the New button.

  2. Give your trigger a clear name, like "Page Scroll Depth - 25, 50, 75, 90."

  3. Click inside the Trigger Configuration box, and a list of trigger types will appear. Choose Scroll Depth.

  4. Configure the trigger settings:

    • Select Vertical Scroll Depths.

    • For Percentages, enter the points you want to track, separated by commas. A common and useful configuration is: 25,50,75,90.

    • Leave the trigger to fire on All Pages. This will track scrolling sitewide.

  5. Click Save.

Step 3: Create the GA4 Event Tag

Now we create a tag. A tag tells GTM what to do when our trigger's conditions are met. In this case, when a user scrolls to 25%, we want to send an event to Google Analytics.

  1. Go to Tags in the left menu and click New.

  2. Name your tag something descriptive, like "GA4 Event - Scroll Depth."

  3. Click on Tag Configuration and select Google Analytics: GA4 Event.

  4. For Configuration Tag, select your main GA4 configuration tag (you should already have this set up if GTM is properly installed).

  5. In the Event Name field, enter scroll_depth. This is the custom name for your event as it will appear in GA4. Using "snake_case" (all lowercase with underscores) is a standard convention.

  6. Under Event Parameters, we'll add a parameter to tell GA4 which percentage was reached. Click Add Row:

    • Parameter Name: scroll_percentage

    • Value: Click the LEGO-brick icon and select {{Scroll Depth Threshold}} from the list. This tells GTM to dynamically pass the number (25, 50, etc.) that fired the trigger.

  7. Now, in the Triggering section below, click to choose a trigger. Select the "Page Scroll Depth" trigger you created in the previous step.

  8. Click Save.

Step 4: Preview and Test Your Work

Before publishing your changes live, it's critical to use GTM's Preview mode to make sure everything works as expected.

  1. In the top-right corner of GTM, click the Preview button.

  2. A new tab will open. Enter your website’s URL and click Connect. Your website will load in a new window with a "Tag Assistant Connected" badge.

  3. Go to your website window and start scrolling down the page.

  4. As you scroll, keep an eye on the Tag Assistant debug window. In the left-hand summary pane, you should see your custom scroll_depth event appear as you cross the 25%, 50%, 75%, and 90% thresholds.

  5. Click on one of those scroll_depth events. You'll see that your "GA4 Event - Scroll Depth" tag fired successfully. Click on that tag and toggle to the "Values" view to confirm that the scroll_percentage parameter is being passed with the correct number.

If you see the events firing at each threshold, it's working perfectly!

Step 5: Publish Your Changes

Once you’ve confirmed everything is working, go back to GTM, exit Preview mode, and click the blue Submit button. Give your changes a descriptive Version Name (e.g., "Added Scroll Depth Tracking"), and click Publish. Your scroll tracking is now live for all visitors.

How to View Your Scroll Data in Google Analytics 4

After about 24-48 hours, your new scroll_depth events will start showing up in GA4. To make the scroll_percentage parameter useful in your reports, you need to register it as a custom dimension first. This is a one-time step that you must do for any custom parameter you send.

Registering the Custom Dimension

  1. Go to GA4 Admin > Custom definitions.

  2. Make sure you're on the Custom dimensions tab and click Create custom dimension.

  3. Fill in the fields:

    • Dimension name: Scroll Percentage (This is the friendly name that will appear in your reports).

    • Scope: Event.

    • Event parameter: scroll_percentage (This MUST match the parameter name you set in GTM exactly).

  4. Click Save.

Data will begin populating this new dimension going forward. Now you can use it in your reports.

Building a Scroll Depth Report in Explore

  1. In GA4, go to the Explore tab and start a new Free-form exploration.

  2. In the Variables column on the left, you'll need to import the dimensions and metrics you want to use.

    • Click the "+" sign next to Dimensions. Search for and import a) Page path and screen class and b) your new Scroll Percentage dimension.

    • Click the "+" sign next to Metrics. Search for and import Event count.

  3. Now drag and drop them into the Tab Settings column to build your report:

    • Drag Page path and screen class to Rows.

    • Drag Scroll Percentage to Columns.

    • Drag Event count to Values.

You will now see a table showing a list of your website pages, with columns for each scroll percentage (25, 50, 75, 90) and the total number of times each threshold was reached. This report gives you an incredible view of reader engagement, showing you precisely which pages are holding attention and where the biggest drop-offs occur.

Final Thoughts

Learning how to track scroll depth gives you a powerful tool for understanding how people interact with your content. It moves you beyond simple traffic metrics and provides actionable data to improve your messaging, page layout, and CTA placement. Following the Google Tag Manager method is the most robust way to get granular, valuable insights into user engagement.

Of course, setting up this tracking and building reports is only half the battle. You still need to analyze the data and find insights. Instead of spending your time configuring GTM tags or wrestling with GA4 Exploration reports, we created an easier way. With Graphed you simply connect your Google Analytics account, and our AI can instantly build a live dashboard answering questions like, "Show me a report of scroll depth engagement for my top 10 blog posts" without any manual setup.