If your on-page audit still treats keyword density as a primary signal, you are optimizing for a search engine that retired years ago.Modern retrieval systems parse content into entities, relationships, and passage-level relevance.
Scroll-Depth Weighted Session Duration: A Better UX Diagnostic for SEO Landing Pages
Average session duration is a blunt instrument. A long session can mean a user is deeply engaged, or it can mean they are lost, waiting for a slow element, or trapped in a confusing internal link loop. A short session can signal a bounce, or it can mean the landing page answered the query instantly and the user left satisfied. The metric only becomes useful when you pair it with depth, segment it by landing page and query intent, and stop treating every session as if it should follow the same behavioral template.
Start by separating session duration from engagement time. In GA4, average engagement time per session is more actionable than the old Universal Analytics session duration because it excludes periods when the tab is inactive or the user has walked away. That still is not enough. You need to know whether the engaged time was spent consuming content, scrolling, clicking, or converting. A user who spends ninety seconds on a product page and then buys is not equivalent to a user who spends ninety seconds reading a blog post and exits without a next step. Both can be healthy, but only if the page type and query intent align with that behavior.
Depth is equally slippery. Page depth, often measured as pages per session, describes navigation breadth. Scroll depth describes content consumption within a single page. Event depth describes meaningful interactions such as filter usage, video plays, calculator submissions, or add-to-cart actions. For SEO landing pages, scroll depth is especially revealing because organic visitors often arrive with a specific question. If they scroll to seventy-five percent and then leave, the page may be thorough but missing a clear next action. If they leave above twenty-five percent, the headline, metadata, or above-the-fold answer likely failed the query.
The useful move is to build an intent-adjusted session quality model. Assign each landing page template an expected behavioral band. A transactional category page might expect one to three pages per session, high interaction with filters, and moderate scroll depth. A long-form informational article might expect two to five pages per session, deep scroll, and a click to a related guide or newsletter. A local service page might expect high scroll to pricing or reviews, a form start, and a phone tap. Once those bands exist, outliers become diagnostic rather than noise.
Implementation stays lean. Use Google Tag Manager to fire scroll triggers at twenty-five, fifty, seventy-five, and ninety percent. Send those events to GA4 with a page template custom dimension. Export to BigQuery, then join landing page and session data with Search Console query clusters. Calculate median engagement time, engaged session rate, average pages per session, average scroll depth, and conversion rate for each template plus query class. Avoid relying on averages alone; pull p50 and p90 distributions. A page with a strong median but a weak p90 may satisfy casual visitors while failing power users who need comparison data or technical specifications.
Once the data is segmented, patterns emerge. High duration, low page depth, and high scroll on a single page often means the content is absorbing, but there may be no obvious next step. High duration, low scroll, and low interaction can indicate a slow-loading hero, a video that autoplays without context, or a layout that hides the answer. Low duration, low depth, and high conversion is not a problem; it is an efficient landing page. Do not optimize the life out of it. High duration, high page depth, and low conversion suggests a research loop. The user is comparing, but the site is not giving them a decisive reason to act.
Technical caveats matter. Tab visibility, background audio, browser back-forward cache, and single-page application route changes can all distort duration and depth. Consent mode and ad blockers can thin your event stream. Internal traffic and bot filtering need to be strict. For SPAs, push virtual pageviews and custom engagement events on route changes; otherwise, depth will look artificially shallow. For infinite scroll, define what counts as a page view or a content block. A scroll event is not engagement by itself. It is a signal that needs to be weighted against the page’s purpose.
The operational loop is simple but disciplined. Segment by template and query intent, inspect duration and depth distributions, form a hypothesis about friction or mismatch, then test one change at a time. Improve content hierarchy, internal linking, call-to-action placement, page speed, or schema. Re-measure after two to four weeks with enough sessions for statistical confidence. Tie the results back to clicks, impressions, and conversions. Average session duration and depth are not ranking factors, but they are diagnostic mirrors. Used with intent, they show where search traffic lands, what it does next, and where the experience quietly breaks.


