Close this search box.

GA4 User Engagement Made Visual & Simple

User engagement is a flexible term—you can think of it in different ways depending on what makes sense to you. Even within the framework of Google Analytics 4, user engagement can take several forms which can create some confusion, but it has a core structure.

In general, GA4 user engagement is the amount of time a user was active on your webpage or application.

Afterward, the collected time value is used for various calculations and conditions to create a user engagement event and engagement metrics to measure user engagement from different perspectives. 

GA4 For Beginners

Master the basics with our FREE GA4 Course for Beginners

If this doesn’t seem to make much sense at the moment, don’t worry. We will cover these nuances and explain visually how it works to bring more clarity to Google’s documentation. We will also explore how to leverage engagement data for your business.

Ready? Let’s get started.

What Is GA4 User Engagement?

The main definition of GA4 user engagement is how long a person uses your website or app on a device without switching to something else. This time duration is measured in milliseconds.

For example, you have already spent a certain amount of time reading these lines at this moment. This is an example of user engagement.

Using time as a measure of user engagement allows us to gain insights into the effectiveness of our pages and assess whether user expectations are being met.

It also helps identify opportunities, such as when visitors spend more time than expected on an undervalued page or when specific content and products can serve as inspiration to drive even greater engagement.

How Does User Engagement Work? 

🚨 Note: The engagement_time_msec parameter name cannot be used.

As soon as a session begins (any session with the session_start event), the GA4 clock starts ticking. That time is recorded in milliseconds via the  engagement_time_msec parameter.

As soon as one of the following activities occurs, the elapsed time is sent to GA4. 

We’ve added examples to the Google documentation (in bold) to distinguish them better:

  • The user moves the app screen to the background: Here, the application is still running but is no longer visible to the user. For example, if you are in an app and you click on a notification from another application.
  • The user focuses away from your web page: Maybe the user has switched to another tab or window. The page may not be active, but it is not closed. However, this doesn’t seem to trigger the sending of time duration to GA4.
  • The user navigates away from the app screen or web page (e.g., the user closes the tab, window, or app, or the user navigates to another screen or page): This is clear. If you close the tab or window, then the time duration is sent to GA4 with the user_engagement event.
  • The site or app crashes.

The amount of time is then sent as a parameter that is added to the other events except for these: 

  • page_view
  • first_visit
  • session_start

These events don’t have the engagement_time_msec parameter because these events represent the beginning of user interaction with a page, a first visit to the website, or the start of a session. Therefore there is no previous engagement on the page.

Sometimes, the term user engagement can be a bit confusing, and that’s because it can be recorded in several ways and is also used to create other metrics called engagement metrics.

User engagement can be viewed in these different forms:

  • User engagement event
  • User engagement metric
  • Engagement metrics 
  • Defining your engagement

GA4 User Engagement Event

Analytics offers multiple ways to register, view, and utilize user engagement. One of them is an event. More specifically the user_engagemnet event

Here, user_engagemnet (highlighting the snake case) is one of the events automatically collected by GA4.  There is no setup required for you to collect it. 

The engagement_time_msec parameter is included with this event.

Here is a good example from the Google documentation that we will test ourselves. Note that we didn’t follow the exact time duration, but the steps are the same.


A user lands on the homepage of your website, scrolls down the page after 8 seconds, and then navigates to a second page of your website after 11 seconds. On the second page, the user scrolls down the page after 6 seconds and then leaves the site after 7 seconds.

In this scenario, you would see the following in Google Analytics:

User…Event nameengagement_time_msec
lands on home pagefirst_visit, page_view, session_startN/A
scrolls down the pagescroll8781
navigates to next pageuser_engagement11856
lands on second pagepage_viewN/A
scrolls down the pagescroll6677
leaves the websiteuser_engagement7711

First, remember what we said earlier. The engagement_time_msec parameter is not added to these events: page_view, first_visit, and session_start.  This is why you see N/A in some cells within the parameter’s column. 

The user_engagement event is fired when a user visits another page or when they leave/close the website. It appears before the new page loads.

Therefore, when you move to the next page, the user_engagement event calculates the time you were engaged from the last event (scroll event in our example) until the new page loads.

The image below will help you visualize it:

User engagement event fired before page loads

If you’re wondering why the scroll event includes an engagement time in this example, it’s because the engagement_time_msec parameter is added to events after a session starts, so it’s available whenever a user acts on your website, such as scrolling down a page, clicking on a link, or watching a video.

Engagement time parameter after the session starts

Analytics measures the time between a user’s first interaction with a page and their last interaction (including those in between) before they leave the page or navigate to another one. 

In this instance, the first interaction with the page was the page_view event, and the last interaction was the scroll event. Eight seconds elapsed between these events. 

Where Is the GA4 User Engagement Report?

You’ll find the user_engagement event in the Events report.

I personally never use it and prefer looking at other reports such as the Pages and screens to examine the performance of web pages using the Average engagement time metric (more on this and some tips further down in this post).

But if you have a use case, here is where you can get its data: 

Go to Reports → Events. Under the Event name column in the table, click on user_enagement.

Clicking on user engagement

This will open the user_engagement overview report.

User_engagement overview report

User Engagement GA4 Metric

You’ll find user engagement as a metric in Explorations. It is the amount of time in seconds that your website or app was in the foreground. The time for this metric is aggregated, so for longer periods you’ll have it reported in days, hours, minutes, and seconds values.

Below is an example of how it looks like in Explorations.

User engagement in GA4 Explorations

Engagement Metrics 

Engagement metrics are the different metrics you can use to measure engagement. 

These are derived primarily from the previous data we’ve covered. Let’s have a look at the major ones, which include:

  • Average engagement time
  • Average engagement time per session
  • Active users (and its related metrics)

Average Engagement Time

In the navigation left panel, go to  Reports → Reports Snapshot.

Average engagement time in reports snapshot

Average Engagement Time Per Session

In the navigation panel, go to Reports  → Engagement  → Overview.

Average engagement time per session in engagement overview

Active users (and its related metrics)

You can find Active users (also known as Users in GA4) in various reports like:

  • Acquisition overview report (as Users)
  • Traffic acquisition report
  • Pages and screens report 
  • Landing page report
  • Explorations

How Is User Engagement Calculated in GA4? 

But how do we know this? 

We look at those metrics which include EngagementDuration, the engagement_time_msec, and the user_engagement event.

The Google Analytics API Dimensions and Metrics indicates that the API name for User engagement is user EngagementDuration, which is used to create metrics like the Average engagement time per session. 

User engagement in GA4 API dimensions and metrics

To verify this quickly, go to GA4 Spy, and type the metric in the search bar. For the Average engagement time per session, this is what we see:

GA4 spy user engagement

We also include those metrics that collect the engagement_time_msec.

Let’s take Active users now. 

In short, an active user is someone who had an engaged session (sessions that lasted 10 seconds or longer, or had 1 or more conversion events, or 2 or more page or screen views) or when any of the following are collected:

  • the first_visit event or engagement_time_msec parameter from a website
  • the first_open event or engagement_time_msec parameter from an Android app
  • the first_open or user_engagement event from an iOS app

The others include different calculations or conditions and therefore need to be understood within the broader understanding of engagement. Think of engaged sessions, engagement rate, and bounce rate, which we won’t cover in this post.

How to Evaluate Engagement

We’ve already shown how to find the user_engagement event report earlier.  Google suggests two more: 

  • Pages and screens
  • Explorations

We’ll show you how to make the best use of them.

Pages and Screens Report

To find this report, go to Reports → Engagement →  Pages and screens.

The engagement metric you’ll find here is the Average engagement time. Google Analytics defines it as the average time that your website was in focus in a user’s browser or an app was in the foreground of a user’s device

In the context of the Pages and Screens report, it shows you how long users stay on a specific page.

Average engagement time in the pages and screens report

💡 Top Tip: To make sense of this report, ask yourself if the average engagement time for your page of interest makes sense. Remember to segment your report by source and medium, or demographics and technological data.

Look at pages with unexpectedly high average engagement times, as they can indicate content that your users like. Check pages with high average engagement times and see how you can replicate their success with other less-engaged pages. 

However, remember that this should align with the nature of the content. For instance, a contact page is not designed for extended average engagement times.

Here’s how this metric is calculated: Average engagement time = total user engagement durations/number of active users

You can see that users were not passive while on your website or app. They were paying attention to your content and engaged with it. These are active users, and there are many components that Analytics uses to define what constitutes an active user. 


Recently active users audience or segment

Analytics suggests also using the recently active users audience or segment. In their own words:

[…] you can use the “Recently active users” audience or segment to create an audience or segment that uses engagement data for further analysis and marketing.

As you know by now, engagement data can be quite broad. But I’ll show you how to get the Recently active users audience segment and what engagement data you can correlate it with. 

In the left navigation panel, click Explore.

Clicking Explore in the GA4 navigation panel

Then, create a new Exploration by clicking on the Blank card with the big colored plus + sign or select an existing one. You can read to learn more about Explorations by checking our Top 10 GA4 Exploration Reports with Use Cases.

Once in your Explore report, click on the plus + sign next to Segment

Clicking Segment

Then, select the Recently active users card.

Selecting recently active users

Have a look at the Engagement Overview report from the Google Analytics Help Center to find a list of engagement data that you can use in combination with your segment.

Defining Your Engagement

Remember, engagement can be whatever you want it to be. Most often, it’s a click on a button that prompts an action (such as a “contact us” or “read more” button, or a button on your sales page) or submitting a form. 

Pageviews can also show engagement, especially in funnels. If a user views a page that comes after a sequence, like a thank-you page, it suggests they’ve completed a step.

It can become more intricate as you learn more about your audience, often adding a layer of complexity to your tracking.

For instance, engagement could be a user staying on the site for at least 30 seconds and scrolling through 50%, or watching a section of your page for more than 10 seconds.

This often requires using Google Tag Manager.


We hope that you have a better grasp of what user_engagement means. We’ve seen that user engagement can encompass several meanings. However, it primarily represents the amount of time a user spends on your website or app.

The time value is then used by GA4 to create a “user_engagement” event, as well as other engagement metrics such as User engagement (available in Explorations), Average Engagement Time, Active Users, and much more.

Additionally, we’ve emphasized that engagement can be defined in various ways.

GA4 is a data giant, and wrapping your head around it all isn’t always straightforward.

Terms can be forgotten, and their functions and actual usefulness can become blurred when trying to understand your visitors. This is why I encourage you to refer to 11 GA4 Metrics to Better Understand Your User Behavior.

Lastly, use heatmaps and session recordings to get even deeper insights into GA4 engagement data.

But what are your thoughts on GA4 user engagement? It would be genuinely interesting to learn how you use it or if you even find it useful.


Is User Engagement a Ranking Factor?

There isn’t a direct answer to this question. The reality is that Google has officially stated multiple times that engagement is not a ranking factor (which hasn’t convinced everyone in the SEO community).

Other factors like page views are also not considered for site ranking. However, that doesn’t mean they don’t play an important role in SEO performance, like providing great user experience. 

The number of clicks on quality links, whether they point to another page within your website or external pages, signals relevance and value to Google, impacting the ranking. In this context, user engagement can serve as a significant factor in rankings.

What Is the Difference Between Page Views and User Engagement?

Page view shows you how many times a page was viewed whereas user engagement provides a better understanding of how users interact with the page.

User engagement (in all its different forms) provides details on how users viewed your page and how they interacted with it (like button clicks, scrolls, watching a video, going to the next page, etc.).