The session_start event
The session_start event marks the beginning of a visit. In GA4 it is fired automatically the first time a user is active in a new session, and it underpins every session-scoped metric. Understanding when a session begins — and the timeout that ends it — explains why session counts behave the way they do across midnight, campaigns, and idle periods.
What this means
A session is a group of a user's interactions within a time window. GA4 fires session_start automatically with the first event of a new session. By default a session ends after 30 minutes of inactivity (the configurable session timeout); the next activity after that starts a new session and a new session_start.
Why session counts move
Because sessions are bounded by a timeout, the same person can generate several: leave a tab idle past the timeout and return, and that is a second session. Some tools also restart a session on a new campaign source. This is why sessions are always greater than or equal to users, and why session spikes do not always mean more people.
- session_start fires on the first event of a session
- Default 30-minute inactivity timeout ends a session
- Sessions >= users; one person can start many
How it appears in analytics and logs
A session_start means a new visit began. A surge in session_start without more users often means timeout or campaign re-entry is splitting one person's activity into many sessions.
Diagnostic use case
Understand how sessions are counted so you can read sessions, users, and engagement correctly and explain why one person can produce several sessions.
What WebmasterID can help detect
WebmasterID derives sessions from first-party events without third-party cookies, so session_start reflects real visits while keeping identity local to your own site.
Common mistakes
- Reading sessions as a count of distinct people.
- Ignoring the timeout when explaining session spikes.
- Comparing session counts across tools with different timeout rules.
Privacy and accuracy notes
Session counting needs a session-scoped identifier, not a cross-site one. A first-party, short-lived session marker is enough; no third-party cookie or persistent profile is required.
Related pages
- The page_view event: the base of web analytics
page_view is the event fired when a page loads. It is the base of almost every web-analytics model: sessions, pageviews, and most reports build on it. In classic sites the tracker fires it automatically on load; in single-page apps you fire it on each route change. Its properties (path, title, referrer) drive most downstream reports.
- The first_visit event and new users
The first_visit event is fired the first time a user opens your site in a browser. It is how GA4 distinguishes new users from returning ones: the presence of a first_visit defines a new user. Because it depends on a stored marker, clearing cookies or using a fresh browser makes the same person look new — a limitation worth understanding before trusting new-user counts.
- Pageviews: what the metric counts
A pageview is recorded when a page is loaded (or a virtual page is rendered in a single-page app). It is the oldest web-analytics metric and the easiest to misread: pageviews count loads, not people, and modern apps and prefetching can inflate or hide them. This page defines the metric and its caveats.
- Web analytics
First-party sessions without third-party cookies.
Sources and verification notes
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.