Blog · Analytics Analytics

GA4 Is Lying to You Too: The Sessions vs Users Problem

GA4 traffic is up but leads are flat? The platform isn't broken: you're reading it wrong. Here's the sessions vs users problem and what GA4 is actually good for.

TR Teddi Russell · · 4 min read

There's a version of this conversation that happens in almost every client reporting meeting.

"Our traffic is up 23% this month."

"But leads are flat."

The traffic number is real. So is the flat leads. The problem is that "traffic" is doing a lot of work in that sentence, and GA4 makes it easy to use the word without being precise about what it means.

Sessions and Users Are Not the Same Thing

A session is a visit. A user is a person (or more accurately, a device-browser combination that GA4 treats as a person). One user can create multiple sessions.

If your sessions are up 23% but your users are up 5%, you don't have 23% more people coming to your site. You have roughly the same number of people visiting more often, or more likely, you have bots, crawlers, or a spike in some automated traffic inflating your session count.

The first question when traffic goes up: which metric actually went up, and by how much?

The Engaged Sessions Problem

GA4 replaced the old Universal Analytics "bounce rate" with "engaged sessions": a session where someone spent more than 10 seconds on the site, viewed more than one page, or completed a conversion event.

This sounds more meaningful than bounce rate, and in some ways it is. But it also means that a session where someone reads your entire 2,000-word blog post and leaves is counted as "unengaged" if they did it in under 10 seconds (which they didn't, but if the session timer is off it can look like it).

More importantly: engagement rate is a proxy for interest, not intent. Someone can be highly engaged with your content and never convert. Before using engagement rate as a success metric, make sure it correlates with something that actually matters to the business.

Attribution Is Murkier Than You Think

GA4 uses data-driven attribution by default, which is probabilistic modelling, not a deterministic record of what actually happened. It distributes credit for a conversion across the touchpoints in someone's path based on a model of what it thinks contributed.

This means when you look at the channel breakdown for your conversions, those numbers are estimates, not facts. The model can attribute a conversion to Organic Search when the person first found you through a paid ad, came back through direct, and only then converted via an organic search click.

Use the attribution model as directional guidance, not as a precise accounting of where your conversions came from.

The Direct Traffic Catch-All

Direct traffic in GA4 means GA4 doesn't know where the visitor came from. This is a catch-all bucket, not a channel.

It captures people typing your URL directly, yes. But it also captures people clicking links in emails that weren't UTM-tagged, links in PDFs, links shared in messaging apps (WhatsApp, Slack, LinkedIn DMs), and links from HTTPS sites to HTTP pages.

If your direct traffic is high, it doesn't necessarily mean you have strong brand awareness. It may mean you have a UTM tagging gap, particularly in your email campaigns.

What to Actually Use GA4 For

GA4 is excellent for: understanding how people move through your site, identifying pages with high exit rates before key conversion points, seeing which landing pages retain traffic vs. lose it immediately, and tracking on-site conversion events.

It's less reliable for: precise attribution of which ad or campaign caused a conversion, understanding dark social or word-of-mouth traffic, and comparing month-over-month without accounting for UTM tagging consistency.

Use GA4 to understand your own site. Use platform data (Google Ads, Meta Ads Manager) to evaluate your campaigns. Use your CRM to know what actually turned into revenue.

The most reliable picture of your marketing performance comes from cross-referencing all three, not from relying on any one of them alone.

Frequently Asked Questions

Why don't GA4 sessions match what Google Ads reports?

GA4 and Google Ads count sessions differently. GA4 uses its own session logic; Google Ads counts clicks. Ad click deduplication, JavaScript errors preventing the GA4 tag from firing, and differences in how cross-device sessions are handled all create discrepancies. A 10–20% difference is normal. Larger gaps suggest a tracking setup issue.

Should we turn off data-driven attribution and use last-click instead?

Generally no. Last-click attribution over-credits the final touchpoint and ignores the role of earlier touchpoints in building awareness and consideration. Data-driven attribution is imperfect but directionally more useful for most businesses. The more important fix is making sure your key conversion events are set up correctly before worrying about which attribution model to use.

Our GA4 traffic spiked massively this month. Is it bots?

Possibly. Check the sessions vs. engaged sessions ratio. Bots tend to produce sessions with near-zero engagement. Also check the geographic breakdown: a spike from an unexpected country at an unusual time is a strong signal of bot traffic or referral spam. GA4 has improved bot filtering since Universal Analytics, but it's not perfect.

Teddi Russell
Written by

Teddi Russell

Operations & Integrations, Hedgehog Marketing

Teddi works across client strategy, tracking, and marketing integrations at Hedgehog Marketing. She writes about the parts of digital marketing that rarely get straightforward answers.

← All articles View original on hedgehogmarketing.com.au →