What Are Google Enhanced Conversions?
Google Enhanced Conversions is a server-side tracking feature that improves conversion measurement by sending hashed first-party customer data (email addresses, phone numbers, names, addresses) alongside your conversion events. Google then matches this data against signed-in Google accounts to attribute conversions that the standard Google tag would miss.
Think of it as Google's equivalent of Facebook's Conversions API (CAPI) — same concept, different platform.
Why standard conversion tracking falls short
The regular Google Ads tag (gtag.js) relies on browser cookies and JavaScript execution. Here's what breaks it:
| Problem | Impact on Google Ads Tracking |
|---|---|
| Cookie expiration | Safari ITP limits cookies to 7 days; conversion paths longer than a week lose attribution |
| Ad blockers | 30%+ of desktop users block Google's tracking tag entirely |
| Cross-device journeys | User clicks ad on phone, converts on laptop — cookie doesn't transfer |
| iOS privacy updates | Safari strips click IDs, restricts tracking capabilities |
| Browser privacy changes | Chrome reducing third-party cookie support; Firefox/Edge already limited |
The result: Your Google Ads account is likely missing 5-15% of actual conversions. That incomplete data feeds into Smart Bidding (Target CPA, Target ROAS, Maximize Conversions), making your automated bidding less effective than it could be.
Enhanced Conversions fix this by giving Google a second matching signal — hashed customer data — that works regardless of cookies, browsers, or devices.
How Enhanced Conversions Work
Here's the data flow comparison:
Standard tracking (cookie-based)
User clicks ad → lands on your site → Google tag drops cookie
→ User converts → Google tag reads cookie → Reports conversion
Problem: If the cookie expires, is blocked, or the user switches devices, the conversion is lost.
Enhanced Conversions (first-party data matching)
User clicks ad → lands on your site → Google tag captures click
→ User converts → Your site captures customer data (email, phone, etc.)
→ Data is SHA-256 hashed (encrypted) in the browser or on your server
→ Hashed data sent to Google alongside the conversion event
→ Google matches hash against signed-in Google accounts
→ Conversion attributed to the original ad click
Result: Even if the cookie expired, Google can match the hashed email to the same user who clicked the ad — recovering the conversion.
What data gets sent?
Enhanced Conversions can use any combination of:
| Data Field | Required? | Matching Quality |
|---|---|---|
| Email address | Recommended (most common) | High — most users have a Google account |
| Phone number | Optional | Medium-High |
| Full name | Optional (improves match rate) | Medium |
| Street address | Optional (improves match rate) | Medium |
| City, state, zip, country | Optional (improves match rate) | Low-Medium individually |
Important: All data is SHA-256 hashed before leaving the user's browser or your server. Google never receives the raw data — only the hash. This is a one-way encryption that can't be reversed.
The Two Types of Enhanced Conversions
Google offers two variants, each for a different use case:
1. Enhanced Conversions for Web
Best for: E-commerce stores, SaaS products, any business where the conversion (purchase, sign-up) happens on your website.
How it works:
- User clicks a Google ad
- User completes a purchase or sign-up on your site
- At the moment of conversion, customer data (email, phone) is captured and hashed
- Hashed data is sent to Google with the conversion event
- Google matches the hash to the ad click
Typical results: 5-15% more conversions reported, better Smart Bidding performance.
2. Enhanced Conversions for Leads
Best for: Lead generation businesses, B2B companies, any business where the lead is captured online but the sale happens offline (via phone call, sales meeting, CRM).
How it works:
- User clicks a Google ad
- User fills out a lead form on your site (capturing email, phone)
- Customer data is captured and hashed at form submission
- Later, when the lead converts offline (sale closed in CRM), you upload the hashed data with the conversion event
- Google matches it back to the original ad click
Typical results: Significantly better lead quality optimization, as Google can now optimize for actual sales, not just form fills.
Which one do you need?
| Business Type | Enhanced Conversions Type |
|---|---|
| E-commerce (Shopify, WooCommerce) | Web |
| SaaS / subscription signups | Web |
| Lead generation (forms, demo requests) | Leads |
| B2B with long sales cycles | Leads |
| Both online sales AND lead gen | Both |
Setup Method 1: Google Tag (gtag.js)
This is the simplest method if you're using the Google tag directly on your site.
Step 1: Enable Enhanced Conversions in Google Ads
- Log into your Google Ads account
- Click Goals → Conversions → Summary
- Click on the conversion action you want to enhance (e.g., "Purchase")
- Scroll down to Enhanced conversions and toggle it On
- Select Google tag as your data source
- Accept the Customer data terms
- Click Save
Step 2: Configure data collection
You have three options for how customer data is captured:
Option A — Automatic detection (easiest):
Google's tag automatically scans your conversion page for customer data fields and captures them. This works well for standard checkout pages.
In Google Ads → Conversion action → Enhanced Conversions settings:
- Select "Automatic collection"
- Google's tag will look for email fields, phone fields, and address fields on your page
Option B — CSS selectors (moderate):
Specify exactly which HTML elements contain customer data:
gtag('set', 'user_data', {
'email': document.querySelector('#customer-email').value,
'phone_number': document.querySelector('#customer-phone').value,
'address': {
'first_name': document.querySelector('#first-name').value,
'last_name': document.querySelector('#last-name').value,
'street': document.querySelector('#address').value,
'city': document.querySelector('#city').value,
'region': document.querySelector('#state').value,
'postal_code': document.querySelector('#zip').value,
'country': document.querySelector('#country').value
}
});
Option C — JavaScript code (most control):
Send hashed data directly:
gtag('set', 'user_data', {
'sha256_email_address': hashEmail(userEmail),
'sha256_phone_number': hashPhone(userPhone)
});
Step 3: Verify it's working
- Go to Goals → Conversions → Summary in Google Ads
- Click on your conversion action
- Click the Diagnostics tab
- Check that Enhanced Conversions shows data is being received
- It takes 48-72 hours for diagnostic data to populate
Setup Method 2: Google Tag Manager (GTM)
This method gives you more control and is recommended if you already use GTM.
Step 1: Enable Enhanced Conversions in Google Ads
Same as Method 1, Step 1 — but select Google Tag Manager as your data source.
Step 2: Update your Conversion Linker tag
- Open your GTM container
- Find your Conversion Linker tag (or create one)
- Make sure it fires on All Pages
- Enable Enhanced conversions checkbox in the tag settings
Step 3: Configure the Google Ads Conversion Tracking tag
- Open your Google Ads Conversion Tracking tag in GTM
- Check the Include user-provided data from your website box
- Choose your data source:
- Automatic — GTM detects data from the page
- Manual configuration — Specify data layer variables or CSS selectors
- Code — Custom JavaScript that returns user data
Step 4: Create a User-Provided Data variable (if using manual)
- In GTM, go to Variables → User-Defined Variables → New
- Select User-Provided Data as the variable type
- Map each field to your data layer variable:
- Email:
{{dlv - userEmail}} - Phone:
{{dlv - userPhone}} - First Name:
{{dlv - firstName}} - etc.
- Email:
Step 5: Push data to the data layer
On your conversion page (thank you page, order confirmation), push customer data to the GTM data layer:
dataLayer.push({
'event': 'purchase',
'user_data': {
'email': customer.email,
'phone_number': customer.phone,
'address': {
'first_name': customer.firstName,
'last_name': customer.lastName
}
}
});
Step 6: Publish and verify
- Use GTM Preview mode to test that user data is being captured
- Submit your container
- Check Google Ads Diagnostics after 48-72 hours
Setup Method 3: Server-Side (Google Ads API)
This is the most robust method and is what enterprise teams and tools like SignalBridge use.
Why server-side is better
| Factor | Browser-side (gtag/GTM) | Server-side (API) |
|---|---|---|
| Ad blocker resistance | Blocked by ad blockers | Bypasses ad blockers |
| Data completeness | Limited by browser restrictions | Full data from your server |
| Reliability | Depends on page load, JavaScript execution | Independent of browser |
| Privacy compliance | Harder to control | Full control over what's sent |
| Maintenance | Tag management overhead | API-based, automated |
How server-side Enhanced Conversions work
User clicks Google ad → gclid (click ID) captured
→ User converts on your site → Your server records the conversion
→ Server hashes customer data (email, phone, etc.)
→ Server sends conversion + hashed data to Google Ads API
→ Google matches hash + gclid to the original ad click
Implementation via Google Ads API
# Simplified example — actual implementation requires the Google Ads API client library
conversion = {
"conversion_action": "customers/1234567890/conversionActions/987654321",
"conversion_date_time": "2026-03-10 14:30:00-05:00",
"conversion_value": 99.99,
"currency_code": "USD",
"user_identifiers": [
{
"hashed_email": sha256_hash(normalize(email)),
"hashed_phone_number": sha256_hash(normalize(phone))
}
]
}
The Google Ads API handles the matching on Google's end. Your server sends the conversion with hashed user data, and Google attributes it to the correct ad click.
The Easy Way: Automated Setup with SignalBridge
If the manual setup sounds like a lot of work, that's because it is. You need to:
- Configure Google Ads conversion actions
- Set up gtag.js or GTM tags correctly
- Ensure customer data is captured at conversion time
- Handle data normalization and hashing
- Maintain the integration as Google updates their APIs
- Debug issues when conversions stop flowing
SignalBridge automates all of this.
How it works with SignalBridge:
- Connect your Google Ads account — one-click OAuth integration
- Install the SignalBridge script on your site (one line of code)
- Map your conversion events — tell SignalBridge which events are conversions
- Done — SignalBridge automatically captures conversions server-side, hashes customer data, and sends Enhanced Conversions to Google
No GTM configuration. No manual data layer setup. No API code to write.
SignalBridge also handles:
- Event deduplication — prevents double-counting between browser and server
- Bot filtering — removes fake conversions before they reach Google
- Click ID preservation — captures and passes
gclideven when browsers strip it - Multi-platform — the same setup sends events to Google Enhanced Conversions, Meta CAPI, and TikTok Events API simultaneously
Verifying Your Setup
Regardless of which method you choose, here's how to verify Enhanced Conversions are working:
In Google Ads
- Go to Goals → Conversions → Summary
- Click your conversion action
- Look for the Enhanced conversions column — it should show a green checkmark
- Click Diagnostics for detailed health status
What "healthy" looks like
| Metric | Healthy | Needs Attention |
|---|---|---|
| Tag coverage | 95%+ of conversions include enhanced data | Below 80% — check your data capture |
| Match rate | 50-80%+ | Below 40% — improve data quality |
| Diagnostic status | "Recording" or "Active" | "Not active" — check configuration |
| Time to populate | 48-72 hours after first event | Over 7 days — something is wrong |
Common issues and fixes
Issue: Enhanced Conversions showing "No recent data"
- Cause: Data isn't being sent or the tag isn't firing on conversion pages
- Fix: Check that your conversion tag fires on the thank-you/confirmation page, not just the checkout page
Issue: Low match rate (below 40%)
- Cause: Only sending one data field (e.g., email only)
- Fix: Include phone number and/or name + address for higher match rates
Issue: Data not being hashed
- Cause: Sending raw data instead of SHA-256 hashed data
- Fix: Google's tag handles hashing automatically if you use automatic detection or GTM. For API, hash manually before sending
Issue: Duplicate conversions
- Cause: Both browser tag and server-side sending the same conversion without deduplication
- Fix: Use the same
order_id/transaction_idin both events so Google can deduplicate
Enhanced Conversions vs. Other Google Tracking Features
Google's tracking ecosystem can be confusing. Here's how Enhanced Conversions fits:
| Feature | What It Does | When to Use |
|---|---|---|
| Google Ads Conversion Tracking | Basic conversion measurement via cookies | Always — this is the foundation |
| Enhanced Conversions | Adds hashed first-party data for better matching | Always — improves the foundation |
| Consent Mode v2 | Models conversions from users who don't consent to cookies | Required in EEA/UK for GDPR compliance |
| Offline Conversion Import | Upload offline sales data to attribute to online ad clicks | B2B, lead gen, long sales cycles |
| Data-Driven Attribution | AI-based credit distribution across touchpoints | Default in Google Ads — works best with more data |
The relationship: Enhanced Conversions feeds more complete data into Data-Driven Attribution and Smart Bidding. More data → better AI modeling → better bid optimization → lower CPAs.
Results to Expect
Based on industry benchmarks and case studies:
| Metric | Before Enhanced Conversions | After Enhanced Conversions |
|---|---|---|
| Reported conversions | Baseline | +5-15% more conversions |
| Smart Bidding performance | Limited data → suboptimal bids | More data → better optimization |
| Cost per acquisition | Higher (bidding on incomplete data) | Lower (bidding on complete data) |
| Match rate | N/A (cookie-only) | 50-80% (with email + phone) |
| ROAS | Under-reported | More accurate, often higher |
Google's own case studies report up to 2x improvement in ROAS when Enhanced Conversions are properly implemented alongside Smart Bidding strategies.
FAQ
Do Enhanced Conversions replace the regular Google tag?
No. Enhanced Conversions work alongside the regular Google Ads conversion tracking tag. You still need the base tag installed — Enhanced Conversions add an extra layer of data that improves matching accuracy. Think of it as an upgrade, not a replacement.
Is customer data safe with Enhanced Conversions?
Yes. All customer data is SHA-256 hashed (one-way encrypted) before leaving the user's browser or your server. Google receives only the hash, not the raw data. The hash is used solely for matching against Google accounts and cannot be reversed to reveal the original data.
How long does it take to see results?
Enhanced Conversions diagnostic data appears within 48-72 hours of implementation. The impact on Smart Bidding performance typically takes 2-4 weeks as the algorithm incorporates the additional conversion data.
Do I need Enhanced Conversions if I already use server-side GTM?
Yes, if you want the best possible conversion matching. Server-side GTM handles event delivery but doesn't automatically include hashed customer data. Enhanced Conversions specifically adds the first-party data matching layer. With a tool like SignalBridge, both are handled automatically.
Can I use Enhanced Conversions with Consent Mode?
Yes, and Google recommends using both together. Enhanced Conversions improve matching for consenting users, while Consent Mode models conversions for non-consenting users. Together, they provide the most complete conversion picture.
What if I'm already using Meta CAPI — do I still need Enhanced Conversions?
Absolutely. Each ad platform needs its own server-side data to optimize properly. Meta CAPI feeds Meta's algorithm; Enhanced Conversions feed Google's algorithm. If you're advertising on both platforms, implement both. Tools like SignalBridge handle this — one integration sends events to Google, Meta, and TikTok simultaneously.
Related Reading
- What is Facebook Conversions API (CAPI)? — Meta's equivalent server-side tracking solution
- What is Server-Side Tracking? — the broader concept behind Enhanced Conversions and CAPI
- How to Fix iOS Tracking Issues — the privacy changes that make Enhanced Conversions necessary
- Why Your Facebook and Google Ads Numbers Never Match — how Enhanced Conversions help close the attribution gap
- Complete Guide to Event Match Quality — the Meta equivalent of Google's match rate metric
Ready to Set Up Enhanced Conversions?
Skip the manual configuration. SignalBridge sets up Google Enhanced Conversions, Meta CAPI, and TikTok Events API with a single integration. Recover lost conversions, improve Smart Bidding, and see your true ROAS — all from one dashboard.
Start your 14-day free trial today. No credit card required.
Related Articles
2026 Server-Side Tracking Benchmark Report: The Real Numbers Behind Conversion Recovery
Industry benchmark data on server-side tracking performance in 2026. Real numbers on conversion recovery rates, CPA improvement, ad blocker impact, bot traffic losses, and EMQ scores — based on aggregated industry research and platform data.
SignalBridge vs Northbeam: Complete 2026 Comparison
Looking for a Northbeam alternative? Compare SignalBridge vs Northbeam on features, pricing, server-side tracking, attribution, and which platform fits your budget and goals.
