A session is a single visit to your website or app: the group of interactions one user has with it until they go quiet for a set time. In GA4, a session starts with a session_start event and ends after 30 minutes without activity, unless you change that timeout.
How a session works
When someone arrives, GA4 gives the visit a session ID and attaches it to every event they trigger: page views, scrolls, clicks, form submissions. If they leave the tab open, make a cup of tea and come back after 40 minutes, their next action starts a new session. Someone who visits on Monday and again on Wednesday is one user with two sessions.
GA4 differs from the old Universal Analytics in two ways that still confuse comparisons. It does not start a new session at midnight, and it does not start a new session when the same visitor returns through a different campaign within the timeout. Its session figures are also produced with a statistical estimation method for large counts, so small differences between reports are normal.
A session is only counted as an engaged session if it lasted longer than 10 seconds, included a key event, or had at least two page or screen views. Dimensions that describe the visit, such as session source / medium and the session default channel group, are session-scoped: they record how each visit began, which is often different from how the user first found you.
You can change the session timeout, up to 7 hours 55 minutes, and the engaged session timer, up to 60 seconds, in the data stream’s tag settings.
Why it matters
Sessions are the base for many numbers you report: session conversion rate, engagement rate, the share of visits from each channel. If session counts are wrong, every rate built on them is wrong too.
For UK websites, sessions also reflect consent. Under PECR, analytics cookies normally sit behind consent on a UK cookie banner, so a visitor who declines on your cookie banner is not counted as a session at all unless consent mode estimates some of that activity. Comparing sessions before and after a banner went live compares two different measurement methods.
Sessions measure visits, not people. A busy trade customer may create six sessions in a week while comparing quotes, and each one is counted.
Common mistakes
- Comparing GA4 sessions directly with Universal Analytics sessions, which were defined differently.
- Relying on bounce rate alone, when GA4 defines it simply as the share of sessions that were not engaged.
- Ignoring self-referrals and payment gateway returns, which split one visit into two sessions and inflate the count.
- Reading a fall in sessions after a cookie banner launch as a fall in demand.
- Using session counts as a proxy for people. Use active users for reach and sessions for visit-level analysis.
How to act on it
Use sessions for questions about visits: which channels start them, which landing pages hold them, and how often they lead to an enquiry. Check the Traffic acquisition report for your own domain or payment providers appearing as sources, which signals split sessions, and fix them before relying on the figures.
Leave the 30-minute timeout alone unless visitors genuinely spend long idle periods on a page, such as a long application form, and record any change you make. Annotate the dates of cookie banner launches and tracking changes so trends stay readable.
Turning session data into decisions about channels and pages is part of my digital marketing strategy and consulting work.
