
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
- Direct traffic overrides your real source
- Missing session stitching logic = broken paths
- Attribution window mismatch (lookback period matters!)
- 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.