How to Track Scroll Depth in Google Analytics 4
Wondering if visitors are actually reading your content or just glancing at the headline before bouncing? Metrics like pageviews and time on page often fail to tell the full story. The real measure of content engagement isn't just that someone landed on your page, it's how far down they cared enough to read. This is where scroll depth tracking comes in.
This tutorial shows you exactly how to track and analyze scroll depth in Google Analytics 4. We'll cover how to find the data GA4 captures automatically and, more importantly, how to build a custom report to see which specific pages are keeping your readers hooked.
What Exactly is Scroll Depth (And Why It Matters)
Scroll depth measures how far a visitor scrolls down a specific webpage, usually expressed as a percentage of the total page height. For example, if a user reads halfway down your new blog post, they have a scroll depth of 50%.
Why should you track this? In the age of content marketing, scroll depth is one of the most honest engagement metrics you have. It answers critical questions that surface-level data can't:
- Is our content truly engaging? A visitor can have a long "Time on page" just by leaving your article open in a background tab while they make coffee. Scroll depth tells you if they were actively consuming your content.
- Where do people lose interest? By tracking different scroll milestones (like 25%, 50%, and 75%), you can pinpoint the exact spots on long pages where users give up and leave. This is invaluable for optimizing content flow and placing key information.
- Are our CTAs being seen? You might have the world's most persuasive call-to-action placed at the bottom of your landing page, but if only 10% of users ever scroll that far, it's virtually invisible. Scroll data helps you optimize CTA placement for maximum visibility.
For any business that relies on blog posts, long-form sales pages, case studies, or detailed product pages, understanding scroll depth is fundamental to improving performance.
The Good News: GA4 Automatically Tracks Scroll Depth
One of the biggest upgrades from the old Universal Analytics is that Google Analytics 4 tracks key user interactions out of the box. Scroll depth is one of them. This is part of a feature cluster called "Enhanced measurement," and for most new GA4 properties, it's enabled by default.
Specifically, GA4 automatically fires a scroll event every time a user scrolls past the 90% threshold on a page for the first time. This is a great starting point, essentially telling you who "finished" reading your content.
You can (and should) quickly verify that this setting is turned on.
How to Check if Enhanced Measurement is On
- Navigate to the Admin section of your GA4 property (the gear icon in the bottom-left).
- Under the Property column, click on Data Streams.
- Click on the specific web data stream you want to check.
- Look for the Enhanced measurement section. If it's on, you’ll see a blue toggle. Click the gear icon on the right to see the details.
- A new panel will slide out. Ensure that Scrolls is one of the toggled-on options. If it is, you're all set! GA4 is already collecting your 90% scroll data.
Where to Find Basic Scroll Data in GA4
Since GA4 treats a 90% scroll as a standard event, you can find the aggregate data in your main events report. To see it:
- Go to Reports in the left-hand navigation.
- Expand the Engagement section and click on Events.
- You'll see a list of all events tracked on your site. Scroll down or search until you find "scroll."
Here, you can see the total Event count — the number of times users have scrolled past that 90% mark across your entire website. But this is where the usefulness of standard reports ends. This view is nice, but it doesn't answer the most important question: which pages are people scrolling on?
To get that level of detail, we need to build our own report.
How to Build a Custom Scroll Depth Report by Page
The best and most flexible way to analyze your data in GA4 is with the Explore section. Explorations let you drag and drop different dimensions and metrics to build custom reports that aren't available out of the box. Let's build one right now to see scroll depth by page.
Step 1: Create a New Free Form Exploration
Navigate to Explore from the left-hand menu and click on Free form under the "Create a new exploration" section.
Step 2: Import Your Dimensions and Metrics
An exploration starts as a blank canvas. You need to tell it what data to pull. In the 'Variables' column on the left, we'll import the building blocks we need:
- Dimensions: These are the attributes of your data - the "what."
- Metrics: These are the quantitative measurements - the "how many."
Step 3: Build the Report Canvas
Now that your ingredients are imported, drag and drop them from the 'Variables' panel to the 'Tab Settings' panel to build the report:
- Drag Page path and screen class from Dimensions and drop it onto the 'Rows' box.
- Drag Event count and Total users from Metrics and drop them onto the 'Values' box.
You should now see a table showing every page on your site and the total user and event counts for each. But right now, this is showing all events. We need to filter it to show only scroll events.
Step 4: Filter the Report for Scroll Events
This is the most critical step. Over in the 'Tab Settings' panel, at the bottom, you'll see a 'Filters' box.
- Drag Event name from your 'Dimensions' list and drop it into the 'Filters' box.
- A configuration box will appear. Set the conditions as follows:
- Click the blue Apply button.
Success! The table will instantly update. The 'Event count' column now shows the total number of times the scroll event (our 90% scroll marker) was triggered for each unique page path. You can now sort this table by 'Event count' to see which of your articles and pages are most likely to be read to completion.
Going Deeper: How to Track 25%, 50%, and 75% Scroll Depth
For longer content, knowing who finished (90%) is good, but knowing where they dropped off is better. To track milestones like 25%, 50%, and 75%, you'll need a little help from Google Tag Manager (GTM). While a full GTM tutorial is beyond this article, the concept is straightforward.
The GTM Process in a Nutshell:
- Use the "Scroll Depth" Trigger: GTM has a built-in trigger type for this. You can configure it to fire when a user scrolls past specific vertical percentages (e.g., enter "25, 50, 75").
- Create a GA4 Event Tag: This tag will send event data to your GA4 property whenever the trigger fires.
- Capture the Percentage with a Parameter: When configuring the tag, you can add an event parameter to capture which percentage was reached. A common practice is to create a parameter called
scroll_percentageand set its value to GTM's built-in{{Scroll Depth Threshold}}variable. - Register the Parameter in GA4: For your new parameter (
scroll_percentage) to appear in reports, you must register it as a Custom Dimension in the GA4 admin area (underAdmin>Custom definitions).
Once this is set up, you can build a new Exploration report just like we did before. However, now you'll be able to filter for your new custom event and add your scroll_percentage custom dimension to the 'Rows' to see a full breakdown of how many users reached each scrolling milestone on your key pages.
What Do You Do With This Data? 3 Actionable Ideas
Gathering data is only half the battle. Here's how to turn these scroll depth insights into action:
- Identify Your Best Content Format: Filter your report for blog posts and sort by the scroll percentage (Scroll Events / Total Users). What do your top five pages have in common? Are they listicles? In-depth tutorials? Do they use more images or videos? Use this to build a template for future content.
- Optimize Key Landing Pages: Look at the scroll report for a critical sales or opt-in page. If you see a major drop-off between the 25% and 50% marks, you know there's something in the top half of the page that's turning visitors away. This gives you a specific area to focus your A/B testing efforts on - rewording headlines, simplifying text, or changing an image.
- Improve CTA Placement: If an important page has a scroll rate of 30% to the 90% mark, you know your end-of-page CTA is being missed by 70% of visitors. This is a clear signal to add a CTA higher up on the page or use a sticky sidebar banner to make it more accessible.
Final Thoughts
Tracking scroll depth moves you beyond vanity metrics to understand true content engagement. By using GA4's built-in tools and creating a custom Exploration report, you can finally connect your content efforts to what your audience is actually reading, giving you concrete data to make smarter marketing decisions.
While building these custom reports in GA4 is a powerful skill, it can be time-consuming to recreate them every time you need an update. We created Graphed to simplify this process entirely. After a quick one-click connection to your Google Analytics account, you can skip the manual report building and just ask, "Show me a list of my top 10 blog posts by scroll Events for last month." We build the dashboards and reports for you instantly, and they stay updated in real-time, giving you more time to act on insights instead of hunting for them.
Related Articles
What SEO Tools Work with Google Analytics?
Discover which SEO tools integrate seamlessly with Google Analytics to provide a comprehensive view of your site's performance. Optimize your SEO strategy now!
Looker Studio vs Metabase: Which BI Tool Actually Fits Your Team?
Looker Studio and Metabase both help you turn raw data into dashboards, but they take completely different approaches. This guide breaks down where each tool fits, what they are good at, and which one matches your actual workflow.
How to Create a Photo Album in Meta Business Suite
How to create a photo album in Meta Business Suite — step-by-step guide to organizing Facebook and Instagram photos into albums for your business page.