
March 8, 2025
Google Analytics 4 Segments: The Guide
Updated: March 8th, 2025
Segments are a great way to slice and dice your data to get better insights. Instead of looking at aggregated numbers (like total users or all conversions (key events)), you should drill down into your reports to find patterns and identify the most valuable users.
In this blog post, I will explain Google Analytics 4 segments, what they are, and where/how you can use them, and I will share several examples.
Table of Contents
– Hide the table of contents –
- What are segments?
- How to create segments?
- 3 types of segments
- Google Analytics 4 Segment Builder
- Condition scoping
- Sequence segments in Google Analytics 4
- Excluding data in segments
- Suggested segments
- Different segment types = different features/content
- Ideas for Google Analytics 4 segments
- Final words
Video tutorial
If you prefer video content, watch this tutorial from my YouTube channel.
Note: the GA4 interface has changed since I recorded this video. However, the general principles explained there are still relevant.
What are segments?
A segment is a subset (read “a portion”) of data you can analyze. Instead of analyzing the data from all users, you might want to compare how all users compare to the traffic coming from the US.
Why is that useful? You might identify that for your business, US traffic is more valuable and generates the largest part of your revenue. Consequently, you might want to target your marketing towards that audience (if you aren’t already doing that).
Other examples of fairly basic segments could be mobile traffic, desktop traffic, and segments based on gender, age, level of engagement, etc.
How to create segments?
In the previous version of Google Analytics, you could find segments in most standard and custom reports. At the top of the interface, you could add additional segments and compare them while jumping between various reports.
As you navigate from one report to another, the segments persist (which is super useful and convenient).
In Google Analytics 4, things are different. Even though you can technically compare different data subsets (by using comparisons), the segments I explain in this blog post can be created/used only in exploration reports, such as Free Form, Funnel Explorations, etc.
To do that, go to Explore (on the left sidebar) and choose Free Form. Segments can also be used in other exploration techniques, but this time, let’s focus on Free Form. If you want to learn more about how to work with Free Form Explorations, read this guide.
On the left column (Variables), you will find all the components/items you can use in the analysis, segments, dimensions, metrics, and more. The default list is not very comprehensive, but that does not mean you are limited. If you want, you can create and add more segments by clicking the plus icon.
You can either build segments from scratch (by choosing Custom Segments) or you can choose one of the suggested segments. You can learn more about the suggested segments in this chapter.
First, let’s select any of the custom segments, and I will do a quick overview of the interface. Later in this blog post, I will explain the differences between the three types of segments.
In my case, I clicked the User Segment. This will open the segment builder. It is split into two parts. On the left side, you will enter your segment’s conditions (which users/events/sessions to include/exclude).
On the right side, you will see the Summary (preview of how many users/sessions/events will be included in this segment). Also, you can choose to build an audience based on this segment.
When you’re done editing the segment, you can click Save and Apply. Later in this blog post, I will focus more on each feature but before that, first, we need to understand the difference between each type of segment.

Three types of segments
When you start creating a new custom segment, you get three options:
- User
- Session
- Event
User segment is a segment that will include all events of users if they meet certain criteria.
Session segment will include all events, but only those sessions that match the criteria.
Event segment will show only particular events that meet the criteria.
Sounds confusing? Let me illustrate this.
Let’s say we have a user who did two sessions on our website. The first session consisted of two page_view events and one click. The second session: one page_view, one add_to_cart, one checkout.
Let’s create a User segment where a user did add_to_cart (or, in other words, added at least one product to a cart). What kind of data will be included in the segment? All six events. Why? Because this user meets the requirement of at least one add_to_cart event. This means that the user segment will include all events of that user in your selected date range.
Now, let’s move to session segments. Let’s say that I want to create a session segment where the event name is add_to_cart. In other words, “show data of all sessions where at least one add_to_cart event occurred“. What kind of data will the segment contain?
All events of the 2nd session, because that session had one add_to_cart event. The first session didn’t.
Finally, let’s look at the event segment. If you create a segment where the event name is add_to_cart, it means that only those events that match the criteria will be included. In the session segment, we still get other events like page_view or checkout (because they are a part of the 2nd session). In the event segment, we would get only one event, add_to_cart. No other event will be included.
I hope this made things clearer:
- User segments include all data of users that match the criteria
- Session segments include data from particular sessions that meet the criteria
- Event segments include only particular events that meet the criteria
And now, let’s go back to the segment builder.
Google Analytics 4 Segment Builder
In the segment builder, you can configure conditions that will include certain users, sessions, or events. You can also add a set of conditions to exclude certain data. Data exclusion is explained in greater detail here.
When you add new conditions, they can be connected with AND, OR, or condition groups.
To add new conditions, you can click on Add new condition and then start looking for dimensions you are interested in.
Just start typing what you want to find, and then the search will present organized results based on their type.
Do you want to include users who have done a certain event? Just enter the event name.
Are you looking for users who have completed two events (regardless of their order)? Then add another condition by clicking the AND button.
Now, you have just learned how to combine two conditions with AND. If you are looking for users who have visited one page or another, enter the first condition, click OR, and enter the second condition.
Voilà! You have now used the OR operator, too.
But what about the condition groups? What is the difference between the condition groups and using the AND?
In general, they are fairly similar. If you have one condition group with two conditions and they are connected with AND, this is the same thing as if you had two separate condition groups with just a single condition.
However, condition groups are useful if you want to have different scopes in separate condition groups. Enter Condition Scoping.

Condition scoping
Condition scoping allows you to set different scopes in separate condition groups. And it can be managed by clicking this icon in each condition group.
The available options here will differ depending on the segment type that you have chosen). Possible options are:
- Across all sessions
- Within the same session
- Within the same event
If you choose Across all sessions and you have multiple conditions in the same condition group, then it does not matter whether conditions A and B happened in the same session or the same event. Suppose condition A happened in session 1 while condition B in session 2, the user’s data will still be included in the segment. Conditions under this scope must be met during the lifetime of the user.
If you choose within the same session, it means that conditions A and condition B must happen within the same session (even if you are creating a user segment).
If you choose within the same event scope, then all conditions in the same condition group must be met in a single event.
Confusing? That’s ok. The best way to explain condition scoping is by showing an example. Let’s say that we want to see the data of all users who match the following criteria:
- Subscribed to a newsletter at any time in the past (event name: generate_lead)
- Also, at any point in the past, I saw a particular promotion (event name: view_promotion) and made a purchase (event name purchase) during the same session.
To create this kind of segment, we would need to create two condition groups. The first one would look like this:
The scope of this condition group is set to Across all sessions. We don’t care whether the generate_lead event happened during the same session as the purchase or not.
The 2nd condition group would look like this. I added it by clicking “Add condition group”.
Here, we are using sequences because I want to see those users who have purchased after seeing a particular promotion. Let’s take a closer look.
Sequence segments in Google Analytics 4
In Google Analytics 4, you have the possibility of including users or sessions where events occur in a particular order. However, only in user segments.
If you have a segment like this (view_promotion and purchase)…
…it will show data from all users who have seen at least one promotion and made a purchase. But the order does not matter here. If a visitor first made a purchase and only later viewed a promotion, that user would still be included in this segment.
With the sequence segment, we can specifically tell GA4 that we are interested only if a purchase happens after the view_promotion. To do that, click “Add sequence” in the condition group.
Then remove the initial Condition group (if you only want to use the sequence in the segment). Click the trash icon.
Now, create all the steps. Explore all the features based on what you have already learned in this blog post. However, I have several additional things to mention.
You can set the scope for the entire sequence. Or, if it makes sense to you, you can set different scopes on every sequence step.
Another cool thing is to include time constraints in your sequences (for example, show me users who viewed the promotion and then purchased within the next 24 hours).
To add new steps, click the Add Step.
Excluding data in segments
All condition groups are designed to include data. But what if you want to exclude something (for example, users who have already purchased from you)? Use exclusion groups.
To add it, click Add group to exclude, and a new group (with red color) will appear. There is one (fairly mysterious) setting called Temporarily exclude vs Permanently exclude. I am still investigating this because Google’s documentation is vague on this, and I still have too many questions.
From what I’ve learned, the temporary exclusion might be a good option if you create an audience from this segment. Let’s say that you have an audience with a 30-day membership. You want to include people who have visited a particular page on your site but exclude those who have recently purchased. That way, your segment could look like this.
From what I understand, if a visitor purchased in the last 30 days, it will be temporarily excluded from the audience. However, once 30 days (after the last purchase) pass, the visitor will reenter the audience (once he/she revisits the page used in the segment’s settings). This is a great use case for retargeting campaigns where you can start showing ads to those who haven’t purchased in a while.
But again, some parts of this feature are still unclear to me. Hopefully, I will update this part once I learn more.
The other example could be this. You have a visitor who made a purchase 60 days ago. And you create a segment that excludes people who bought something.
You have now applied the segment to your exploration report, and you are now analyzing the data of the last 30 days. Remember that the user purchased 60 days ago.
If your exclusion group uses “Temporarily exclude”, then the visitor will be included in your current analysis. Why? Because the purchase happened 60 days ago and you are analyzing the last 30 days.
If your exclusion group uses “Permanently exclude”, then the user will not be included in your current analysis. Why? Because even though you analyze the last 30 days, the user has purchased at some point in the past, hence the “permanent exclusion”.
As I have said before, there are still some things that are unclear to me. For example, how does the permanent exclusion work with event segments? Does it mean that if, at any point in the past, the event contained a certain parameter, it will not be included in the segment? This is still unclear, and I did not have a chance to investigate this deeper. If you know something, feel free to let me know in the comments.
Suggested segments
In the previous chapters, we were working with custom segments. Now, let’s take a look at the suggested segments.
Currently, there are three types of suggested segments:
- General
- Templates
- Predictive
If you choose one of them, they will either prefill some conditions in your segment, or their layout will look different. For example, if you select Purchasers, it will add two conditions to the segment:
- Event is in_app_purchase
- or event is ecommerce_purchase (which is a bug knowing that the recommended event for GA4 e-commerce purchase tracking is just “purchase”). If you see purchase instead, the bug was eventually fixed.
If you choose one of the segments in the Templates tab, the layout of the segment builder will change. You will get a bunch of predefined dimensions you can use (or leave them blank). Here’s an example of the Demographics template.
You cannot add additional dimensions/conditions. But in general, you can also use Custom user segments to build the same segments (but it might require a bit more time to select/configure every condition).
The last group of suggested segments (as of the moment of writing this blog post) is Predictive. These are using the machine learning capabilities of GA4. Based on your current data, GA4 tries to predict which users will likely convert soon (or churn).
But this is not for every business. You need to have a solid volume of key events (conversions) in order to benefit from this. For example, according to Google, you would need at least 1000 users who have purchased over a 7-day period in the last 28 days. These numbers are not possible for small businesses.
Different segment types = different features/content
In the previous chapter, I mentioned that the content/layout of the segment builder differs depending on what kind of segment you choose. The demographics segment will differ from the Acquisition or Purchasers segment.
But these are not the only differences. Some features are available only in certain segments. For example:
- Sequences (at the moment of writing this blog post) are available only in the User segment
- The availability of condition scopes also differs. But this is logical. User segments support Across all sessions, within the same session, and within the same event scopes. Session segments support within the same session and within the same event scopes. Naturally, the event segment supports only within the same event.
Ideas for Google Analytics 4 segments
In this section, I wanted to give you several ideas of what kind of segments you can benefit from. Maybe this will inspire some new analysis.
Users who made more than 5 page_view events. You could create a segment for that, then build an audience, and then show ads to it.
Exclude users who have logged in. If you are analyzing key events, you should exclude those who have already converted a long time ago. Most likely, they are coming back to your site to log in to their account. By excluding them, you will have more accurate data of visitors who can potentially convert in the future.
Technology segments (e.g., mobile vs desktop). Create two separate segments and then compare how they perform conversion-or-revenue-wise.
Users who abandoned a cart. Create a segment where the event is add_to_cart (to have this event, you would need to implement GA4 e-commerce tracking. I teach how to do it in very great detail here) and exclude users who have purchased. You can now use this segment in the Funnel report to see where they fail in the checkout process.
Google Analytics 4 segments: Final words
Segmentation is a powerful way to slice your data and analyze a particular subset of it. In the previous version of GA, you could apply the segment to almost any custom or standard report in Google Analytics.
In GA4, you are limited only to explorations. If you want to apply some filters to standard reports, you must use Comparisons. But they are way less powerful/flexible compared to segments. For example, you cannot create sequences in comparisons.
Nevertheless, GA4 introduced some very welcome features like event segments and time constraints in sequences.
8 COMMENTS
You are the top, congratulations!!!
Do you have an idea why the number of active users is different when I use segments vs filters (with the same criteria and time range)? Also different numbers are shown in the funnel exploration - segments vs breakdowns. Please help :)
Depends on your segment. Filters are event-scoped. Maybe your segments are session or user scoped.
I have created a session segment, in "include sessions if" I am using an event called "new_user". With this I am creating an ecommerce funnel, in the end for a day "X" it gives me 268 purchase events. The problem arises when I do the same thing with Google BigQuery, I created a CTE that returns the session id whenever the "new_user" event has been triggered, from those session ids I have created the funnel, but the number is different, it does not match the 268 purchase events. What could this be due to?
It would be great if you could show examples of "Segments by level of engagement"
Excellent article, very very useful. I started using GA4 just for 1 month now and for me segments are the most powerful feature of GA4.
As always - fantastic rundown!
Am I just being blind or is it impossible in GA4 to create user-scoped segments based on metrics rather than events & their parameters?
Instead of the segment condition being "users who did event X", I'd want the condition to be "users with metric x > 5".
Obviously, metric x could be a simple count of event x (e.g. number of form submissions), but I don't see a way to include the notion of "number of occurrences" in a segment.
Any thoughts? Thanks!
In my opionion the user in your example is still in because the sale 60 days prior is not in the 30 days analysis time frame. I think that does make sense somehow.
Let me introduce a case I have:
I use a session based segement. In the first segement I want all sessions who visited 2 specific pages. E.g. "cart" and "address".
The other segment exludes cart so I only have sessions with visits for "address" but not for "cart".
The third is segment shows all sessions with "address".
The goal is to see the different behaviour based on path to address.
(roughly spoken)
In my understanding segment 1 and 2 are totally different sessions. Segment 3 would be the sum of these two.
This is kind of true if I use "permanently excluding". But when using "temporary excluding" segment 1 and 2 are very close.
So it seems that "temporary exclude" does ignore the scope of the segment.
At least I cant explain, how temporary would change the result on session level.
PS: That you not just praising GA4 and it's features, but also show where stuff is not clear and behaviour is questionable.