In one project, the client pointed to GA4 reports: “Our average session is 5 minutes! People are reading the content.”

So, the team discussed UI changes and ways to increase engagement.

But when we analyzed sessions in detail, we found something else: many users had just left the tab open. No scrolls, no clicks - no activity.

GA4 doesn’t measure actual engagement - it follows technical rules:

• Duration is based on time between events — not screen presence
• A return after 31 minutes starts a new session, even if behavior is continuous
• user_engagement can fire with minimal interaction

This creates the illusion that users are engaged — when they might just be away from their screen.

Because of this:

• The client overestimated engagement
• Invested in redesigning a landing page that was already fine
• Spent on UI updates that didn’t improve conversions
• Made decisions based on timers, not user behavior

The metric looked good — but it measured time, not interest.

Now I handle this differently:

• Focus on REAL user_engagement_time and action intervals — not “session duration”
• Check for real interaction events
• Use proxy metrics:
- scroll depth
- time to first action
- events per session
• Manually audit high-"engagement" sessions in BigQuery
• Avoid using average session duration as a KPI - it’s often misleading

GA4 gives you numbers. But understanding what they reflect — that’s your job.

Session time isn’t how long someone stayed. It’s how long GA4 assumed they did.

Want to get all my top Linkedin content? I regularly upload it to one Notion doc.

Go here to download it for FREE.