Services
Case Studies
Testimonials
Team
Contact
Let's Talk
B2B SaaS📍 United StatesJune 1, 2026

Server-Side GTM Migration Recovers 34% More Conversions for B2B SaaS

A B2B SaaS company was losing conversion data due to browser-side tracking gaps. We migrated to server-side GTM, implemented enhanced conversions for Google Ads, and connected HubSpot offline conversion uploads — resulting in 34% more reported conversions and a 22% drop in CPA within 60 days.

+34%
Reported Conversions
48/mo64/mo
-22%
Cost Per Acquisition
$210$164
+100%
GCLID Capture Rate
0%100%
+78%
Offline Deal Attribution
0%78%
+34pts
Conversion Match Rate
~60%~94%
Server-Side GTM Migration Recovers 34% More Conversions for B2B SaaS

The Problem

The client — a US-based SaaS startup — was running Google Ads across multiple campaigns targeting mid-market buyers. Their tracking setup was entirely browser-side: a standard GTM container with a GA4 tag and a Google Ads conversion tag firing on a thank-you page.

The issues compounding over time:

  • iOS and Safari users were being missed due to ITP blocking first-party cookies
  • Ad blockers were suppressing the GTM container for a significant portion of traffic
  • Demo bookings that came through HubSpot CRM were never being reported back to Google Ads as conversions
  • The Google Ads account was optimising on incomplete data, inflating CPA estimates and under-bidding on high-intent audiences

Their Google Ads account manager flagged that reported conversions were around 40% below what HubSpot was recording in closed deals — a significant modelling gap.

What We Did

1. Server-Side GTM Setup

We provisioned a server-side GTM container on Google Cloud Run (minimal cost, auto-scaling) and pointed the GA4 measurement protocol and Google Ads conversion pings through it. This meant tracking requests were no longer visible to browser-level blockers, and cookies were set as first-party server-side — extending their effective lifetime beyond ITP limits.

2. Enhanced Conversions for Google Ads

We pulled hashed email from the HubSpot form submission and passed it through the server container as part of the Google Ads conversion hit. This allowed Google to match logged-in users back to their Google accounts — improving match rates and attributing conversions that the click-based tag would have missed entirely.

3. HubSpot Offline Conversion Upload

For deals that closed days or weeks after the initial ad click, we built a Zapier workflow triggered on HubSpot deal stage change. When a deal moved to "Closed Won", the workflow:

  • Pulled the original GCLID stored on the HubSpot contact record
  • Formatted and uploaded it to Google Ads via the offline conversion import API
  • Tagged the conversion with the deal value for value-based bidding

This closed the loop between ad spend and actual revenue — not just form fills.

4. GTM Audit and Deduplication

Before go-live, we audited the existing container and removed duplicate tags, fixed misfiring triggers, and ensured the browser-side and server-side tags weren't double-counting. A GA4 DebugView and Google Ads conversion path report were used to validate clean data post-launch.

Results

Within 60 days of full deployment:

  • +34% increase in reported conversions — primarily recovered from Safari/iOS users and ad-blocked sessions
  • -22% reduction in CPA — Google's Smart Bidding had more data to work with and reallocated spend toward higher-converting segments
  • 100% GCLID capture rate on HubSpot form submissions (previously 0% for offline deals)
  • Offline conversion upload matching 78% of closed deals back to a Google Ads click
  • Client paused their GA4 app+web property migration — the server-side setup resolved the data gaps they were planning to fix with a full platform rebuild

The Google Ads account is now optimising on accurate, complete conversion data — including deal value — for the first time since launch.

Tags
Google AdsServer-Side GTMEnhanced ConversionsOffline ConversionsHubSpotConversion Tracking

Want the same results?

Book a free 30-minute audit. We'll find your tracking gaps and wasted spend – no pitch, no pressure.