🎁 Free consultation. Book now. 🆕 New service: GEO optimization for AI search engines 📝 New blog post
Case Study

Safari and Firefox were blocking 40% of purchase conversions, so a $15K monthly ad budget was being optimized on incomplete data. Three months later, attribution accuracy reached 94% and ROAS grew by 35%.

Recovering conversions with BigQuery ML pipeline

Fashion e-commerce brand: how server-side tracking recovered +42% of lost purchase conversions

🛍️ E-commerce / Fashion ⏱️ 3 months 🌍 DE / PL markets
🛍️
+42%
Tracked conversions
94% attribution accuracy
+35% ROAS growth

This case study is for you if...

🛍️ E-commerce with a $10K+ monthly budget You spend $10K+ per month on ads, but the CPA in reports does not match reality
🔒 Lost conversions in Safari and Firefox Safari and Firefox make up a meaningful share of traffic and conversions from those browsers keep disappearing
📊 Inaccurate attribution in GA4 GA4 shows fewer conversions than actually happen, so Smart Bidding optimizes on incomplete data
🌍 European markets with strict privacy limits You need cross-device attribution for DE, PL, UK, or similar privacy-sensitive markets

See yourself in this? Keep reading: this case study shows the solution.

About the project

🛍️

A fashion e-commerce brand focused on European markets, mainly Germany and Poland, with a monthly Google Ads budget above $15K

A fashion e-commerce brand focused on European markets, mainly Germany and Poland, with a monthly Google Ads budget above $15K.

🔥

Challenge

Purchase conversions were being lost because of cookie restrictions such as ITP and ETP. Safari and Firefox blocked third-party cookies, which led to incomplete attribution and inflated CPA in reports.

🎯

Goals

01 Recover conversions lost because of ITP and ETP
02 Build a reliable first-party data pipeline
03 Improve attribution accuracy to optimize ROAS

What can go wrong here

And why most contractors get it wrong

ITP and ETP create a blind spot in conversion tracking

Safari ITP and Firefox ETP block third-party cookies. In fashion e-commerce, Safari can easily account for 30-40% of mobile traffic, which means Google Ads may miss a third of purchases and optimize on partial data.

How I solved it: Server-side GTM with a first-party domain on Google Cloud

Cross-device behavior breaks attribution

A user can click an ad on mobile, research on a tablet, and buy on a laptop. Without cross-device attribution, each device looks like a different person and real ROAS gets undervalued.

How I solved it: A BigQuery ML model for cross-device attribution based on first-party data

Tag migration can break data collection

Moving from client-side to server-side tracking is not a switch you just flip. Migrate too fast and you lose data during the transition; run both carelessly and you get duplicate conversions.

How I solved it: A/B validation between client-side and server-side tracking with phased migration

What was done

STEP 01

Audit of the current tracking setup

I analyzed GA4 and Google Ads data, found discrepancies between server-side and client-side events, and estimated the scale of lost conversions.

STEP 02

Server-side GTM setup

I deployed Server-side GTM on Google Cloud, configured a first-party domain, and migrated the key tags for Google Ads, GA4, and Facebook CAPI to the server side.

STEP 03

BigQuery ML pipeline

I built an ETL pipeline from GA4 into BigQuery and added an ML layer to recover conversions and improve cross-device attribution using first-party data.

STEP 04

Testing and optimization

I compared server-side and client-side tracking in A/B mode, validated attribution quality, and only then migrated campaigns step by step to the new pipeline.

What I did differently

1

Server-side GTM on Google Cloud

I deployed Server-side GTM on a dedicated Google Cloud instance with a first-party domain. Google Ads, GA4, and Facebook CAPI were moved to the server side to bypass ITP and ETP blocking.

2

A BigQuery ML pipeline for attribution

I built an ETL pipeline from GA4 into BigQuery, where an ML layer restored cross-device attribution. Replacing cookies with first-party data pushed accuracy to 94%.

3

Gradual migration with A/B validation

I did not switch everything at once. For two weeks, client-side and server-side tracking ran in parallel so I could compare data, confirm accuracy, and then complete the migration safely.

Numbers that speak for themselves

+42%
Tracked conversions
94%
Attribution accuracy
+35%
ROAS growth

Before and after

Conversions 30-40% missing
94% Server-side tracking
Attribution Inaccurate, inflated CPA
Cross-device BigQuery ML model
Tracking Client-side GTM
Server-side GTM Google Cloud + first-party
ROAS Optimized on partial data
+35% real optimization
What this means for the business
+42%
of conversions that previously went untracked
+35%
ROAS growth thanks to accurate attribution

Put simply, the ad budget stayed the same, but Google Ads finally saw the real picture and optimized on complete data. That meant more sales for the same spend.

Free resource

Guide: Server-side GTM for e-commerce, step by step

How to deploy Server-side GTM on Google Cloud and stop losing conversions. Based on a real pipeline that reached 94% attribution accuracy.

  • PDF, 4 pages: architecture plus implementation steps
  • Includes a BigQuery ML pipeline diagram
  • No signup, no spam
Get it via Telegram →
PDF
Server-side GTM Setup Guide
3 pages PDF • 420 KB
FREE

FAQ

How do you fix lost conversions caused by Safari ITP in Google Ads?

Safari ITP blocks third-party cookies, so GA4 and Google Ads can miss up to 40% of purchase conversions. The fix is Server-side GTM with a first-party domain. In this case, that raised conversion capture to 94%.

What is a BigQuery ML pipeline for e-commerce and why is it needed?

It is an ETL pipeline where data from GA4 flows into BigQuery to build a cross-device attribution model. Instead of relying on cookies, it uses first-party data. In this case, it restored +42% of lost conversions for a fashion brand.

How do you move from client-side to server-side tracking without losing data?

Do not switch everything at once. Run client-side and server-side tracking in parallel for about two weeks, compare the data, confirm the accuracy, and only then complete the migration. That validation window is what made this rollout safe.

Ready for growth?

Let's discuss your project and find the solution that works for your business.