Tracking despite consent loss
iOS 17, ad blockers, Consent Mode v2 — conversion numbers drop. Server-side tracking as answer.
Background
Why do tracking setups lose data?
iOS 17 ITP & the invisible data loss
Apple's Intelligent Tracking Prevention (ITP) deletes first-party cookies after 7 days — and third-party cookies immediately. Mail Privacy Protection proactively preloads tracking pixels without the recipient opening the email. The result: your classic browser tracking sees less than 50% of the real user journey, without any error message appearing anywhere. You lose data silently.
What server-side tracking does differently, technically
Instead of the browser sending the conversion directly to Meta or Google, the data flow runs through an intermediate stop: your own server. The browser sends a simple event to your domain, the server enriches it (with hashed user ID, IP, user agent) and sends it server-side to the platform. ITP doesn't apply here — because the data transfer runs server to server, not in the browser.
Why Consent Mode v2 isn't enough
Consent Mode v2 is a browser layer that, on refused consent, sends modeled data instead of complete data. Sounds like a solution, but it's limited: ITP still applies, the modeling is based on aggregated probabilities, and the actual data loss through iOS remains. Server-side tracking + CMv2 are complementary, not interchangeable.
Data sovereignty as a strategic factor
If your data lies exclusively in the Meta pixel or GA4, it effectively belongs to the platforms. On account bans, platform switches or API changes, you lose access. With server-side tracking, all events also land in parallel in your own data lake (BigQuery, Snowflake, your own cloud) — you keep the raw data, can analyze it independently and send it to any platform.
Frequently asked questions
Common questions about server-side tracking
How much tracking loss is normal after iOS 17?
Tracking loss depends heavily on the setup — the question isn't whether you lose, but how much.
Classic browser tracking without server-side: 30–50% data loss is standard today. For iOS-heavy audiences (premium, health, beauty), more toward 50%; for Android-heavy B2B audiences, toward 30%.
With a server-side setup & CAPI: match rate rises to 70–90% — depending on data quality (hashed email, hashed phone, click ID, IP).
With your own data lake: 95%+ data retention, because you don't depend on platform reports but analyze your own raw data.
What's “normal” says nothing about what's possible. 30–50% loss is common — but doesn't mean you have to accept it.
How do I measure whether my tracking setup is good enough?
There are three key metrics — and all three can be checked concretely.
1. Event match rate (EMQ in Meta): visible in Meta Events Manager. Values below 6.0 (out of 10) are critical, 7.0–8.5 is good, 9.0+ is very good. A low EMQ means: Meta can't assign your events to user profiles — optimization suffers.
2. Server-side vs. browser discrepancy: in the Tag Manager container, compare the number of server-side events vs. browser pixels. With a clean setup, server-side should see 15–30% more events than browser — otherwise the advantage of server-side is lost.
3. Platform report vs. real sales: the most honest test — compare conversions in the Meta or Google report with the actual orders from the shop backend. A discrepancy under 10% is very good, 10–20% is normal, more than 20% means broken tracking.
What these values say about your stack: all three metrics must be in the green zone at the same time.
CAPI vs. pixel — what for what?
One of the most frequent questions — and one of the most frequently misunderstood. The short answer: you need both, in parallel.
The pixel (browser tracking) sees everything that happens in the browser (UTM parameters, click IDs, referrer), but is heavily restricted by ITP, ad blockers and consent refusal.
CAPI (Conversions API) sends conversions server to server, independent of the browser. It's not blocked by ITP or ad blockers. It needs richer data (hashed email, phone, IP, user agent) for good matching.
With event deduplication, Meta automatically detects whether an event came from the pixel and CAPI — and counts it only once. You get the advantages of both worlds: browser click data + server-side robustness.
Rule of thumb: the pixel alone is no longer sufficient today. CAPI alone loses click attribution. Both together with clean deduplication is the standard.
Is server-side tracking GDPR-compliant?
Server-side isn't automatically GDPR-compliant, but it's the better foundation for GDPR compliance than pure browser tracking.
- What server-side enables: pseudonymization on the server (hashing email/phone/IP), selective data sharing per platform, audit logs for all data transfers, control over sub-processors
- What server-side doesn't solve: the consent requirement (user consent is still needed), US data transfer (the Schrems II risk remains), the cookie-banner requirement for first-party cookies
- What you need: a consent management platform (Cookiebot, Usercentrics), a privacy policy noting server-side tracking, possibly a DPIA, contractual arrangements with sub-processors — I set this up by default.
Is BigQuery worth it for my setup?
BigQuery is the strategic question behind server-side tracking — and it's worth it more often than you'd think.
What BigQuery costs monthly: for mid-sized setups (1–5M events/month) typically €30–100 storage + query costs. Scales linearly with volume.
Rule of thumb: if you're serious about tracking and see data as a long-term asset, BigQuery (or an equivalent like Snowflake) is the one-time investment you'll have to make eventually anyway. The earlier, the cheaper.
- When BigQuery makes sense: more than 100k pageviews/month (GA4 sampling otherwise critical), several data sources to connect, custom attribution models, compliance requirements for your own raw data
- When it's overkill: small sites with a clear funnel and one channel, no SQL/dbt resources on the team, pure performance reporting is enough
Can I book the tracking audit even if I already use server-side?
Yes — and then it's often especially valuable. A server-side setup doesn't automatically mean a good setup — many implementations still leave 30–50% of the data on the table without anyone noticing.
What you get: a match-rate check, event-deduplication verification, reconciliation of pixel ↔ CAPI ↔ actual sales. Plus an action plan with concrete optimization levers.
Typical findings in existing setups: misconfigured triggers in the sGTM container, missing user properties in CAPI, unused optimization fields, enhanced conversion mode not activated.
How the collaboration works: I clarify the technical findings directly with your dev team or external agency. No provider switch needed.
Who this is relevant for
Do you recognize yourself in any of these points?
If even just one of these applies to you, you should check your tracking setup.
When your conversion numbers drop even though the campaign is running
Rule of thumb: at more than 20% discrepancy between platform reports and actual sales, server-side tracking is overdue.
When iOS traffic performs noticeably worse than Android
It's not the product that's worse on iOS — it's the tracking. ITP kills cookies, pixels are ignored, conversions migrate into the “Direct” category.
When Meta pixel data and actual sales diverge strongly
A healthy match rate is between 70 and 90%. Anything below that means: Meta optimizes with incomplete data — you're paying for unmeasurable reach.
When your consent banner blocks more than 30%
Cookie-banner refusal is especially high in the DACH region. Without server-side + Consent Mode v2, you lose the refusing 30–50% completely from the reporting — they still buy, you just don't see it.
When you can't attribute cross-device purchases
A user clicks on the smartphone, buys on the desktop — classic pixels see this as two separate sessions. Server-side with user-ID hashing connects the touchpoints.
My approach
5 phases for tracking that's measurable again
My answer to the tracking problem: a 5-phase framework that systematically closes the typical data leaks — from the audit to ongoing monitoring.
PHASE 01
Tracking audit
Complete capture of all tracking points: pixel, GA4, consent setup, match rate, data leaks, duplicate events.
PHASE 02
Architecture
Plan the data model and server-side setup. Choice: Cloudflare Worker, Stape, your own sGTM container — to suit the stack.
PHASE 03
Implementation
Meta CAPI, server-side GTM, event deduplication. Data flow from browser to server to platform — cleanly configured.
PHASE 04
Validation
Reconciliation pixel ↔ CAPI ↔ orders. Match-rate check, QA of all events, test with real purchases.
PHASE 05
Daily monitoring
Automated daily control of match rate, event volumes and platform discrepancies. Alert on deviations > 10%.
My stack
Which tools I work with
Audit & debug
Tag Assistant · GTM Auditor
Identification of all tracking points and data leaks.
Server-side
Cloudflare Workers · Stape
A server-side container that suits the stack.
Conversions API
Meta CAPI · GA4 MP
Server-to-server conversion transmission.
Data lake
BigQuery · GCS
Your own raw data in parallel to platform reports.
Reconciliation
dbt · GitHub Actions
Automated platform ↔ shop-backend reconciliations.
Monitoring
Looker Studio · Slack alerts
Daily match-rate trends + alert on drift.
Timeline
Express track: for acute data loss, a server-side setup in 1 week — for a surcharge and with a clear scope alignment.
Tracking Audit · 5–7 days · fixed price
Before the server-side setup — know what you're losing right now
Complete check of GA4, Meta Pixel and consent setup. Identification of all data leaks and duplicate events. A prioritized action plan with estimated impact, a 20+-page report with screenshots and benchmarks. If we continue afterwards, we credit the audit fee toward the follow-up project. Fixed price: €890.
Included
- ✓Complete check of GA4, Meta Pixel, consent setup
- ✓Identification of all data leaks and duplicate events
- ✓Prioritized action plan with estimated impact
- ✓20+-page report with screenshots and benchmarks
- ✓45-minute strategy call for Q&A
Related content
Related content

Attribution After the Cookie's Death
First-click and last-click misallocate budgets — a framework for data-driven attribution using first-party data, server-side signals, and incremental measurement.
Read
First-Party & Zero-Party Data: Building a Real Data Foundation
Why the end of third-party cookies isn’t a crisis but an opportunity — and how to build a data infrastructure that actually holds up.
Read
Avoid cookie-banner warnings
Legally compliant consent layer without losing conversion data. Server-side tracking as fallback.
View case