Why GA4 Doesn’t Do True Last Click Attribution (And What To Do Instead)

May 27, 2025
If you’ve migrated from Universal Analytics, you might be wondering: β€œWhere the hell did my last click attribution go?” Short answer? GA4 doesn’t use it anymore. Not by default. Not even close. And for many marketers, that’s a problem. Whether you're reporting ROI on ad spend, justifying a branded search campaign, or running final-touch retargeting, last click attribution used to be your friend. Predictable. Easy to explain. Comfortable. But GA4 torched it.

What GA4 Uses Instead: The Data-Driven Black Box

By default, GA4 applies a data-driven attribution model for most reports.
What does that mean?

  • Machine learning tries to assign credit across touchpoints.
  • It considers user paths, not last actions.
  • It's more "accurate" but completely opaque.

GA4’s model weighs:

  • Time to conversion
  • Engagement after touch
  • Conversion likelihood uplift

But here’s the kicker: you can’t see exactly how those weights are calculated. It’s the black box problem. And for marketers who just want to know β€œwhich click got the sale,” this model feels like a trap.

Where You Can't Get Last Click in GA4

Let’s be clear, GA4 doesn’t offer a true last-click report out of the box.

You won’t find it in:

  • Explorations
  • Standard acquisition reports
  • Default conversion path reports

Even β€œmodel comparison” reports are limited. They don’t let you drill down cleanly or break out conversion paths over time.

What Google Calls Last Click (But Isn't)

GA4’s β€œLast Click” model isn’t the same as Universal Analytics’ Last Non-Direct Click.

In GA4:

  • It’s the final touchpoint, direct or not.
  • Direct traffic can now get credit, unlike UA.

Result?
Your branded search campaigns might look weaker.
Your direct traffic might look inflated.
Your paid traffic might seem irrelevant.

You’re not crazy, GA4 changed the rules.

How to Rebuild True Last Click Attribution (DIY Method)

The fix?
Build your own attribution logic.

If you’re using BigQuery, you’re in luck. Here’s the outline:

SELECT
  user_pseudo_id,
  MAX(CASE WHEN event_name = 'purchase' THEN event_timestamp END) AS conversion_time,
  (SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'source') AS last_source,
  (SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'medium') AS last_medium,
  (SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'campaign') AS last_campaign
FROM
  `your_project.your_dataset.your_table`
WHERE
  event_name IN ('session_start', 'purchase')
GROUP BY
  user_pseudo_id

This example grabs the last known campaign data before a conversion.
You can level it up by adding:

  • Session logic
  • Timestamp filters
  • Touchpoint ordering

Or, just use our free BigQuery snippet tool here and save yourself the headache.

⚠️ Common Pitfalls When Trying to Rebuild Last Click

  1. Direct traffic overrides your real source
  2. Missing session stitching logic = broken paths
  3. Attribution window mismatch (lookback period matters!)
  4. Multiple conversions? You’ll need a model per goal

This isn’t a one-line fix. It’s attribution engineering.

βœ… When Last Click Still Makes Sense

Despite the hype, last click isn’t dead. It’s still valid when:

  • Evaluating lower funnel campaigns
  • Running brand protection PPC
  • Validating retargeting ROAS
  • Keeping reporting clean for non-technical stakeholders

It’s not perfect, but it’s predictable. And sometimes, that’s more useful than β€œsmart.”

Need Help Fixing Your Attribution?

If you need:

  • A clean last click model you can trust
  • BigQuery-based attribution with transparency
  • Side-by-side model comparisons (last click vs data-driven)

Let us know.

We build it. You own it.

Talk To Us
Share Insights

Web Design

Data Optimisation

User Experience

Conversion Strategies

Chris Walton

Get In Touch

Ready to transform your business with data-driven insights? Let's discuss how we can help you achieve your goals.

Email
chris.walton@netimpression.co.uk
Location
Manchester, United Kingdom