Report which web pages get the most traffic and highest engagement

Engagement Analytics

What does it mean for a user to be engaged. If we were sitting in front of them we could look at their eye movements, we could understand if they were actively reading, what they were looking at and how divided their attention was.
But measuring website interactions and and user engagement with web metrics is different. We’re going to look at using Google Analytics v4 to as our method of tracking metrics but we’ll also compare that the to Google Analytics v3 aka Universal Analytics

What does it mean to be Engaged

We want to understand if users are interested in our content / service and whether they’re taking action on our website to illustrate that engagement - are we engaging? In terms of tracking engagement it means leveraging the Google Analytics code to capture and measure the users’s behaviour and providing dimmensions and tracking metrics we can report on.
Depending on our business and website and the interactive features available to you have a lot of things you could measure. Google Analytics provides robust ability to do custom tracking of your site and the interactions that could occur. We’re going to stick to the default metrics and dimensions available to GA4 when tracking page and session engagement.

Critical: Engagement is Dimensional

Because we’re measuring aggregates (sums and averages) you might not be able to differentiate between good and bad. For example
  • Our bounce rate on 30% of sessions is 90%
  • Our bounce rate on 70% of sessions is 30%
  • Our weighted average bounce rate is 48%
How do you figure out the 30% of sessions where things aren’t performing? We have to use what are known as dimension. Examples include:
  • Maybe all our content is in english and non english speaking sessions bounce more readily - we’d know this by breaking things apart using the country dimension
  • Maybe we have some broken pages that are not even working - we’d now this by breaking things apart using the page location dimension
  • Perhaps some ad campaigns have what feel like false promises to users, causing them to exit quickly as they feel the landing page did not match their expectations based on the advertisement. For that we could break things apart using the utm params: source, campaign, medium
So yes it’s important to have dimensions that show us engagement but it’s equally important to understand that we need to look across many dimension to understand our users / content better.

Goal: Engagement Report / Dashboard in Google Sheets

Our goal is to teach you enough that you can go create a google sheet that automatically updates with all of our engagement stats on a daily basis. We’ll show you a couple examples so that you feel comfortable playing around and creating multiple graphs showing engagement over time to better understand how your site is doing.

Engagement Metrics

Engaged sessions

Engaged sessions gives us the number of sessions that lasted longer than 10 seconds, had a conversion event, or had 2 or more screen views. This gives a good baseline that the user did not just bounce (eg show up at our site and immediately determine they weren’t interested).
When paired with page level dimensions like landing page this becomes a fantastic page engagement metric. Allowing us to understand:
  • Which landing pages drive strong engagement
  • Using google search console query data we can see which search keywords drive good engagement with our content

Average session duration

Engaged sessions are counted if you stay at least 10 seconds. But 10 seconds isn’t very long. The average session duration helps us understand when our users are spending long enough interacting with our content. The term “long enough” is doing a lot of heavy lifting, by that I mean it’s subjective what long enough means for your site, for example:
  • Long form 5000 word articles - maybe 60 seconds would be considered a success in that they spent some time on the page and did read
  • Pricing page - maybe 10 seconds is sufficient here as a minimum in that it’s enough time to assess your pricing and the page has done it’s job


DAU / MAU means daily active users / monthly active users - it’s a good measure of how many of your monthly users come back on a daily basis. This is a good metric to understand the engagement of your users base, which is very different from engagement during a given session.
As reference this utilizes 1-day active users / 28-day active users
For example someone like instagram might have very a high % of users who come back every day. If you don’t expect many people to come back to your website you might have a very low % and not have this be concerning. If you expect people to be coming back to your web service or app - eg slack, facebook messanger, discord - on a daily basis you want this number high.
If you’re trying to understand the percentage of traffic that has visited your site before you could compare 28-day active users to all active users. If you’re an ecommerce store First time purchasers vs Active users is another good comparison

Bounce rate

Bounce Rate is basically the % of sessions that are not Engaged sessions - eg ( sessions - engaged sessions ) / sessions. Users who did not engage are considered to have bounced which means they didn’t stay at least 10 seconds or didn’t convert or didn’t have at least 2 views.
Bounce rate is a % so it’s a nice metric to pull down without having to do the math - with engaged sessions and comparing them to sessions to draw a conclusion.
Some good dimensions to pair bounce rate with are:
  • Date - Did anything happen to our bounce rate to warrant investigation
  • Landing page - Which of our pages people are landing on have good / bad engagement
  • Session Campaign & Landing page - If users who click on marketing campaigns just bounce then it’s a lot of wasted $ and effort - look into the campaigns and landing pages
  • Country - Is our site optimized (speed, language, etc.) for all countries. Eg maybe showing localized pricing would help.

Views per sessions

Views per session means the number of pages ( or in the case of an app - screens) that a user looked at during their session. This measures a different type of engagement. It’s not inheriently bad if a users views more than one pages so, once again, it’s important to understand what we want to see. Here are some examples:
  • In a top of funnel campaign having a user browse a lot of different articles and use cases could be a good thing, so a high views per session
  • In a bottom of funnel campaign where we know a user is interested and knows our product having them just click the offer we sent them in an email might mean we get only 1 view per session (assuming our checkout process is one one page) so one view might be okay
  • If we have a very large reference article and we’re getting traffic from reddit sending people to read it, we should probably expect to only get one view per session.

Cart to view rate

If you’re an ecommerce store tracking how many of your users who view products actually add them to their cart. The Cart to view rate shows the percantage of users who viewed a product that added it to their cart.
It makes a lot of sense to use a page dimension like page path with cart-to-view rate metric as it will allow you to break down all your product pages and view how effective those pages are at getting users to a product to their cart. You could join this with data from Shopify such as inventory as out of stock items usually can’t be added to a cart.

Pushing Customer Engagement Metrics to Google Sheets

Now that we have a good idea how to measure website traffic and which web metrics are useful to measure engagements lets get some tracking metrics and dimenssions into Google Sheets.

Create a report to indicate how traffic arrived at a website

Lets see how traffic is arriving (dimensions = source and medium) and whether it engaged (metrics = bounce rate and average session duration)

Video Showing us Connect GA4 Data into Google Sheets using SyncWith

Video preview


You should get back something like this:
notion image

Graphing the Data

Which will let you create a chart like:
notion image
Some observations:
  • Our third largest source of traffic in the example is Bing, and it has the highest bounce rate, much higher than google and they are both organic search traffic
  • Reddit and ProductHunt have the lowest bounce rate but also the lowest session duration - so users aren’t bouncing but they’re also largely consuming the content relevant to the post and then leaving
  • This is a great tool to indicate how traffic arrived at a website and whether it was engaged

Graphing Engagement Over Time

If we add the Date dimension to the connection we can see this data graphed over time.
notion image
If we do that our data will look different as we’ll basically get 60X more rows - one for each Date Source Medium. Eg 2021-06-01 Google Organic


By adding Date we get a new column with the format YYYMMDD:
notion image

Which web pages get the most traffic and highest engagement?

If we wanted to further understand which pages are driving the most traffic and highest engagement we could remove Date and add in either Landing page - if we care mostly about the pages people are sending traffic to, or we could look at Page path as well as Page title which will tell us the name of the page and it’s path.


In summary we should now understand which engagement metrics help us understand our website interactions and how to use dimensions to better understand where and what types of users are engaged on the site.
You’ll need to think through the types of website interactions you expect to have on your page to determine what it means to be engaged for your content and users.
You can use the user engagement metrics outlined above, like Bounce rate and Sessions duration which helps show the average engagement time.
If you’re an ecommerce store try playing around with cart-to-view-rate to better understand your customer engagement in your product pages.
If there are any tracking metrics that you’d like us to review, for example how to show the or add more detail on please let us know at support.

Don’t Have SyncWith?

  • SyncWith is a Google Sheets Add On
  • SyncWith allows you to move data from any API into Google Sheets
  • Learn more about why Marketers love SyncWith
  • Check out our Google Workspace Listing and see why we’re the highest rated API add on with over 100,000 installs. Install today and get your data into Sheets in minutes.