What is scroll depth?
How far down the page somebody got, as a percentage of its height.
The script tracks the deepest point reached during the visit and sends it as part of an engagement event - the same event that carries time on page. There’s no polling timer running in the background; it’s flushed when the reading settles or when somebody scrolls deeper.
The useful form is a goal. Scroll depth is one of the three goal kinds, alongside a page pattern and a custom event. Create one, set the threshold, and optionally narrow it to a set of pages:
- Go to Site settings → Goals.
- Add a goal, choose Scroll depth.
- Set the percentage - 50% and 75% are the usual ones.
- Narrow it to a page pattern if you want it to mean something specific, like
/blog/*.
Now “reached 75% of an article” is a conversion you can put in a funnel, break down by source, or compare across campaigns. That’s a far better read on whether people are reading than bounce rate, which can’t tell a two-second bounce from a four-minute one.
As a raw metric, scroll_depth lives in the query engine and the API rather than on one of the six dashboard tiles. If you want it as a number in a report of your own, that’s where to get it.
Two caveats. On a very short page everyone reaches 100% without reading anything - the viewport already covers it. And a goal only counts from the moment you create it, because goals don’t backfill. Make the ones you want now.
More on the dashboard and reports
Didn't answer it? Email help@feasible.lol. A person reads it, and if the answer belongs here we'll add it.