Bounce Rate Calculator

Bounce rate under both definitions, the Universal Analytics one and the GA4 engagement one, from the same sessions, with the gap between them.

Enable JavaScript to customise; default output below.

A bounce under the old definition: one page view and nothing else, however long it lasted.

GA4 calls a session engaged at over ten seconds, so only the shorter ones count as bounces there.

A session with a conversion is engaged in GA4 regardless of how short it was.

Optional, for pages a session.

Live preview bounce-rate.txt
Sessions                          18,400
Single-page sessions              11,960
Of those, under 10 seconds        5,980

Bounce rate, Universal Analytics  65%
  definition                      a session with one interaction hit, however long it lasted

Bounce rate, GA4                  30.65%
  definition                      100% less the engagement rate
Engagement rate, GA4              69.35%
  engaged means                   over 10 seconds, or 2+ page views, or a conversion

The gap between the two           34.35% on the same sessions
95% interval, GA4 figure          29.99% to 31.32%

Pages a session                   1.70
  sessions that went deeper       6,440, 35%

Conversions                       340, 1.85% of sessions
  among the short ones            340, which GA4 counts as engaged

The same 18,400 sessions give 65% in Universal Analytics and 30.65% in
GA4, which is a difference of 34.35% from the definition alone.
Comparing a bounce rate against a benchmark, a competitor or last year
without knowing which definition produced each number is how a site gets
redesigned for no reason.

A bounce in Universal Analytics was a session with one interaction hit.
Somebody who read a 2,000-word article for six minutes and left
satisfied was a bounce, and their time on page was recorded as zero,
because time was the gap between hits and there was only one hit.

GA4 calls a session engaged if it lasted more than 10 seconds, or had
two or more page views, or had a conversion. Bounce rate is what is
left. That is a better measure and it is still a proxy: ten seconds and
one page view is a low bar to call engagement.

A high bounce rate is not automatically bad. A contact page, a phone
number, an opening-hours page and a single-article blog all do their job
in one page view, and a visitor who got the answer and left is a success
by every measure except this one.

It is bad when the landing page does not match the promise that brought
the visitor. That is the diagnosis worth pursuing: compare bounce rate
by landing page and by source, because a campaign sending the wrong
audience shows up there and not in the site average.

Ninety percent bounce with high traffic is usually a tracking problem.
Two analytics snippets on the page fire two hits, so nothing looks like
a bounce; conversely a broken event or a consent banner blocking the
second hit makes everything look like one. Check the implementation
before the content.

A rate from a sample has an interval. At a few hundred sessions the
interval above is wide enough to cover most of the movement people
report month to month, and acting on a change inside it is acting on
noise.

Time on page is the other casualty of the same definition. For a
single-page session the old tools recorded zero, so average time on page
was calculated only over the sessions that clicked again, which is a
biased subset. GA4 measures engagement time directly, which is why the
two do not reconcile.

Output is valid and updates as you type.

The same 18,400 sessions have a bounce rate of 65 percent and 30.65 percent, depending on which tool you ask. Neither number is wrong.

In Universal Analytics a bounce was a session with exactly one interaction hit. Somebody who read a 2,000-word article for six minutes and left satisfied was a bounce, and their time on page was recorded as zero, because time was measured as the gap between hits and there was only one hit.

GA4 does not lead with bounce rate at all. It reports engagement rate, where a session counts as engaged if it lasted more than ten seconds, or had two or more page views, or had a conversion. Bounce rate is what is left over.

So a bounce rate quoted without its definition is not comparable to anything, including your own figure from before the migration.

How to use

  1. Put in the sessions and how many were single-page.
  2. Of those single-page sessions, how many lasted under ten seconds.
  3. Add conversions, since GA4 counts a converting session as engaged however short it was.

Example

Sessions                          18,400
Single-page sessions              11,960
Of those, under 10 seconds        5,980

Bounce rate, Universal Analytics  65%
  definition                      a session with one interaction hit, however long it lasted

Bounce rate, GA4                  30.65%
  definition                      100% less the engagement rate
Engagement rate, GA4              69.35%
  engaged means                   over 10 seconds, or 2+ page views, or a conversion

The gap between the two           34.35% on the same sessions
95% interval, GA4 figure          29.99% to 31.32%

Pages a session                   1.70
  sessions that went deeper       6,440, 35%

Thirty-four points of difference from the definition alone. That is larger than any redesign is going to move it.

Pitfalls

A bounce is not a verdict on the content. It counts hits, not satisfaction. A contact page, an opening-hours page, a phone number and a single-article blog all do their job in one page view, and the visitor who got the answer and left is a success by every measure except this one.

Time on page was zero for a bounce. In the old model, a session with one hit had no second timestamp to measure against, so average time on page was calculated only over sessions that clicked again: a biased subset. GA4 measures engagement time directly, which is why the two never reconciled.

Ten seconds is a low bar. GA4’s engaged-session threshold is generous, so its engagement rate is flattering compared with what most people mean by engaged. Knowing the threshold is the point; ten seconds and one page view is not a reader.

Ninety percent bounce with healthy traffic is usually tracking. Two analytics snippets on the page fire two hits, so nothing looks like a bounce. A consent banner blocking the second hit, or a broken event, does the opposite. Check the implementation before rewriting the page.

The site average hides the diagnosis. Bounce rate by landing page and by source is where the useful signal is: a campaign bringing the wrong audience shows up there and disappears into the average.

A rate from a sample has an interval. At a few hundred sessions the interval is wide enough to cover most of the month-to-month movement people report, and acting on a change inside it is acting on noise.

Don’t optimise the metric. Firing a scroll event or a timer to mark sessions engaged reduces the bounce rate and changes nothing about the site. It also destroys the comparison with your own history, which was the only benchmark worth having.

Compatibility

Arithmetic in the browser: nothing is uploaded and nothing is stored.

Both definitions are computed from the same inputs, and the GA4 figure subtracts the conversions that happened inside short single-page sessions, because those count as engaged. The interval is Wilson’s score interval, the same one the other rate tools here use.

The GA4 definition used is the documented one: a session is engaged at over ten seconds, or two or more page views or screen views, or at least one conversion event. Google has changed the wording of this more than once, so treat the threshold as the thing to verify rather than the arithmetic.

Universal Analytics stopped processing data in 2023, so its figure is here for comparing against historical reports rather than for new measurement.

Frequently asked questions

What is a good bounce rate?
There is no useful universal answer, and the numbers quoted in blog posts are usually from Universal Analytics and therefore not comparable with what your GA4 property reports. Compare a page against other pages on your own site and against its own history, measured the same way.
Why did my bounce rate drop when I migrated to GA4?
Because the definition changed, not the site. The engagement definition counts a ten-second visit as engaged, so a large share of what used to be bounces no longer are.
Should I add a scroll-depth event?
For understanding readers, yes. To reduce bounce rate, no: it moves the number without changing anything and breaks the comparison with your earlier data.
How do I lower bounce rate on a landing page?
Match the page to the promise that brought the visitor: same offer, same wording, same product. Most genuine bounce problems are a mismatch between the ad and the page rather than a design problem.
Is bounce rate a ranking factor?
Google has said repeatedly that it does not use analytics data in ranking, and it has no access to most sites’ analytics anyway. What can matter is whether people find what they wanted, which bounce rate is a poor proxy for.
Weekly drops

New tools, when there are new tools

One email when something worth using ships. No schedule to fill, so no filler.

Your address goes nowhere else, and one click unsubscribes.