Skip to content
All insights
Attribution11 min read

Attribution after iOS 14: what actually works.

Two years into the privacy-first era, most brands still have broken measurement. Here is the stack that produces decisions you can actually trust.

TA
The ADSRUNNER team
Performance marketing operators

The brands we work with mostly fall into two camps on attribution. The first camp is still relying on platform-reported numbers and quietly making bad decisions because of it. The second camp has done partial fixes — Conversions API setup, server-side tracking, maybe some GA4 work — and feels mostly fine, while still being wrong about which channels are actually driving incremental revenue.

Both camps need to read this. The privacy changes are not getting reversed. Pixel attribution is not coming back. The brands that win the next decade will be the ones that built a real attribution stack early, instead of optimizing on noise.

What broke

For about ten years, paid media measurement was easy. Drop a pixel, configure a few events, watch the dashboard. The pixel saw nearly every conversion. Attribution was effectively last-click but precise. Smart Bidding worked because the signal it received was clean.

iOS 14, third-party cookie deprecation, and consent mode changes broke this in three different ways. Browsers stopped sending the data. Users opted out of tracking. Cross-domain attribution stopped working. The pixel still fires, but it sees a fraction of what it used to.

The honest impact varies by industry, browser mix, and operating system distribution, but for most consumer brands the pixel currently captures somewhere between 50-80% of true conversions. Most brands are running their bidding strategies on this incomplete picture and assume the dashboard is right.

The four-layer attribution stack

A modern attribution stack has four layers. Each layer captures something the others miss. Run all four together and you get something approximating reality. Run any of them in isolation and you get partial truth.

Layer one: server-side event tracking

Conversions API for Meta. Measurement Protocol for Google Analytics. Enhanced Conversions for Google Ads. The principle is the same — instead of relying on the browser to send the conversion event, your server sends it directly to the ad platform. The browser cannot block what the server sends.

This is table stakes now. Every brand should be running this. Most still are not. It typically recovers 15-30% of the conversions the pixel was missing.

Layer two: first-party tracking

A first-party tracking pixel runs on your own domain (ideally a subdomain). It captures user journeys before any conversion happens — page views, add to cart, time on site, return visits. This data goes into your own analytical database (we use ClickHouse), not into a third-party tool.

The advantage is that this data survives privacy changes. It is your data, on your servers. You can join it with order data from Shopify, with CRM events from HubSpot, with any other system you operate. You own the attribution layer instead of renting it from Meta or Google.

This is what tools like Triple Whale, Hyros, and Northbeam are. We built our equivalent into our platform because we wanted it integrated with the rest of the stack — but if you are not working with us, those tools are reasonable alternatives.

Layer three: multi-touch attribution modeling

Once you have first-party event data, you can model attribution properly. First-touch, last-touch, linear, time-decay, and data-driven models give you different views of the same data. The right model depends on your buying cycle and customer behavior, but the point is to stop relying on platform-reported attribution as the source of truth.

Platforms always over-claim their own contribution. Meta will tell you it drove the conversion. So will Google. So will TikTok. They are all looking at the same conversion through their own attribution window and counting it. Multi-touch modeling on your own data deduplicates this.

Layer four: incrementality testing

The final layer is the only one that produces real causal knowledge: incrementality testing. You run controlled experiments where one segment of your audience is exposed to ads and another is not. The difference in conversion rate is the actual incremental impact of advertising, not just the attributed conversions.

Most brands skip this because it requires turning campaigns off in some regions or holding out audience segments. The math feels uncomfortable. But it is the only way to know whether your YouTube spend is actually driving incremental revenue or just claiming credit for revenue that would have happened anyway. The brands that run regular incrementality tests make better budget decisions than the brands that do not.

···

What good looks like

When all four layers are running, the picture changes. Reported revenue from the platforms is reconciled against your first-party data. The gap between the two is monitored as a quality signal. Attribution models can be compared. Incrementality tests calibrate which channels actually drive growth.

The decisions get better. You stop scaling campaigns that are over-claiming credit. You start scaling campaigns that are quietly working but under-attributed. You can defend your channel mix to the CFO with data they can verify. The CAC payback math actually adds up.

Building this stack is real work. Eight to twelve weeks of foundational engineering for most brands. Most agencies will not do it because it is unglamorous and slows down the visible work. The brands that will own the next decade are doing it anyway.

Written by The ADSRUNNER team. If this resonated and you want to apply it to your own account, you can book a strategy call or run a free audit.

Want this kind of thinking on your account?

Book a strategy call. We'll review your account and show you specifically what we'd do differently.