Improve the Accuracy of Average Time on Page

by Carlin Leung

Originally published on the Quietly Blog

In today’s data-driven climate, publishers can collect countless details about reader behaviour. If you’ve been in the game a while, you know that there’s always an opportunity to fine-tune your analytics software. Amongst the noise of various reporting tools, it can be easy to breeze past Google Analytics’ “average time on page” metric—average session duration and average time on page metrics aren’t always very accurate. But with some tweaking, Google Analytics’ average time on page can play to your advantage in the long run.

By default, Google Analytics can’t determine when a visitor leaves a site: average time on page isn’t tracked on bounced visits, nor is it tracked on the last page of multi-page visits to your site. So how can you tweak your pages to achieve customized, precise feedback from Google Analytics? Here are a few tactics that will help.


Basic Method: Implement Interaction Events

Interaction events are scenarios where visitors interact with your site in some way. Technically, any event can be set up to be an interaction event, but analysts will typically use interaction events to record clicks, form submissions, and video plays.

Interaction events also improve accuracy of time-based metrics in Google Analyticseach time an interaction event is triggered, Google Analytics logs a timestamp, updating the total time spent on that page. Strategically implementing interaction events allows you to reduce the margin of error of time-based metrics, since Google Analytics is able to measure the time spent on a page up until the user’s last interaction, rather than the user’s last pageview.

Here are a few common events you can put in place to improve both time and user behaviour tracking.

  • Clicks on external links: any links that lead away from your site.
  • Clicks on non-link interactive elements: interactions with elements like interstitials, pop-ups, videos, slideshows, and carousels.
  • Form submissions: inputting and submitting information.
  • Scroll depth: how far a user is scrolling.

Once you’ve set up interaction events, Google Analytics will monitor each occurrence, and the total time on a page will be updated each time one of these events are fired.

Here’s an example. Let’s say you have a 5,000-word blog post, and noticed the bounce rate for that page was 95%—significantly higher than the site average! That means the average time on page metric for that post is based off only 5% of sessions, and unlikely to be representative of your actual visitors. In this case, you could track scroll depth as an interaction event to improve the accuracy of this metric.

When implementing scroll depth tracking, you decide that you want to know each time a user scrolls through at least a quarter of the page, so you set up interaction events to fire at 25%, 50%, 75% and 100% of the page. Now, whenever a visitor scrolls through a quarter of the page, an interaction event (and therefore a timestamp) will be sent to Google Analytics. In other words, Google Analytics now knows when users are scrolling past each point of the page, and updates that session’s time on page metric accordingly.

Now, if a user bounces after reading 50% of the story, you’ll know how long it took them to get to the 50% mark. This is then averaged across all your other visitors’ sessions to provide a more accurate average time on page. After making this change, you might notice your bounce rate drops—let’s say, it drops to 60%. Now you know that your average time on page metric is representative of 40% of your site visitors, which is a much more significant sample of your site’s visitors.

Keep in mind, this method isn’t bulletproof. If a visitor scrolls to 60% of the page, then stops there for 10 minutes before bouncing, you won’t be able to capture that last 10 minutes (since you only fire interaction events at every 25% of the page). Implementing other interaction events can help you further triangulate the actual time on page for visitors like this. But what if this visitor actually stopped reading after scrolling to 60%, but left the page open while they went to do something else in those 10 minutes? You’ll have to take that into consideration as well.


Advanced Method: Adjust Session Timeout 

Another strategy to improve the accuracy of average time on page is to adjust your session timeout. Session timeout is when a session is ended automatically after a specified period of inactivity. Inactivity occurs when there are no interaction events triggered or new pageviews initiated—when your user is working on many browser tabs at once, for example, or takes a break from their machine.

By default, session timeout in Google Analytics is set to 30 minutes. The half-hour time frame is useful for culling sessions in which people have left their windows open and moved on to something else. The default setting has a downside, however, in that it creates opportunity for abnormally long average session durations. A user could open your webpage, move on to another tab for 29 minutes, and then come back to read and engage, all of which would count as one long session—despite the user not being engaged with your content for much of the registered time frame.

For most content sites or blogs, 30 minutes is not a realistic amount of time to spend reading a page. A good way to establish the appropriate amount of time for your timeout is to add a buffer to your average session duration time. For example, if your average session duration is 5 minutes, a 10 minute session timeout will work nicely.

By reducing the timeout limit, you can build a more accurate record and remove extreme outliers from your data mix, thereby lowering your chances of having skewed numbers.


Lightning Round: Save Your Content From Session Timeouts

A caveat for the session timeout technique: when adjusting your timeout limit, be sure to consider scenarios where someone may not be engaging by clicking or scrolling but could still be involved in a session. For example, long videos would cause a stretched session that is seemingly idle, even if the user is still engaged and watching the video. Timing out such sessions would be an inaccurate representation of your users’ experience.

Similarly, if you’re not tracking scroll depth as an interaction event on your site, longform articles could also result in session timeouts if the user isn’t required to interact with anything. Be sure to monitor such scenarios to ensure accurate tracking. Generally, it’s best to implement session timeout methods only after you’ve also established—and tested the results of—interaction events on your site.

Average time on page is a fundamental metric to understanding your content’s performance, and any improvements to the accuracy of that tracking sets you ahead of the competition. Test and hone your techniques for gathering accurate insights on what visitors are actually doing on your site, and the route to effective content is an open road.

Want to chat data, marketing, or education?

Carlin Leung © 2020