You saw it.
On one project, GA4 showed most conversions coming from email and (direct). Paid traffic seemed irrelevant — as if it played no role.
The client asked: “Why spend on ads if conversions come from newsletters and direct?”
No, it's not funny.
We dug in. Exported data to BigQuery. The obvious truth: ad campaigns were doing all the heavy lifting early on, but GA4 gave final credit to last-touch channels.
Attribution in GA4 is a black box — especially with the data-driven model:
• You can’t see how it assigns value
• The logic is hidden, driven by machine learning
• Even “manual” models like last click behave inconsistently across devices
• Email, (direct), and push often get credit just for being the last touch
The illusion? “It’s email that works.” But the email only closed a deal built by ads weeks earlier. GA4 won’t show that.
Because the client trusted GA4:
• They cut ad budgets that drove top-funnel traffic
• Calculated ROI using flawed logic
• Lost revenue by ignoring early-stage efforts
The reports looked clean — but it was machine logic. GA4 didn’t explain. It just drew pretty charts.
Now I do attribution differently:
• Export all events to BigQuery
• Rebuild the full user journey — first touch to purchase
• Manually calculate contributions with models like first click, time decay, position-based
• Compare GA4 vs BigQuery results to spot gaps
• Use GA4 for visuals — not for budget planning
Attribution isn’t a button — it’s an analytics project.
If you’re blindly trusting GA4 to say “who gets the credit,” you might be cutting the campaigns that actually work — and rewarding the ones that just happened to be last.
Want to get all my top Linkedin content? I regularly upload it to one Notion doc.
Go here to download it for FREE.


