How to Calculate Dwell Time in Google Analytics
Trying to find "dwell time" inside Google Analytics can feel like a fool's errand. You'll click through every report, dig into every metric, and still come up empty-handed. That’s because, simply put, dwell time isn’t actually a metric Google Analytics natively tracks. This article will show you what dwell time is, why it matters for SEO, and how to calculate a powerful proxy for it using the tools you already have in GA4.
What Exactly Is Dwell Time?
Dwell time is the amount of time that passes between a user clicking on a search engine result and then returning to that same search engine results page (SERP). It's a key user engagement signal for search engines like Google because it helps them understand if a searcher found your content useful or disappointing.
The process has three simple steps:
- A user clicks your link on a Google search results page.
- They spend a certain amount of time on your page consuming your content (this is the "dwell").
- They click the "back" button to return to the search results page.
A long dwell time suggests success. The user landed on your page, found what they were looking for, and was satisfied. A short dwell time (sometimes called "pogo-sticking") suggests failure. The user clicked your link, took a quick look, decided it wasn't what they wanted, and immediately bounced back to the SERP to find a better result.
Because this entire user journey starts and ends on the SERP, it's primarily considered a search engine metric, not a website metric. This is the main reason you won't find it pre-built in Google Analytics.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
Forget Dwell Time: Why Engaged Sessions Are Your New Best Friend
While we can't measure dwell time directly, we can use excellent stand-in metrics to gauge user satisfaction from organic search traffic. In the past (with Universal Analytics), we used metrics like Avg. Time on Page and Avg. Session Duration, but both had a critical flaw: they counted "bounces" as zero-second visits, even if a user spent 10 minutes reading an article and left without clicking anything else. This made the data incredibly misleading.
Google Analytics 4 solved this problem with a much more intelligent metric: Average engagement time.
Average engagement time measures the time that your website was the main focus in a user's browser. An "engaged session" is counted if a visitor does any of the following:
- Stays active on your site for longer than 10 seconds (you can change this default).
- Fires a conversion event.
- Has 2 or more pageviews.
This is a game-changer. That user who reads your whole article for 10 minutes and then leaves is now counted as a highly "engaged" session, not a "bounce" – which is far more accurate. This makes Average engagement time the most reliable proxy for dwell time we've ever had.
How to Find Your Page-Level Dwell Time in GA4
Now, let's get into the practical steps. We'll start by finding the average engagement time for all your pages and then filter it down to see how organic search visitors behave specifically.
1. Navigate to the Pages and Screens Report
This is the quickest way to get a high-level view of page performance. No custom report is needed for this first look.
- From your GA4 dashboard, click on Reports in the left-hand navigation panel.
- Expand the Engagement section.
- Click on Pages and screens.
Here, you will see a list of all your pages and their corresponding metrics, including Views, Users, and crucially, Average engagement time. By default, this shows you data from all traffic sources. This is a good start, but to get a true dwell-time proxy, we need to isolate the visitors arriving from search engines.
2. Filter for Organic Search Traffic
To see which pages satisfy searchers, you need to filter this report to show only users whose session was attributed to organic search.
- At the top of the Pages and screens report, click Add comparison.
- Set the Dimension to Session default channel group.
- Set the Match Type to "exactly matches".
- Set the Value to Organic Search.
- Click Apply.
GA4 will now reload the report, showing you data for "All Users" right next to your new "Organic Search" segment. You can focus on the Organic Search columns or click the "X" on the "All Users" segment to remove it from view. Now, the Average engagement time column is your direct proxy for dwell time. This report reveals which blog posts, landing pages, or product pages are truly engaging visitors from Google.
3. (Advanced) Create a Custom Exploration Report for Deeper Insights
For more control and to look at specific landing pages, the GA4 Explore section is your best tool. This lets you build a custom report from scratch.
- Click Explore in the left-hand navigation.
- Start a new exploration by choosing the Free form template.
- Import Dimensions: In the Variables column, click the "+" next to Dimensions. Search for and import "Landing page + query string" and "Session default channel group".
- Import Metrics: Below that, click the "+" next to Metrics. Search for and import "Average engagement time" and "Sessions".
- Configure the Report: Now, drag and drop the fields onto the Tab Settings column.
- Add a Filter: At the bottom of the Tab Settings column, drag Session default channel group to the Filters box. Configure it to "exactly matches" Organic Search.
You now have a clean, reusable report showing exactly which pages users are landing on from search and how long they're staying. Sort this table by Average engagement time (descending) to find your top-performing, most "satisfying" pages, or sort by Sessions to see where most of your organic traffic lands.
What Is a "Good" Dwell Time?
The honest answer is: it depends entirely on the content. A long, complex tutorial or ultimate guide could reasonably have an engagement time of 8-10 minutes. A quick "how-to" article that answers a simple question might only need 2-3 minutes to be successful. A "Contact Us" page or a sign-in page might have an average engagement of 30 seconds, and that's perfectly fine – the user found what they needed and moved on.
Instead of chasing a universal benchmark, compare pages to one another. Look for anomalies:
- Why does one blog post have an 8-minute engagement time and another similar one only has 90 seconds? The low-performing one might not match search intent, be poorly written, or have technical issues.
- Is our high-traffic "services" page getting almost no engagement? Perhaps the content is confusing, doesn't build trust, or the call-to-action is unclear.
Context is everything. Your goal is to improve engagement time across the board, starting with your most important organic pages.
5 Easy Ways to Improve Your Dwell Time
Improving your "dwell time" proxy is all about creating a better user experience that convinces an organic visitor to stay.
1. Nail the Search Intent, Instantly
The user should know they're in the right place within five seconds. Your headline and opening paragraph must directly address the query that brought them there. If they searched for "best camera for landscape photography," your page should start by talking about exactly that.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
2. Improve Readability
Big walls of text are intimidating. Break up your content to make it scannable and easy to digest:
- Use short paragraphs.
- Write clear and descriptive subheadings (H2s and H3s).
- Use bullet points and numbered lists.
- Bold important phrases for emphasis.
3. Embed Engaging Media
Nothing breaks up text better than a relevant image, infographic, or video. An embedded YouTube video, for example, can add minutes to your average engagement time if viewers watch it.
4. Add Strategic Internal Links
Guide your readers to other relevant and helpful content on your website. Placing contextual internal links gives engaged readers a natural next step and keeps them on your site longer, increasing your session duration and sending positive signals to Google.
5. Optimize Page Load Speed
If your page takes forever to load, users will return to Google before they even see your content. No amount of great writing can fix a slow site. Use Google's PageSpeed Insights to diagnose and address any performance issues.
Final Thoughts
While Google Analytics doesn't offer a direct line to "dwell time," using the Average engagement time metric in GA4 as a proxy for organic search traffic is incredibly powerful. By filtering your reports, you get clear insight into which content is satisfying your audience and which pages need attention to improve the user experience.
At Graphed, we found that constantly diving into menus and setting up filters in Google Analytics to answer these kinds of questions took up way too much of our day. We built Graphed to solve this by letting you simply connect your GA data and ask questions in plain English. Instead of building custom reports, you can just ask, "Show me my top 10 pages by average engagement time from organic search this month," and get an answer in seconds. It allows you to skip the reporting "how-to" and get right to the insights.
Related Articles
How to Create Facebook Ads API for Claude Code
Create a Meta Marketing API access token that never expires, using a system user, so Claude Code can pull Facebook ad reports and manage campaigns.
ClickHouse vs Postgres: When to Switch to Columnar
Comparing ClickHouse vs PostgreSQL means matching storage architecture to workload. Row storage wins for transactions. Columnar wins for scan-heavy analytics.
Google Ads for Orthodontists: Get More Booked Consults
Most orthodontic Google Ads campaigns waste money on low-intent searches. The problem is structure, not the platform.