Revisiting the bounce rate

Bounce rate for Firefox

Every month, I get quite a few questions about the bounce rate, a metric that is supposed to provide insights into visitor engagement.

How much time did users really spend on a given page?

Did they find what they were looking for?

Why the heck do they leave my site right away instead of browsing more pages?

How can my bounce rate help me make sense of this?

Should I consider that a “bounce” occurs after 10, 15 or 30 seconds? This post is an attempt at demystifying a common metric that is still used and abused. I will cover how to define and calculate the bounce rate, how to analyze it and how to use it to improve your digital marketing campaigns.

Defining the bounce rate

Let’s start with the basics and define what the bounce really is:

The percentage of visitors (users) who enter the site and then leave (“bounce”) rather than continuing on to view other pages within the same site. It is expressed as a percentage and represents the proportion of visits (sessions) that end on the first page of the website that the visitor (user) sees.

Formula:  Total number of visitors (users) viewing one page only / Total entries to page

Source: Wikipedia

Sounds fairly simple, right? Good. Did you notice something though? At no point does the formula take the time spent on the page prior to leaving the site into account. Sure, there are workarounds but we’ll cover those later in this post.

So a bounce is essentially a one-page session in which the time spent on site is exactly 0 minutes and 0 seconds. Someone found my site (regardless of the marketing channel), landed on a page (any page, really), stayed on said page for an undetermined amount of time and then either:

  • left the site (through an outbound link for instance)
  • closed a browser tab or window
  • closed their browser altogether
  • shut down their device (and the browser along with it)
  • pulled the computer’s power cord from its socket (aka cleaning lady syndrome)
  • waited the standard amount of time after which a session expires after no activity (30 minutes by default although this is configurable)

Are we all clear? Good. Now let’s talk about time on site.

Why does my bounce rate reduce my average time spent on site?

As we hinYour bounce rate is measured using timestampsted at earlier, a bounced session is credited with a time spent on site of 0 seconds.

Why is that, you ask? It’s got to do with timestamps.

When a user lands on a page equipped with Google Analytics tracking, the tracking code executes and provides Google Analytics with a time marker called timestamp containing the exact date and time of the current session down to the second. This timestamp is in Unix Epoch format, which counts the number of seconds since January 1, 1970. For your information, this timestamp system will fail in 2038 but I digress.

Let’s take a look at how session usually takes place:

  1. User lands on page containing analytics tracking. Let’s call it Page A. The exact moment of my landing on Page A is 8:38:32PM on Tuesday, November 1st, 2016. Google Analytics will register a timestamped pageview (along with a session) on its servers. The timestamp will read 1478029112.
  2. Try this at home: you too can convert dates to timestamps!
  3. User finds site content engaging and browses on to the next page, which we will call Page B. The exact time of my arrival on Page B is 8:40:18 PM. Google Analytics registers another pageview, this time with a timestamp value of 1478029218.

For all intents and purposes, let’s assume that the session ends on Page B. We have no reliable way of knowing how much time was spent on Page B but we definitely have a timestamp for Page A and another for Page B. Because of that we can simply substract Page A’s timestamp from Page B’s to find the time spent on Page A.

Back to the blackboard:

1478029218 - 1478029112 = 106 seconds = 1 minute and 46 seconds

That’s 1 minute and 46 seconds spent on Page A before browsing on to Page B.

Except that in the case of a bounce, all we get is a timestamp for the bounced landing page. Because I don’t have a timestamp for a Page B, my time spent on page is going to be 0 seconds. Mathematically speaking, the more bounced sessions my site receives, the more my average time on site metric will tend towards 0 seconds.

As a follow-up, this timestamp issue applies not only to bounced sessions but also to time spent on the last page in a session.

Don’t get confused by averages!

Google Analytics provides lots of great reports out of the box, such as the one below:

The darker blue curve shows the bounce rate and the lighter blue curve shows time spent on site. You will notice that when the bounce rate goes up, the average time spent on site drops.

This translates into the related report table:

In the table above, we are taking the example of a fairly unpopular landing page, sporting a limited number of sessions. This is just to show you that a bounce rate of 100% leads to an average session time of 0 minutes and 0 seconds.

That bounce rate of 100% is of course an extreme case but very real case. But what about high bounce rates? Let’s take a look at a “classic” bounce rate of, say, 75%. 75% bounce rate means that 25% of sessions see more than one page during the session, thereby feeding more time to my average time on site metric. Unfortunately, the bounces are weighing my averages down with null session durations. We would need Google Analytics to show median values but those are not available at the moment.  What can we do about that? Let’s call segments to the rescue!

Let’s go back to that report we saw earlier and let’s apply segments. Segments allow you to zoom in on a subset of your data, based on sessions or users. Let’s use the built-in segment “Non-bounces sessions” on top of the default “All sessions” segment and click Apply.
When applying both segments, I can now see two sets of data, one for each segment.

Notice how my pages per session average had been impacted by my high bounce rate?
My average time spent is now a lot more significant too! This new information tells me that users that browse beyond the landing page are more engaged with my content than initially thought: they stay longer and consume more content.

Keep in mind that your bounce rate is too often shown as a average bounce rate for your entire site. If you site is poorly indexed with search engines (with low use of deep pages as landing pages), most of your traffic will land on the home page. This means the home page will account for the bulk of bounce sessions and will skew the bounce rate for the rest of the site – or channel it in one convenient place, depending on your point of view.

On a well-indexed site with lots of content however, landing on deep pages is very common. These pages have their own bounce rate so do pay attention to the bounce rates of individual pages or tactical page groups. This is very often more important than examining the site’s overall bounce rate.

So what does it all mean?


Kitten videos increase your bounce rateAs Avinash Kaushik would say in his book Web Analytics 2.0, the bounce rate is very often the way visitors use to tell you they don’t like your site. Avinash paraphrased Julius Caesar: I came, I saw, I puked. Again, the bounce rate tells you how many visitors leave your site immediately after viewing a single page.

Is it because they don’t like your site’s design?

Is it because your site’s content does not appeal to them?

Maybe, but that may not be the only reason.

All you can be certain of with the bounce rate is that users saw a page and nothing measurable happened within the next 30 minutes.

For all you know, you landing page contains a YouTube video player and the visitor got mesmerized by videos of kittens. Instead of spending 3 minutes on the page, they are stuck in awe of the little furballs and become self-aware 1 hour later and decide to actually keep browsing by clicking another link in the page. Unfortunately, that click happens outside of the industry standard 30-minute window after which a session expires, meaning that the click ends a bounced session and starts a new session.

So what’s a good bounce rate?

There is no clear-cut answer to this question. No ideal bounce rate but of course, lower is always better. However, if you see your bounce rate go below 20%, it is generally a sign that you’re experiencing issues with your tracking code – specifically multiple Google Analytics calls per page. Try to shoot for a bounce rate 60% and lower.

Analytics tricks to improve your bounce rate

Before worrying about hacking your bounce rate, you need to focus on two areas, which are  persuasion & ergonomics.


  • Ergonomics: how to optimize  a site/app in order to facilitate usage by visitors
  • persuasion: how to get users to interact with the site the way we want them to

A few recommendations:

  • Write quality copy/content (paging Captain Obvious)
  • Write copy relevant to the page/intended audience
  • Simplify your menus and navigation structures
  • Highlight on-site search: sessions with searches convert more
  • Use paging for long articles
  • Use A/B testing on content templates
  • Desperate? Use a call to action (tracked by a Google Analytics event)  that triggered upon closing a tab or a window

Advanced bounce measurement techniques

The following method uses Google Analytics to measure visitor engagement despite bounced sessions. Using some tracking code, you can have a landing page trigger an event after a predefined amount of time.

The Google Analytics code for this event would look like so:


You can attach the above code to a JavaScript timer function, to be fired after, say, 30 seconds. You can also use a duration based on average time it takes to read the total number of content words in the page. For instance, assuming it takes 60 seconds for the average human to read 200 words, if your copy contains 500 words, it would take 500 / 200 * 60 = 150 seconds to read those 500 words.

With a bit more code, you can get the number of words in your page copy and trigger the event code above after a number of seconds like those 150 seconds we calculated before.

Using this method allows you to compare bounced visits with bounced visits that triggered the event, using an events reports coupled with the Non-bounce sessions segment That way you can better illustrate the fact that when visitors come to your site (or a given page), they stay for at least that pre-determined amount of time before leaving, suggesting they have had sufficient time to interact with your content/features.

In closing

Do not worry too much about your bounce rate.

Sure, it is an important key performance indicator but you should focus your efforts on your conversion rate first and then work on user retention – and bounce rate.

Losing visitors sounds bad but it usually is better to understand how to make visitors convert instead of trying to keep them on the site at all costs.

Do you have questions or comments about your bounce rate? Feel free to post in the comments!

Author: Julien Coquet

Expert de la mesure d’audience sur Internet depuis plus de 15 ans, Julien Coquet est consultant senior digital analytics et responsable produit et évangélisation pour Hub’Scan, une solution d’assurance qualité du marquage analytics. > A propos de Julien Coquet

One thought on “Revisiting the bounce rate”

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.