How session duration is calculated

Analytics records the time of every event. Session duration = the time of the last event minus the time of the first. If someone arrives at 14:00:00 and their last event is a product click at 14:04:23, session duration is 4 min 23 sec.

The limitation: the last page is not counted. A user who opens a product page and then closes the browser leaves that time invisible to analytics.

Session: [14:00:00 — entry] → [14:02:30 — product page view] → [14:04:23 — click to cart]
Session Duration = 14:04:23 - 14:00:00 = 4 min 23 sec
Time on the final page (the cart) is not included

E-commerce benchmarks

Session type Typical duration
Bounce (1 page) < 10 sec
Browsing session 1–3 min
Session with product selection 3–7 min
Session with a purchase 5–15 min

The site-wide average session duration is an average temperature. It is far more useful to segment: buyers versus non-buyers, new versus returning, search traffic versus email traffic.

When rising time on site is a problem

Good personalization usually reduces average time on site while raising conversion: the user sees relevant products on the home page and in recommendations, and decides faster. If time on site grew alongside conversion, that is fine. If it grew while conversion stayed flat, navigation has most likely become harder.

Important: never set growth in session duration as a goal in itself. The goal is conversion and revenue. Time on site is a diagnostic metric.

GA4 and engagement time

GA4 introduced the engaged session — a session lasting 10 seconds or more, with a conversion event or at least 2 page views. That is a more useful filter than raw session duration, because it separates technical hits and bots from real interaction.