There’s a number that should make every performance marketer’s stomach drop. It’s not your CAC. It’s not your ROAS. It’s the percentage of your traffic showing up as “direct.”
When I joined a fast-growing digital health company, I opened Google Analytics and Mixpanel and saw it immediately. Direct traffic was enormous. Way too enormous. I have a lot of respect for what that brand had built, but no brand at that stage drives that kind of organic, direct attention. Something was broken.
We were effectively blind to where half our users were coming from. And we were spending real money on Facebook and Google Ads the entire time.
What “Direct” Traffic Actually Means
Most marketers treat a spike in direct traffic as a compliment. It isn’t. In most cases, it means your attribution model has a hole in it, and sessions are falling through with no source attached.
The consequences compound fast. When you can only see half the data, your paid campaigns look like they’re underperforming. You pull budget. You second-guess creative. You optimize against a fiction.
We couldn’t accurately calculate CAC or LTV by channel. That meant every budget decision was a guess dressed up as a strategy.
I started pulling the threads. One major culprit was Facebook’s link shimming. When a user clicks a Facebook ad, they’re briefly redirected through an intermediary URL before hitting your site. That redirect strips the UTM parameters clean off the link. By the time the session registers in your analytics, the source is gone. It shows up as direct.
I built a workaround that preserved UTMs through the redirect. Then I introduced unique ID checkpoints at every critical stage of the funnel — so even if attribution broke at one point, we could trace the user back to their origin from another.
In two to three weeks, we pushed attribution from 50% to over 99%. Leadership could finally see the real performance of every channel, every campaign, every ad. We knew actual CAC. We knew actual LTV. We could run performance marketing the way it’s supposed to be run.
Google Just Made This Harder for Everyone
As of June 15, 2026, Google removed the GA4 Signals fallback for ad personalization. This is a big deal and most teams haven’t felt it yet.
Here’s what it means in plain terms: if your consent management platform isn’t configured correctly, GA4 can no longer use Signals to fill in the gaps on cross-device tracking. The fallback is gone. Sessions that used to get stitched together now get counted separately. Attribution gaps appear overnight. And because cross-device journeys are now undercounted, your reported CAC starts climbing — not because your campaigns got worse, but because your measurement did.
This isn’t a future risk. It’s happening now, quietly, in dashboards across every industry.
The teams that won’t notice are the ones who already have clean attribution infrastructure. Proper UTM discipline. Consent platforms that are actually configured, not just installed. Server-side tracking where it matters. Unique identifiers that don’t depend on a single data point to survive.
The teams that will notice are the ones who’ve been coasting on GA4 Signals as a silent safety net without realizing it.
Attribution Isn’t a Technical Detail
I’ve heard attribution described as a “tracking problem” — something for the analytics team to sort out. That framing is exactly why so many companies spend months optimizing campaigns that are running on bad data.
Attribution is the foundation. Every CAC calculation, every LTV model, every budget allocation decision sits on top of it. If the foundation is cracked, none of the work above it is reliable.
The Google change is a forcing function. It’s pressure that will expose every team that’s been assuming their data is clean without actually verifying it.
Check your direct traffic percentage right now. If it’s higher than 10-15%, you have a problem worth solving before it solves itself — badly.
Audit your consent platform configuration. Make sure Signals wasn’t quietly doing work you didn’t know about. Build redundancy into your tracking so no single point of failure takes down your whole attribution model.
We fixed it once from 50% to 99%. The playbook exists. The question is whether you act before the gap shows up in your CAC report — or after.





