Update time: March 13, 2025
A single metric — time on page or scroll depth alone — is not reliable enough to measure real engagement. Instead of using either one, you should combine both.
In this blog post, I will explain how to use the Time and Scroll Event extension in Adobe Launch. You will set up an Adobe Analytics event that fires only when a visitor has spent a defined amount of time on a page and reached a defined scroll depth. For example, 30 seconds and 25% scroll.
Heads up! This is an engagement signal, not a precise measurement of active reading time. A browser tab can stay open while someone is doing something else.
Why Combine Time and Scroll Depth
Tracking only time on page means every background-tab session inflates your numbers. Tracking only scroll depth means a quick scan to the bottom counts as “engagement.”
Combining the two gives you a much cleaner signal. The rule fires only when both conditions are met. Here is how it plays out with a 30-second / 25% threshold:
- A visitor scrolls to 50% but leaves after 10 seconds → no event
- A visitor stays for 60 seconds but never scrolls beyond 10% → no event
- A visitor stays for at least 30 seconds and reaches at least 25% scroll depth → event fires
If you only want to track one dimension, you can set the other very small. For example, to track only time spent, set the scroll threshold to 1%.
Step 1: Install the Time and Scroll Event extension
In Adobe Launch, go to 「Extensions」——「Catalog」, Search for Time and Scroll Event, then select Install:
Most versions of this extension have no global configuration. The settings are defined later when you create the rule event.
Step 2: Create a Rule for Engaged Page Views
Create a new rule and give it a descriptive name — for example, Engaged Page View – 30s / 25%.

Set EVENTS
Under Events, add a new event with these settings:

- Threshold for time spent: 30 (unit: seconds)
- Threshold for scroll depth: 25 (unit: percentage of page height)
Both thresholds must be numeric and greater than 0. The scroll depth threshold must be 100 or less.
Step 3: Set Adobe Analytics variables
Under Actions, add your first action:
- Extension: Adobe Analytics
- Action Type: Set Variables
Configure the variables you want to send:
- Events:
event10

For better reporting context, you can also set an eVar or prop to capture the page name, content type, or threshold values.
Step 4: Send the Adobe Analytics beacon
Add a second action:
- Extension: Adobe Analytics
- Action Type: Send Beacon
Choose the appropriate beacon type for your implementation. In most page-engagement implementations, this will be a custom link tracking beacon rather than an additional pageview beacon.
Step 5: Test the Rule Before Publishing
Do not publish immediately. First, add the rule to a development library and test it.
Open your development environment and use the Adobe Experience Platform Debugger or your browser’s network tools.
Then perform the same behavior defined in your rule:
- Open a page that contains the Data Collection embed code.
- Stay on the page for at least 30 seconds.
- Scroll beyond 25% of the page.
- Check whether the rule fires once.
- Inspect the Adobe Analytics request.
You should see event10 in the Analytics request. If you added an eVar or prop, verify that its value is also present.
After the collection test passes, check Adobe Analytics DebugView or your Usage Report. Depending on your data latency, it may take 15 to 60 minutes for the event to appear.
Summary
You now have a single Adobe Analytics event that represents a more meaningful engagement signal: visitors who both spent real time on a page and actively scrolled through it.
My recommendation is to start simple — 30 seconds with 25% scroll depth — validate the request in your development environment, and then compare the metric against your existing content-performance reports. If the signal is useful, create page-type-specific thresholds rather than applying one rule across all content.
For example, a long-form blog post might use 60 seconds / 50%, while a product page might use 15 seconds / 25%. The right threshold depends on the page’s typical reading time and length.


