What is signal loss? Where your conversions go to disappear
ITP, iOS, ad blockers, cookie expiry, redirects and cross-device journeys all eat conversion data. Here is how each one works, how to measure your own loss, and what it does to CPA and ROAS.
Every ad platform runs on a feedback loop: it shows an ad, someone clicks, something happens (or doesn't), and the outcome gets reported back so the delivery system can find more people like the ones who converted. Signal loss is everything that breaks the reporting half of that loop: conversions that really happened but never make it back to the platform, or make it back stripped of the identifiers needed to attribute them to a click.
A working definition: signal loss is the gap between the conversions your backend records and the conversions your ad platform can see and attribute. It is not one bug but a stack of independent failure modes, and each one takes its own bite.
Where signals actually get lost
1. Safari ITP and iOS privacy features
Safari's Intelligent Tracking Prevention caps the lifetime of cookies set by JavaScript (the kind your pixel uses) at seven days, and at 24 hours for traffic arriving from URLs with known tracking decoration like fbclid. A customer who clicks your ad on Tuesday and buys the following weekend looks like a brand-new organic visitor. On iOS, App Tracking Transparency removed the device identifier for the large share of users who decline the prompt, which gutted in-app attribution and pushed platforms further toward modeled, incomplete reporting.
2. Ad blockers and tracking prevention
Content blockers and browser-level protections (Firefox ETP, Brave Shields, many DNS blockers) block the tracking scripts and the request endpoints along with the ads. When the pixel script never loads, the event never fires. Depending on your audience, blocked rates commonly land anywhere from 15% to 40%; technical and younger audiences skew higher. This loss is invisible in your analytics for the same reason it exists: the measurement code was blocked.
3. Cookie expiry and storage purges
Attribution cookies like _fbp and _fbconly help if they still exist when the conversion happens. Between ITP's seven-day cap, users clearing site data, and private browsing sessions, the identifier that ties the purchase to the click often dies before the purchase does. Long consideration cycles suffer the most, and those are exactly the high-ticket purchases you care most about.
4. Redirects and checkout hops
Click IDs (fbclid, gclid, ttclid) arrive as URL parameters on the landing page. If they aren't captured and persisted immediately, any hop can destroy them: a www-to-apex redirect, a language redirect, a consent wall, an external payment provider, a “thank you” page on a different subdomain. The user converts; the parameter that proved which ad caused it evaporated three redirects ago.
5. Cross-device journeys
Someone taps your ad on their phone during a commute and buys on a laptop that evening. Cookie-based tracking sees two unrelated strangers. Without a durable identifier (a login, an email captured at checkout, a persistent first-party visitor ID), no browser mechanism can stitch that journey back together.
How to measure your own signal loss
Measuring this takes one honest comparison rather than a full research project. Take a fixed window (28 days works), pull actual orders from your backend, and compare them to what each platform reports as attributed conversions plus what your own click data says should have been attributable:
# The blunt version
signal_loss = 1 - (platform_attributed_conversions / backend_conversions_from_paid)
# Example: store shows 1,000 orders from paid landings,
# platforms collectively attribute 620
signal_loss = 1 - (620 / 1000) # = 38%Then segment, because the average hides the story:
- By OS and browser.If iOS/Safari conversions are underreported 2-3× relative to Chrome/Android, that is ITP and ATT at work.
- By time-to-convert. Loss that grows sharply after day 1 and again after day 7 points at cookie expiry.
- Browser events vs. server events.If you already send both, the platforms' own diagnostics (Meta's Events Manager overlap view, for instance) will show what share of conversions arrived only via the server. That share is what the pixel alone was losing.
What signal loss does to CPA and ROAS
The obvious damage is cosmetic: reported ROAS understates reality, reported CPA overstates it, and you make budget decisions on wrong numbers. The less obvious damage is worse, because it compounds:
- The algorithm optimizes on what it sees. Delivery systems bid toward users who look like observed converters. If iOS buyers vanish from the feedback loop, the system learns your buyers are Android users on Chrome, and bids accordingly. You get more of the traffic you can measure instead of more of the traffic that converts.
- Learning phases stretch out. Ad sets need a steady flow of conversion events to exit learning. Feed them 60% of reality and they need proportionally more spend and time to stabilize, or they never do and performance whipsaws.
- Seed data degrades. Lookalike and automated audiences are built from your converters. A biased, shrunken seed produces a biased, shrunken model of your customer.
A platform that sees 60% of your conversions reports 60% of your results, which is bad enough, but it also makes decisions as if the other 40% of your customers don't exist. That is how CPAs drift upward while nothing visible changes in the account.
What to do about it
You cannot fix Safari, and you shouldn't try to out-trick ad blockers. The durable fix is architectural: capture click IDs and session data first-party the moment the landing page loads, persist them server-side against a visitor identity, match conversions to that identity when they happen (hours or weeks later, on any device where the user identifies themselves), and deliver the event to the platform from your server, deduplicated against whatever the pixel managed to report. That is exactly the model we unpack in Server-side tracking, explained.
Measure your gap first. Most teams who run the comparison above find a 25-45% hole. Once you can see it, you can close most of it.