As you explore your data in Google Analytics 4 (GA4), you may encounter the need to view and slice your data in more advanced ways compared to what the standard built-in reports offer. For example, you may want to view only a subset of sessions of users who visited a specific page throughout their session or users from a specific region who visited your site. This is where segments come in.
For a more detailed explanation of segments and how to get them set up, I recommend you read this article to familiarize yourself with the basics. Then, hop on over to this article to learn about additional configurations that can be made to your segments.
If time is a constriction, don’t worry! In this article, I will provide a short-and-sweet summary of segments and what they do. Segments give you the freedom to group data by specific conditions you set. The main benefits of segments come into play when your goal is to create basic or complex groupings that you would like to reuse in the future. Segments can be saved privately or you can share them with other users who have access to the GA4 property.
As you begin to create segments, you’ll be faced with a few decisions you have to make beforehand.
Segment Scopes

Segments can be created at three different levels:
- User Segment: Group data by an action a user took or a user attribute.
- Session Segment: Group data by an action that was taken in a session or a characteristic that was met within a session.
- Event Segment: Group data by events that meet a specific criteria.
Pre-Built Segments

GA4 offers built-in segments for common use cases that you can reuse. Some of these segments include: recently active users, purchasers, non-purchasers, and more.
Predictive Segments

If your property meets the criteria for predictive data, you can take advantage of the built-in predictive audiences. These audiences allow you to segment data by users that are likely to perform—or not perform—a specific action on your site.
These segments are also customizable. By default, the probability metrics used in these predictive audiences are only going to display users whose probability falls within X percentile (ex: users whose purchase probability is above the 90th percentile). This condition can be modified to meet your needs within the segment builder.

Segment Conditions

Regardless of the scope, all segments will offer a range of conditions you can use to further refine your segment.
- Condition scoping: Choose whether the condition(s) you set should occur across all sessions, within the same session, or within the same event.
- And/Or: Add additional conditions to your first condition (ex: page category contains “/sweaters/” AND event name exactly matches “share_to_friend”)
- Add condition group to include/exclude: Add additional conditions to your segment that can either be included or excluded from your selection (ex: exclude users when country is not one of “US or CA”)
- Add sequence to include – only available for user segments: User-scoped segments provide an additional condition criteria to create a segment of users who follow a sequence of steps within a specified time period (this time constraint is optional).

User Segments – At Any Point In Time

I want to shed light on the “at any point in time” checkbox that you will come across if you ever create user segments. More specifically, user segments with a condition scoping of “across all sessions”. This condition is hardly understood but can provide drastically different results if you select or unselect the checkbox.
What this seemingly harmless checkbox means is that it will determine whether the segment will include users when any of the sessions created by the user within the specified date range meet the condition criteria. Alternatively, when this checkbox is unselected, it will only include users when the most recent instance of the parameter used in your condition meets the criteria.
Let’s take a look at two scenarios using the same segment conditions with and without the “at any point in time” checkbox selected:
- Segment: Event Name contains Purchase (with At Any Point in Time selected): This will include users when any of their sessions included the event name = purchase at any point within the journey, even if this was not the last event in the session.
So, even if the user navigated back to the homepage after making a purchase and the latest event name value is overridden by a pageview event (event name = pageview), it is true that at some point in the session the event name was once “purchase”, so this user is included in the segment. - Segment: Event Name contains Purchase (without At Any Point in Time selected): This will include users only when the most recent event name value that was captured is “purchase”.
So, if the user triggered a purchase event (event name = purchase), but then navigated back to the homepage, the latest event name value will be overridden (event name = pageview), thus disqualifying the user from being in the segment.
Tip: You can validate this in Explore by updating your segment to disable the “at any point in time” setting -> apply the segment to the report -> right-click on the Total Users row -> select View User Activity -> In the user explorer report, click on the client ID to view that specific users sequence of events -> check to see if the last event is indeed event name = purchase.
Segments can be thought of as powerful filters that enable you to stack multiple filters together. While the additional configuration options may seem intimidating at first, I encourage you to experiment with creating segments using the various options available. This will help you gain a deeper understanding of what the data is saying and allow you to leverage these advanced configurations in future reports.