How to Set Up and Track Dwell Time Proxies in GA4

Google Analytics 4 (GA4) does not feature a metric explicitly labeled “Dwell Time.” Because dwell time relies on a user returning specifically to a search engine, it is technically an external search engine metric.

However, you can build incredibly accurate proxies for dwell time inside GA4 using Average Engagement Time and custom Exploration Reports. Follow this step-by-step tutorial to configure your dashboard and uncover exactly how long users are actively engaging with your content.

Tracking user behavior in GA4 is essential for identifying whether your content truly resonates. By building these custom reports, you can get a clearer picture of your site’s performance—specifically by comparing your active engagement against the bounce rate vs. dwell time framework we use to measure success.

Step 1: Understand the Metric (Engagement Time vs. Session Duration)

In the old Universal Analytics, “Session Duration” was heavily flawed—if a user read your post for 10 minutes and then closed the tab, UA clocked that session as 0 seconds.

GA4 fixes this with Average Engagement Time. This metric tracks when your website is the primary, active window on the user’s screen (meaning it pauses if they switch tabs or minimize the browser). This is the perfect proxy for dwell time.

Step 2: Build a Custom Dwell Time Exploration Report

To see exactly which pages are holding attention and which are losing it, you need to build a custom Free Form Exploration.

  1. Log into GA4 and click on the Explore tab in the left-hand navigation.

  2. Select Blank to start a new exploration.

  3. Name your report something clear, like Dwell Time Proxy Report.

Step 3: Configure Your Variables

In the left-hand Variables column, you need to import the specific dimensions and metrics required for this analysis.

  • Click the + icon next to Dimensions, search for Page path and screen class, check it, and click Import.

  • Click the + icon next to Metrics, search for and import the following three metrics:

    • Active Users

    • Average Engagement Time

    • Bounce Rate

Step 4: Map Your Settings (Tab Settings)

Now, drag and drop your imported variables into the Tab Settings column to build the data table.

  • Drag Page path and screen class into the Rows section.

  • Drag Active Users, Average Engagement Time, and Bounce Rate into the Values section.

Your screen will dynamically generate a clean, scannable table showing every page on your site alongside its exact user engagement metrics.

Step 5: Filter for Organic Search Traffic

To turn this report from a generic engagement report into a true dwell time proxy, you must isolate users arriving via search engines.

  1. Scroll down to the Filters section at the bottom of the Tab Settings column.

  2. Click it and select Session medium.

  3. Set the match type to exactly matches and enter organic.

  4. Click Apply.

Now, your data exclusively reflects users who found you via Google and other search engines, giving you a true look at your organic SEO dwell time.

How to Read This Dashboard to Fix Content

Analyze your new report for anomalies by looking for two specific patterns:

  • Low Engagement Time + High Bounce Rate: If a page has an average engagement time under 30 seconds and a high bounce rate, organic users are bouncing immediately. Check for technical bugs, slow loading times, or a mismatch between your meta title and the page content.

  • High Engagement Time + High Bounce Rate: This is a fascinating scenario. It means users are staying on the page for minutes (reading your content thoroughly) but leaving without clicking to a second page. This means your content is good, but your internal linking and Calls to Action (CTAs) are weak.