Misunderstood Metrics: Time on Page / Session Duration

avg-session-duration-vs-avg-time-on-pageHow can the Average Session Duration be less than the Average Time on Page?

In Google Analytics, seeing the time spent on your website or on individual pages is not as obvious as it first appears. This Misunderstood Metrics article explores the concept of time in Google Analytics…or lost time as the case may be.

Discover other Misunderstood Metrics: Next Page Path,  Sessions for Pages,  Events,  Unique Events,  Custom Dimensions,  Count of Sessions

Share on LinkedInTweet about this on TwitterShare on FacebookPin on PinterestShare on Google+Email this to someone

Lost Time in Google Analytics

time-on-page-1Google Analytics presents a lot of metrics and most people make assumptions on what they mean based on their names.

Google Analytics Time on Page and Google Analytics Session Duration are typical examples, until you discover one not-so-obvious fact: Google can’t measure the time a user spent looking at the last page of their visit to your site.

This happens because Google uses the time of the next page view to determine the time you spent looking at the current page. On the last page, there is no next page recorded, so the Time on Page is unknown (recorded as 0) and the Session Duration ends when they opened the last page.

Myth: Bounces Didn’t Read Your Page

For sessions where the user only looked at one page (a “bounce”), as in the Visitor 2 example above, the Time on Page and the Session Duration is 0. This isn’t because Google knows they left right away — it is because they didn’t have any indication of when the user left so they couldn’t calculate the Time on Page, and they consider the lack of a value means 0.

It could have been 10 seconds or 10 minutes; they don’t know, so they say 0. Did the user read your web page? They don’t know. Maybe. Maybe not. All we know is that they didn’t look at another page on your site within the next 30 minutes (that’s how long a default session lasts).

Can you assume they left without reading the page? You shouldn’t. There are some techniques you can use to see if people are actually reading your pages, even if they bounce. For a particular landing page with a high bounce rate (87%), I discovered that 80% of them were scrolling down the page after 73 seconds. These “bounces” were highly engaged with the content on the page!

(Approximately) Average Time on Page

What does this lack of data do to our metrics? With Time on Page, if the page is not the last page in the visit, the time is accurate. The problem is with exit pages: the Time on Page is zero. Google Analytics actually takes this into account when calculating the Avg Time on Page (ref), removing the influence of the lack of exit page data:

Avg Time on Page = Time on Page / ( Pageviews - Exits)

If a page does not have a high exit rate (% Exits), then the Avg Time on Page is a pretty good reflection of the real average. With a higher exit rate, you should have less confidence in the average metric because the average is based on a portion of total users.

Higher % Exit = Lower confidence in Avg. Time on Page

Share on LinkedInTweet about this on TwitterShare on FacebookPin on PinterestShare on Google+Email this to someone

(Questionable) Average Session Duration

The Session Duration metric does not have the same capability to ignore the effect of exit pages. Every session has an exit page, and if there aren’t many pages in the visit, the loss of that last page timing can have a massive impact on the total. In the extreme case of a “bounce” visit that has only one page viewed, the Sessions count is 1 but the Session Duration is 0!

In calculating the Avg Session Duration, Google uses a simple calculation (ref):

Avg Session Duration = Session Duration / Sessions

This simple calculation is heavily influenced by the lack of timing on the exit pages, especially for sites with low Pages / Session values. For this reason, using Avg Session Duration as a key performance indicator is not recommended as fluctuations in the number of pages viewed per session, the number of bounces, and the number of sessions can all influence the metric.

If you have a high Bounce Rate, the Avg Session Duration will drop significantly — even lower than the Avg Time on Page! This confuses a lot of people — the Avg Time on Page calculation removes the effect of Bounces (Exits),  but the Avg Session Duration calculation includes the Session count for those Bounces which reduces the average.

The Effect of Events on Session Duration

If you track events in your webpages, Google’s calculation of Session Duration gets a little different; the end of the session will shift to the last interaction hit. This means if you track things like file downloads with events, and if a visitor downloads a file at the end of the last page, then the session duration is calculated to the time of that event (note: This does not happen if the event is a non-interaction type).

The overall effect is to alter Session Duration for sessions with exits on pages where events occurred — something you can’t always predict. Unless you can trigger the event on all exit pages, this actually makes the measurement less consistent and therefore less useful as a key performance metric.

Bottom Line

The Google Analytics metrics for Avg Time on Page are a good indication of the time users spent looking at a page on your site if the page has a low % Exit.

Do not use the Avg Session Duration as a key performance indicator as it is heavily influenced by Pages / Session, Bounce Rate and Sessions count.

Related: Misunderstood Metrics: Sessions for Pages

Share on LinkedInTweet about this on TwitterShare on FacebookPin on PinterestShare on Google+Email this to someone

Comments: (moderated, no spam)

  1. 7Driver

    Great explanation – thanks.

    I was looking at our newest pages with Avg. Time on Page over four minutes – yet I was seeing session durations of well under a minute.

    The difference in the way Google calculates these metrics goes a long way to explaining that.


  2. Leo

    Suggestion for Google regarding this issue:

    If no engagement hit, can GA get the time when the user lands to another domain? No need to know the domain name they go (for privacy), just the time , so GA can calculate the proper last page duration.

    what do you think


    1. mike_sullivan

      If there is no ‘exit’ event in the browser sent to Google, there is nothing for Google to record. It is up to the browser to decide if it wants to send anything to Google; with the popularity of ad blockers rising, I doubt the browser vendors would be successful with that kind of tracking being added.

  3. Ian

    Really helpful article. Puts into simple terms something which all of the GA help pages have failed to do.

  4. Bridget

    I’m with Mike on this. It sounds to me like your Google Analytics might be wrongly installed and recording two pages for each page actually visited. I found something similar on a client site a month or so ago.
    The GA code was in twice. Once in the page template itself (WordPress), once in the Yoast GA for WordPress plug-in. A classic case of developer and user not quite communicating properly!

  5. Sonal Goyal

    Thanks, I had been very confused about the session duration and this article was very helpful.


Leave a Reply

Your email address will not be published. Required fields are marked *