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 how long people stayed on your site 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. Murray Finlayson

    Excellent post, thanks Mike.
    But doesn’t this make the standard GA ‘Engagement’ report redundant, since it is based on Session Duration?

    1. mike_sullivan

      The standard report is not redundant — you just have to understand what the numbers are actually telling you. The 0-10 second bar includes all the single page visits. The difference between the number of sessions and the number of pageviews gives you the actual short-duration pageviews where the user looked at another of your pages (typically a navigation step).

  2. Sunil Pasbola

    You are right Sofie this is very strange. How is it possible that a page with 100% bounce rate can register average time on page. Interestingly, the pages with 100% bounce rate on my site shows highest average time on page.

  3. P

    This is VERY helpful… but I have one question that remains a mystery:
    In Google Analytics, I have MANY visits from unique visitors (1 unique visitor and 1 session) who have 2 page visits and an Avg Session Duration of… zero! And they have the SAME entry and exit page. So I am guessing it looks something like this:
    landing page-another page-landing page… which gives 2 pages visited, ok fair enough… but since the person visited more than 1 page, how is it possible to have zero session duration?? Shouldn’t it be at least 1 second?? I ask this because as soon as the person changes pages, there is an “event”, which should register as more than 0 seconds? Or does that mean these visits are robots who click very fast between a few pages? Any clarifications on this would be VERY appreciated!

    1. mike_sullivan

      Even if a bot loaded the page twice, there would be a page loading delay that would create a session duration greater than 0.

      Check your page for a duplicate copy of the Analytics tracking snippet. It would log two pageviews for a single loading of your page, and they could occur in less than 1 second.

  4. Sofie

    What I don’t get in this case, is how it’s possible that I have posts with a bounce rate of 100%, but that still have an avg time shown for them? If these posts are the last page, they shouldn’t have time logged, should they?

    1. mike_sullivan

      Sometimes is only takes one session to create a time on page. 99.999% could be bounces, but that 0.001% is all it takes for the time on page.

      It could also be cause by interaction events on the page causing a time to be recorded even though it is an exit page.

  5. Daniel Mayer

    Hi, great article. I have a client which is looking at a report with the dimension Page, and metrics sessions and time on page. Is a strange report, however, there are a lot of pages with time on page and without sessions. Do you know why could it happen?



Leave a Reply

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