Google Enhanced Conversions: how they work and why match rate determines your bidding performance

What are Google Enhanced Conversions?
Enhanced Conversions are a Google Ads feature that sends SHA-256 hashed first-party data (e.g. an email address or phone number) alongside a standard conversion event. Google uses this data to match conversions back to ad clicks even when browser cookies are missing. Match rate measures how often that matching succeeds, and directly affects Smart Bidding accuracy.
Enhanced Conversions recover Google Ads conversions that standard cookie-based tracking misses. They send hashed first-party data alongside the conversion event, giving Google a second path to match that conversion back to the original ad click even without a cookie.
Standard tracking relies on the GCLID: a click identifier stored in a browser cookie. When that cookie disappears, attribution breaks. This happens across three common situations: users block or clear cookies, browser tracking protections like Safari's ITP and Firefox's ETP shorten cookie lifetimes aggressively, and conversions happen on a different device than the original click: someone browsing on mobile who completes a purchase on desktop. In any of these cases, the conversion fires but Google cannot tie it to a campaign. The full picture of how signal loss affects your campaigns goes beyond Enhanced Conversions alone, but fixing attribution is where it starts. Enhanced Conversions add a second identifier that survives when the cookie path fails. More conversions get attributed correctly. Smart Bidding gets better data.
What standard conversion tracking misses and why Enhanced Conversions fix it
When a user clicks a Google Ads ad, Google stores a GCLID in a browser cookie. When the user converts, the Google tag reads that cookie and passes the GCLID with the conversion hit. Google connects the two events. That is your attributed conversion.
Three situations break this process:
- Cookie blocking and clearing. Ad blockers like uBlock Origin and AdGuard, and browser tracking protections like Safari's ITP and Firefox's ETP, either block cookies entirely or expire them before a conversion happens.
- Cross-device journeys. A user clicks an ad on mobile but converts on desktop. The GCLID stored on the first device is not available on the second.
- Private browsing. Browsers like Chrome, Firefox, and Safari do not persist cookies across private sessions.
In any of these cases, the GCLID is missing by the time the conversion fires. Google records the conversion but cannot attribute it. That conversion shows up in your totals but does nothing for Smart Bidding. Google does not know which campaign, keyword, or ad drove the result.
Enhanced Conversions add a second identifier (hashed first-party data) that works even when the cookie path fails. For a broader look at what conversion data slips through your current stack, see Tracking signal loss: are you missing conversions?
How Enhanced Conversions work: SHA-256 hashing, account matching, and what gets sent to Google
When a user converts, they almost always leave a trace of first-party data. An email address at checkout. A phone number in a lead form. Sometimes a home address.
Enhanced Conversions collect that data, run it through SHA-256 hashing, and send the hash to Google alongside the conversion event.
SHA-256 is a one-way function. Feed in an email address and you get a fixed-length string of characters. There's no way to reverse it back to the original email. What gets sent to Google is the hash, not the raw data.
Google then compares that hash against hashes it already holds in its own database, derived from user Google accounts. When the user is signed into a Google account with the same email, the hashes match. Google can now attribute the conversion to the original ad click, even without a cookie.
The matching happens entirely inside Google's systems. You're sending a mathematical fingerprint, not personal data.
Enhanced Conversions for Web vs. Enhanced Conversions for Leads: what is the difference
These are two separate products with different use cases. In June 2026, Google consolidated both into a single on/off toggle and merged offline upload management into the Data Manager API.
See the Enhanced Conversions setup docs for the current configuration steps.
Enhanced Conversions for Web
Enhanced Conversions for Web handle on-site conversions: a purchase confirmation page, a signup thank-you screen, or any form submission where the user completes a goal directly on your website. The hashed data is sent at the moment the conversion event fires. Implementation goes through the Google tag (gtag.js) or Google Tag Manager.
Enhanced Conversions for Leads
Enhanced Conversions for Leads handle offline conversions: a sale that closed in a CRM like HubSpot or Salesforce, a phone call that became a customer, a contract signed after a demo. The conversion does not happen on the website. You upload the offline conversion back to Google, enriched with the hashed data captured at the original form submission. Google matches the uploaded conversion to the ad click that started the journey. The Google Ads offline conversion tag docs walk through the full setup.
That makes offline sales measurable in Google Ads in a way that GCLID-based upload alone can't achieve, because the GCLID is often missing from CRM records by the time the deal closes.
Data Manager API migration (June 2026): Google migrated offline conversion imports and Enhanced Conversions for Leads uploads to the Data Manager API (datamanager.googleapis.com/v1/events:ingest) on June 15, 2026. Accounts that had not actively used the legacy Google Ads API method are now blocked from it. All new integrations should use the Data Manager API from the start.
Why your Enhanced Conversions match rate varies and what it costs your bidding
Match rate is the share of conversions where Google successfully matched the hashed data to a Google account. A match rate of 0% means Enhanced Conversions added no signal. A rate of 70% means roughly 70% of your conversions got richer attribution.
Several things push that number up or down.
| Match Rate Rating | Range | Bidding Impact |
| Very Low | Under 5% | No uplift. Smart Bidding has no enhanced signal. |
| Low | 6–25% | Minimal uplift. Attribution gap remains large. |
| Average | 26–50% | Partial uplift. Some CPA and ROAS improvement. |
| High | Above 50% | Visible bidding improvement. Target for all accounts. |
Match rates above 50% produce visible improvements in Smart Bidding accuracy. US accounts typically land in the 55–70% range. EU-heavy audiences often sit lower, because fewer users pass the consent gate. How consent rates affect the signal available to Google is explained in detail in the Google Consent Mode V2 guide for EU websites. Four variables drive where your account lands:
- Data accuracy. The hash has to match exactly. An email with a typo, a phone number in a different format, or trailing whitespace all produce a different hash. If what you're sending doesn't exactly match what's in the user's Google account, there's no match.
- Login rate. Google can only match conversions when the user is signed into a Google account at conversion time. Users without Google accounts, people browsing in private mode, or audiences that lean toward non-Google email services all reduce the ceiling.
- Data coverage. If only 40% of your checkout completions include an email (because some users skipped that field), Enhanced Conversions can only work for those 40%. The other 60% can't be enhanced regardless of how solid the technical setup is.
- Where the hash is sent from. This is the one that surprises most teams. Browser-side implementation means the hash leaves from the user's browser. Ad blockers and browser tracking protections can intercept that request. The conversion fires, but the enhanced data doesn't reach Google. This is where server-side tracking plays a crucial role. Routing the hash via your server directly to Google's API means that nothing running in the browser can block it.
How to set up Enhanced Conversions: four implementation paths
There are four main implementation paths. The right one depends on your current tracking stack and conversion type.
1. Google tag (gtag.js)
The most direct setup. You add enhanced conversion fields to your existing gtag configuration on the conversion page. The tag reads user data from the page (a hidden form field, a JavaScript variable, or a dataLayer push), hashes it in the browser, and sends it with the conversion event.
Works well for simple e-commerce and lead gen setups. Fastest to deploy if you're already using the Google tag and your conversion page reliably exposes the user data. The trade-off: the hash travels from the browser, so it's exposed to the same blocking that affects any browser-side tag.
2. Google Tag Manager (client-side)
Same logic, implemented through GTM. You create a User-Provided Data variable, map the fields to wherever your form populates them on the confirmation page, and reference that variable in your Google Ads conversion tag. GTM handles the hashing.
Most teams already on GTM find this the fastest path to get Enhanced Conversions running. No developer dependency if the conversion page already surfaces the right data. Same blocking exposure as the direct tag setup.
3. Server-side GTM
The conversion hit goes through a server-side GTM container rather than firing directly from the browser. The server collects the first-party data from the event, hashes it, and sends it to Google over a server-to-server connection.
Match rates are higher here because the hash never passes through the browser as a raw, readable request. A server-to-server connection can't be intercepted by a browser extension. But there's one weak point earlier in the flow: the browser-side script still has to initiate the request. If that request path exposes recognizable analytics markers like /collect, some ad blockers will drop it before your server container ever sees it. The Enhanced Tracking Script from TAGGRS encrypts that initial request so there's nothing recognizable to block. Data processing happens on your infrastructure, which also gives you more control over field mapping and hashing logic.
For teams running Google Ads tracking through sGTM already, Enhanced Conversions fit into the existing pipeline. See the Google Ads server-side tracking setup for how the container is configured, and the Enhanced Conversions setup docs for field-level specifics.
4. Data Manager API (offline conversions)
For Enhanced Conversions for Leads, or any conversion that happens outside the browser, the API path is the right one. You send conversion records from your CRM or backend — tools like HubSpot, Salesforce, or a custom database — including the hashed lead data captured at form submission. Google matches it against the hash from the original interaction.
Until mid-2026, this was done through the Google Ads API's UploadClickConversions method. Starting June 15, 2026, Google migrated offline conversion imports and Enhanced Conversions for Leads uploads to the Data Manager API (datamanager.googleapis.com/v1/events:ingest). Accounts that hadn't actively used the legacy method are blocked from it; new integrations should use Data Manager API from the start.
How to verify Enhanced Conversions are working
Google Ads conversion settings
Open the conversion action in Google Ads (Tools and Settings, then Conversions). The conversion action detail page shows the Enhanced Conversions status and whether data is being received. Give it 48-72 hours after initial setup before reading too much into early numbers.
GTM Preview mode
When testing a client-side setup, fire a test conversion in Preview mode and inspect the Google Ads conversion tag event data. The user_data object should be present and populated with hashed fields. If it's empty, the issue is either in the variable configuration or the conversion page isn't outputting the source data at all.
Google Tag Assistant
Tag Assistant validates Enhanced Conversions end-to-end and shows whether user data was attached to the conversion hit. It also surfaces common misconfigurations: missing hash encoding, empty user_data objects, fields that don't match the expected format.
Match rate in the Diagnostics tab
In Google Ads, go to Goals, then Summary, then open the Diagnostics tab. If Enhanced Conversions is active, a diagnostics card appears with an Impact table showing coverage and match rate per conversion action. Match rate updates within 24 hours. If it shows Low (under 25%) after a few days of traffic, something is wrong with the data being sent. The most common causes are empty fields on the conversion page, incorrect field mapping in GTM, or a formatting mismatch between what you're sending and what's actually on the user's Google account.
Enhanced Conversions, Consent Mode V2, and GDPR
Enhanced Conversions process personal data. Email addresses and phone numbers count as personal data under GDPR even after SHA-256 hashing, because Google can re-identify the data by comparing hashes against its own database. You need explicit consent from users before collecting and sending any of it. The GDPR and server-side tracking guide covers the legal basis and practical compliance requirements in full.
Consent Mode V2 handles this through two consent signals: ad_storage and ad_user_data. For Enhanced Conversions to fire, ad_user_data must be granted. When it is denied, the Google tag does not include the hashed data in the conversion hit. The Consent Mode V2 setup guide in the TAGGRS docs covers how to configure this for a server-side container.
Three things to check when setting this up:
- Consent signal timing. The ad_user_data grant must be in place before the conversion tag fires. If your CMP — such as Axeptio, Cookiebot, or Consent Studio — loads and sets consent after the tag has already initialised, Enhanced Conversions will not pick up the grant for that session. Check the firing sequence in GTM and confirm with Tag Assistant.
- Non-consenting users. For users who do not consent, Enhanced Conversions simply do not run. Standard conversion modelling still applies for aggregate estimation. That is the correct GDPR-compliant behaviour.
- Hashing does not equal anonymisation. Sending Enhanced Conversions data without ad_user_data consent is a compliance problem regardless of hashing. The fact that the data is hashed does not make it anonymous under GDPR when the receiving party can match it back to an individual account.
Low consent rates directly reduce the match rate ceiling for Enhanced Conversions. How consent rates affect the volume of matched conversions available to Smart Bidding is explained in the Google Consent Mode V2 for EU websites article.
How TAGGRS improves Enhanced Conversions match rates
The most reliable way to get high Enhanced Conversions match rates is server-side GTM. The operational challenge is that running your own sGTM container means provisioning cloud infrastructure, managing container updates, and maintaining uptime under real conversion volume.
TAGGRS handles that infrastructure. You configure Enhanced Conversions in GTM the same way you would for any setup. TAGGRS runs the container that processes and forwards the data to Google. Because the hash is sent server-side, match rates are higher than with browser-based implementations, and you are not managing cloud infrastructure to get there. The Google Ads server-side tracking setup page shows how the pieces connect.
There is one more layer that affects match rate. Even with a server-side container running, ad blockers like uBlock Origin and AdGuard can still drop events before they reach it. The browser-side script that starts the tracking flow can expose recognisable request patterns — including /collect-style endpoints — that blockers match against. Standard GTM masking with a first-party domain helps, but only partially.
The Enhanced Tracking Script takes a different approach. Instead of masking the script URL, it encrypts the full browser-to-server request, removing any patterns blockers can match. This produced an average 9% uplift in measured events compared to a standard first-party GTM setup. For high-blocker audiences — such as developers, marketers, and technical users — the uplift reached ~30%. The script is configured from the TAGGRS dashboard and requires no new infrastructure. Replace the existing GTM snippet on the website and it works immediately.
Want to see how this applies to your setup? Book a demo to see how TAGGRS handles the full Enhanced Conversions pipeline across client accounts.
Conclusion
Enhanced Conversions close the attribution gap that cookie-based tracking leaves open. Whether that gap is large depends on your audience: cross-device journeys, cookie blockers, and non-consenting users all reduce what standard tracking captures. The knock-on effect is signal loss that distorts Smart Bidding decisions and undermines retargeting audiences. For more on how that plays out in practice, the Retargeting in a scattered digital world article covers the downstream consequences.
Match rate is where the setup lives or dies. Getting data flowing through the browser is straightforward. Getting match rates high enough to move the needle on bidding (consistently above 50%) means moving hash sending off the browser and onto a server-to-server connection.
FAQ
What are Enhanced Conversions in Google Ads?
Enhanced Conversions extend standard conversion tracking by sending hashed first-party data (typically an email address or phone number) alongside the conversion event. Google uses that hash to match the conversion back to the original ad click, even when cookies are missing. The hashing uses SHA-256, so raw personal data is never sent to Google.
What is the difference between Enhanced Conversions for Web and Enhanced Conversions for Leads?
Enhanced Conversions for Web handle on-site conversions and send hashed data at the moment the conversion fires on your website. Enhanced Conversions for Leads handle offline conversions (a sale that closed in a CRM, a phone call that turned into a customer) by uploading hashed data after the fact. Google matches the offline event back to the original ad click using the hash captured at form submission. In June 2026, Google consolidated both into a single on/off toggle and migrated offline uploads from the Google Ads API to the Data Manager API.
Do Enhanced Conversions work without Consent Mode?
Not properly. ad_user_data consent must be granted before the Google tag includes hashed data in the conversion hit. Without that signal, Enhanced Conversions won't fire for that user. Running Enhanced Conversions without proper consent is also a GDPR compliance risk, even with hashing. SHA-256 hashes of emails are still considered personal data under GDPR when Google can re-identify them.
How do I check if Enhanced Conversions are working?
Open the conversion action in Google Ads and check the Enhanced Conversions status. For match rate data, go to Goals, then Summary, then the Diagnostics tab. The Impact table there shows match rate per conversion action. In GTM Preview mode, check that the user_data object is attached to conversion hits. Tag Assistant validates the full setup end-to-end and flags common misconfigurations.
Do Enhanced Conversions replace standard conversion tags?
No. Enhanced Conversions run alongside standard conversion tracking. The GCLID-based path still operates in parallel. Enhanced Conversions add a second identifier that kicks in when the cookie path fails. Both work together, and neither replaces the other.
Are Enhanced Conversions GDPR compliant?
They can be. The requirement is explicit ad_user_data consent from users before any hashed data is sent. Hashing alone doesn't satisfy GDPR. A hashed email address is still personal data when the receiving party can match it back to an individual. Implement consent collection through a properly configured CMP with Consent Mode V2 in place.
How do Enhanced Conversions affect Smart Bidding?
Smart Bidding uses conversion data to calibrate bids. Enhanced Conversions recover attributions that cookie-based tracking would have missed, giving the bidding model more complete information about which clicks led to conversions. With better attribution coverage, bids get more precisely calibrated to actual outcomes. The improvement is more noticeable as match rate climbs above 40-50% and as account conversion volume grows.
