Google Analytics Bounce Rate and Engagement Rate: Calculate and Interpret Both
Published October 26, 2026 · Written by Aanart

In Google Analytics 4, bounce rate is the share of sessions that were not engaged. Engagement rate is the share that were engaged. For the same reporting scope, the two rates add to 100%. A single-page visit can count as engaged, so leaving after one page does not automatically mean a bounce.
SourcetoMCP’s Google Analytics connector returns both rates alongside sessions, engaged sessions and other supported metrics. This guide explains their definitions, the fractions returned by the API and the checks needed before using a rate to judge a landing page.
Understand what makes a session engaged
Under GA4’s default definition, an engaged session lasts longer than ten seconds, contains a qualifying key event, or has at least two page or screen views. The criteria are alternatives. A visitor who reads one page for a sufficient time can meet the duration condition without opening a second page.
Google’s engagement and bounce-rate guidance explains the calculation. It also notes that first_visit, first_open and session_start do not qualify a session merely by being marked as key events. An arbitrary event count is not a substitute for the actual engagement definition.
The web-stream engagement timer can be adjusted. Check the actual setting and any recent changes before comparing two periods. Google’s session settings instructions show the timer control. SourcetoMCP’s performance report reads the resulting rates and does not expose that timer setting as an editable input.
Keep comparisons with older Universal Analytics reports separate. A similarly named rate from a different measurement system does not necessarily describe the same behaviour.
Calculate both rates with one denominator
Suppose a hypothetical complete reporting period has 1,000 sessions, of which 740 are engaged. Engagement rate is 740 ÷ 1,000 = 74%. There are 260 sessions that were not engaged, giving a bounce rate of 260 ÷ 1,000 = 26%.
The formulas are engagement rate = engaged sessions ÷ sessions and bounce rate = 1 − engagement rate. These calculations explain the definition. For your actual report, retrieve GA4’s computed aggregate rates at the intended scope rather than reconstructing them from rounded or incomplete rows.
If bounce rate changes from 26% to 20%, the difference is six percentage points. Relative to the original rate, the decrease is 6 ÷ 26, or about 23.1%. Label the measure you use, because a six-percentage-point change and a six-percent relative change are different statements.
A zero-session row has no meaningful rate denominator. Preserve an unavailable result as unavailable rather than assigning it a zero-percent bounce rate.
Convert API fractions once
SourcetoMCP returns the Data API’s numerical rate values. A bounceRate value of 0.26 represents 26%, while an engagementRate of 0.74 represents 74%. Multiply a fraction by 100 for a plain percentage display, or format the fraction as a percentage in your spreadsheet.
| Metric | Returned value | Correct display | Display mistake |
|---|---|---|---|
| bounceRate | 0.26 | 26% | 0.26% |
| engagementRate | 0.74 | 74% | 74 treated as a raw fraction |
| Combined check at the same scope | 0.26 + 0.74 = 1 | 100% | Adding mismatched page and property rates |
Do not multiply by 100 and then apply percentage formatting to the resulting number. That turns 26 into 2,600%. Retain the raw fraction in a source column when your reporting process needs a reproducible conversion.
The connector also returns user engagement duration as total seconds. That measure differs from an engagement rate and from an average duration. Google’s user-engagement explanation describes foreground engagement time, so keep the units in every column heading.
Compare landing pages without averaging rates
Use landing pages when you want to investigate the page where a session began. Keep channel, device and period comparable. A paid campaign landing page can have a different audience and purpose from a support article, even when both receive substantial traffic.
| Landing page | Sessions | Engaged sessions | Bounce rate |
|---|---|---|---|
| Product guide | 900 | 720 | 20% |
| Campaign page | 100 | 20 | 80% |
| Combined example | 1,000 | 740 | 26% |
A plain average of 20% and 80% is 50%, which is wrong for this combined example. The larger group contributes many more sessions. Ask GA4 for its computed rate for the combined scope. Do not average the percentages in the returned page rows.
Page-path rows can include sessions that encountered several pages, so they are not a set of mutually exclusive entry-page groups. Mixing those rows into a weighted calculation creates another scope problem. Preserve the dimensions used in the original request.
Investigate a change before editing the page
A higher bounce rate can follow a change in traffic mix, a misleading ad, an incomplete page or a measurement problem. Separate those explanations. First compare the same landing page and device within a consistent channel, then inspect the page and the event setup.
An unusually low bounce rate also deserves a check. Duplicate page views or an overbroad key-event definition can increase the share of sessions classed as engaged. Use the GA4 conversion-tracking workflow and a browser test before calling the change an improvement.
No universal “good” bounce-rate threshold identifies success for every page. Check the intended action and outcome volume. A page that answers a short support question can satisfy a visitor with one visit, while a lead-generation page needs evidence about submitted and qualified enquiries.
Use the website content audit to combine engagement findings with content accuracy and business purpose. A rate on its own is insufficient evidence for removing a useful page.
Ask AI for a review with scopes and units attached
Compare GA4 engagement for property [ID] over [two complete periods]. Make no changes. Retrieve sessions, engagedSessions, bounceRate and engagementRate using the same landingPage, channel and device scope. Apply supported filters before the row limit. Show raw fractions and correctly formatted percentages. Use GA4’s computed aggregate rates for combined scopes. Separate traffic-mix changes from possible tracking or content issues. Record unavailable values, key-event definition checks and any engagement-timer change that still needs manual verification.
Require the response to name the numerator, denominator, reporting dimensions and percentage-point changes. Keep key-event outcomes alongside engagement. The GA4 audit checklist provides the configuration checks needed when a rate changes unexpectedly.
Approve a specific page or collection fix after reviewing the evidence. Record the change date, then compare equivalent complete periods with the same metric definitions.
Platform guidance and SourcetoMCP capabilities checked on 26 October 2026. Worked figures are hypothetical examples.