GA4 Session Start Event Explained
Updated: 2/2/24 Google Analytics collects the session_start event every time a new session (a new visit) begins on your site. The event is used to counts total sessions.
Not only can you use the session start event to keep tabs on your total site visits, but you can use the event to create segments and audiences from your users based on how many visits they’ve made. You’ll learn how in this article.
Here’s what we’ll cover regarding GA4 session_start. If you’re looking for something specific, you can click each heading in the table of contetnts.
Table of Contents
- Session Start is one of 3 automatically collected events
- Where to see session_start in GA4 reports
- Difference between sessions and events in GA4
- GA4 Session ID (and what it shows)
- GA4 Session number (and how you can use it)
- GA4 session vs engaged session (what’s the difference)
- Session FAQs
Session Start and Automatically Collected Events
Automatically collected events are triggered by basic interactions on your site. You don’t need to turn them on or do anything to create them. In fact, you can’t turn off automatically collected events even if you wanted to.
There are three automatically collected events:
- session_start event
- first_visit event
- user_engagement event
We’re going to focus on GA4 sessions (via the session_start event) in this guide. Read on or click below to watch the video tutorial on YouTube.
GA4 Session Start Event
When a visitor comes to a website that has Google Analytics 4 installed, Google Analytics will automatically fire a session_start event. While it may seem basic, it’s a powerful event based on a particular event parameter that gets created along with the event.
You can find the session_start event in you Events report within your collection of GA4 reports.
It looks like this.
What is the Difference Between a Session and an Event in GA4?
A session is another name for a visit to a website. An event in GA4 is a specific interaction that takes place during the session. There can be (and usually are) multiple events that take during a single session. Some other examples of events are viewed pages (page_view event), scroll activity (scroll event), and file downloads (file_download event), and site search (view_search_results).
Each of those events are associated with the same session (session_start event) through something called the ga_session_id.
Let’s review.
What is GA4 Session ID?
The GA4 session ID (ga_session_id) is something called an “event parameter“. A parameter is data that adds more context to your GA4 events. This particular parameter shows a timestamp of when the visitor arrived at the site and the session began. The session ID is automatically associated with every event that takes place during the session through the Google Analytics tag.
Here’s Google’s support article for more on GA4 sessions. If you want to poke around, you can find the session ID within the _ga cookie on your site.
There is another important event parameter that gets created along with ga_session_id. It is the GA4 session number.
What is GA4 Session Number?
The GA4 session number (ga_session_number) is an event parameter of the session_start event that counts how many sessions a user has had on your site. The first time a user visits, the ga_session_number will be “1”. The second time the same user visits the _ga cookie will recognize them as a returning user on their second visit and the ga_session_number will be “2”. And so on.
You can user ga_session_number to create audience segments so you can learn more about how your audience interacts with your site. The Explorations. Here’s what that looks like.
How to Create Audience Segments with ga_session_number Event Parameter
First, go to “Explore” from the left-hand navigation to access Explorations.
Then, click the “+” icon next to “Segments” to create a new segment.
You can create a User segment or a Session segment, depending on your goals. Let’s create a Session segment. Like this.
Now, build your session segment. Here’s how you’d do it if you want to create a segment of all your sessions that were the first visits from your users.
As you can see in the red box, the session number (ga_session_number) exactly matches “1”. Check out the arrow in the bottom right to see a preview of how many users will be in your segment.
And here’s how you could build a segment based on all the second visits from your users in GA4.
Note: If and when the visitor deletes cookies on their browser, they will no longer be recognized as a returning user.
Creating a Custom Dimension With GA4 Session Number
You can also use the ga_session_number event parameter to create a custom dimension that you can use in your GA4 reports.
To do that, go to the Admin panel and then click “Custom definitions” within the property settings to create a new custom dimension from this event parameter.
Click the blue “Create custom dimension button” and you’ll see something like this.
Note: See the warning message in the yellow bar. We don’t need to be concerned here for ga_session_number since it won’t create a high number of unique values. However, creating a custom dimension based on the ga_session_id parameter would be a bad idea as it would create a high number of unique values and cause issues with reporting. This would be a “high-cardinality dimension” according to GA4 (any dimension with more than 500 unique values in a day), and would cause data issues in your reports.
Then, fill out your custom dimension. The “Dimension name” field is what will show up in your reports. The “Description” is only for your internal record keeping. The Event parameter must be typed exactly as you see it below. It should be available in the drop down menu.
Then, click “Save”. You’re all done. Once you do that, you’ll be able to see Session Count as one your event parameters in your standard reports. Let’s look at how to do that.
Reporting With GA4 Sessions
Let’s go back to the event report. Click on “Reports” in the left-hand GA4 navigation and then click on “Events” with the Engagement reporting area.
Click into the session_start event from your list of events.
Just like before, you’ll get a detailed view of event activity for only the session_start event. But now you’ll be collecting additional data.
You’ll see a card that will display the Session Count event parameter that provides additional detail on those session_start events. In this case, we can our sessions our coming from 14k users on their first visit, 2.5k users on their second visit, 857 users on their third visit, and so on.
You’ll have this same card with session count information for any event that you analyze in this manner.
Note: The event parameter information is not retroactive. It is only available beginning with the time that you create the custom dimension.
You’ll also be able to use your new Session Count dimension when you are working in GA4 Explorations to build more detailed and custom reports.
Let’s wrap up by clarifying some common questions about GA4 sessions.
What is the Difference Between a GA4 Session and a GA4 Engaged Session?
Sessions count the total number of visits to your website. Engaged sessions count the total number of visits that meet a specific threshold of user engagement.
An engaged session meets one or more of the following critiera:
- The session has multiple page_view events.
- The session has one or more conversions.
- The session lasts for 10 seconds or more.
Comparing the number of engaged sessions to the total number of sessions yields the GA4 engagement rate.
GA4 Session FAQ
Some other questions about GA4 sessions
What’s the Difference Between page_view and session_start?
The session_start event will fire and record data when a session (a visit) begins on your site. Let’s say a visitor looks at three pages during their visit before they leave your site. That would count as one session_start event and three page_view events.
What is the Difference Between a Sessions and Users in GA4?
A session is a visit on your site. A user is a unique individual who is visiting. The same GA4 user can account for multiple sessions.
What is Session Start in Google Analytics?
The session_start event is an automatically collected event that fires whenever a visitor begins a session (a visit) on your web site. Along with the event itself, Google Analytics collects additional “event parameter” data called ga_session_id (the unique ID of the session) and ga_session_number (the number of visits that particular user had on the site).
Wrapping Up
Hey, you made it! Thanks for reading. I hope you feel more confident about understanding GA4 sessions after making it here. If you think we missed something useful, please let me know. Part of being a data driven weirdo means wanting to have the most accurate data possible.
About Root & Branch
You can learn more about Root & Branch here. Or hit the button below to check out YouTube for more digital marketing tips and training resources.
I have a quite interesting question.
For some reason when I implement my Cookie Banner (via google tag manager) the session_start event doesnt fire anymore but the page_view and user_engagement do. what could be the reason for that?
I don’t know for certain, but I’d look at 2 things. One, I’d double check when your tags are firing. Two, it’s possible that everything is actually fine and GA4 will reprocess the session_start. This is something I need to look into more myself, but this article here might be worth a read,
https://www.simoahava.com/gtmtips/consent-granted-reprocesses-previously-denied-hits/
Could you also send a session_start event manually? We are dealing with multiple users coming from the same device. I was thinking of ending the session and then starting a new one manually with a “logout” button.
Hey Zack! I’m wondering, what’s the difference between the session_start event and the “sessions” metric we can get from the GA4 API? Because I have this problem that the number of sessions brought from different sources/mediums are more than the actual session_start. It’s something that scratches my head and can’t find the explanation. Great articles and videos by the way! Thank you!