
Quick answer
Enhanced conversions is a Google Ads feature that adds a SHA-256 hashed copy of the email, phone or name a person gives you to each conversion. Google matches it to signed-in Google accounts, so it can credit sales and leads that cookies miss. For web covers purchases on your site; for leads covers deals closed later and uploaded from your CRM.
Key takeaways
- Enhanced conversions sends a SHA-256 hashed copy of the email, phone or name a person gives you with each conversion, and Google matches it to signed-in Google accounts to credit conversions that cookies and click IDs miss.
- Enhanced conversions for web covers purchases and sign-ups on your site, while enhanced conversions for leads covers sales closed later, uploaded from your CRM with the same hashed data plus the GCLID.
- In 2026 Google merged the web and leads settings into one switch that accepts data from website tags, Data Manager and API connections at the same time.
- Since June 15, 2026, offline conversion and enhanced conversions for leads uploads go through the Data Manager API and are blocked in the Google Ads API, apart from legacy access for developer tokens that were already uploading.
- Check a new setup three ways: the em parameter on the conversion hit, the diagnostics report after about 72 hours, and the coverage and match rate figures, where Google labels a match rate above 15% as High.
On this page
- What are enhanced conversions in Google Ads?
- Enhanced conversions for web vs leads: what is the difference?
- Why should you use enhanced conversions?
- How do you set up enhanced conversions for web?
- How do you set up enhanced conversions for leads?
- What changed on June 15, 2026, with the Data Manager API?
- Where do GCLID, GBRAID and WBRAID fit with enhanced conversions?
- How do you check that enhanced conversions are working?
- How do you fix common enhanced conversions problems?
- What consent do you need for enhanced conversions?
- Should you set up enhanced conversions yourself?
- FAQ
What are enhanced conversions in Google Ads?
Enhanced conversions is a Google Ads feature that adds a hashed copy of the contact details someone gives you, such as an email or phone number, to your conversion data. Google matches that hashed data to signed-in Google accounts, so it can credit a sale or lead to your ad even when the cookie or click ID that normally links them is gone.
It adds a second way to match; it does not replace your tag or your offline imports. The data is hashed with SHA-256, a one-way algorithm, and Google says it matches it inside a confidential computing environment. With the Google tag gateway or server-side Google Tag Manager, Google Ads tags also encrypt the data before it reaches Google (About enhanced conversions).
Someone clicks your ad on a phone at lunch and buys on a laptop that evening. A browser clears cookies. Each of these breaks cookie-based tracking and leaves Smart Bidding with a sale it never sees. If your basic tags are not in place yet, start with our Google Ads conversion tracking guide.
Enhanced conversions for web vs leads: what is the difference?
Enhanced conversions for web improves conversions that happen on your website, like a purchase. Enhanced conversions for leads improves conversions that happen later and off your website, like a signed contract, from a lead your website collected.
| For web | For leads | |
|---|---|---|
| Measures | Online sales, sign-ups and other on-site actions | Offline sales that started as a website lead |
| Contact data comes from | The conversion tag, when the conversion happens | The tag on your lead form, then your CRM upload |
| Reaches Google through | Google tag or Google Tag Manager | Google Ads Data Manager, Zapier or the Data Manager API |
| Typical business | Online stores, self-serve sign-ups | Home services, B2B, sales closed by phone or in person |
| Upgrades | Your standard conversion tag | GCLID-only offline conversion import, which Google now calls a legacy feature |
Google merged the two settings in 2026
Google's settings update set two dates. Starting in April 2026, Google Ads accepts user-provided data from website tags, Data Manager and API connections at the same time. Starting in June 2026, web and leads become one feature with a single on/off switch, and the dropdown where you picked one method is removed. Accounts that had accepted Google's data terms move over automatically, and you can still opt out per conversion action. As of November 2026, many Google setup pages still describe the old dropdown, so follow the switch your account actually shows.
Why should you use enhanced conversions?
Use enhanced conversions if Smart Bidding runs on your conversion data, because every conversion Google cannot match is one your bidding never learns from. Google lists three benefits: recovering conversions that would not otherwise be measured, better bidding through better data, and privacy through hashing.
Recovered conversions can decide whether a campaign qualifies for a strategy at all. Target ROAS on Search and Shopping needs at least 15 conversions in the past 30 days (About Target ROAS bidding); our guide to Google Ads bidding strategies covers the rest. For lead uploads, Google says the leads version reports more accurately than standard offline import and adds engaged-view and cross-device conversions. Google also notes the feature helps most at 20 or more conversions a week, organic and paid combined.
Check two limits first. Conversions in sensitive categories, such as health, negative financial status, religion or criminal records, cannot be used for enhanced conversions. And conversions imported from Google Analytics are not supported, so you need a native Google Ads conversion action.
How do you set up enhanced conversions for web?
Turn on enhanced conversions in Google Ads, let your Google tag collect user-provided data, choose how the tag finds the email or phone, then validate. You need a conversion page served over HTTPS and a privacy policy that says you share data with Google for ad measurement. On Shopify, the Google & YouTube app does most of the work.
- Open the setting. In Google Ads, go to Goals › Settings and expand the enhanced conversions panel (Google's 2026 instructions call it the data-use panel).
- Turn it on. Check Turn on enhanced conversions. A second checkbox lets Google build audience lists from your conversions; it is optional and separate from measurement.
- Accept the terms. Agree to the data terms, which confirms the Google Ads Data Processing Terms apply. Data sent before you accept is not processed.
- Allow user-provided data in the tag. In the Google tag settings, select Allow user-provided data capabilities and pick a method from the table.
| Method | How the tag finds the data | Best fit |
|---|---|---|
| Automatic detection | Scans the page for text that looks like an email, phone or address | Simple sites where the email shows on the confirmation page |
| CSS selectors or JavaScript variables | You point the tag at the element or variable that holds each field | Sites whose layout rarely changes |
| Code snippet | Your developer passes clean values each time the tag fires | Stores and forms with developer access; Google always gives snippet data priority |
Automatic and CSS detection use an ads cookie to link the data to the conversion, and that cookie follows your ad_storage consent setting.
With the Google tag (gtag.js)
Add a user_data call on the conversion page so it runs before the conversion event, as in Google's Google tag setup guide:
gtag('set', 'user_data', {"email": yourEmailVariable, "phone_number": yourPhoneVariable});Send an email (preferred), or a first name, last name, postal code and country together. A phone number counts only next to an email or a full name and address, and must be in E.164 format, such as +16505551234. Leave out fields you do not collect instead of sending them blank.
With Google Tag Manager
- Enable it on the Google tag. Open the Google tag that sends to your Google Ads account, select Manage, then Allow user-provided data capabilities.
- Or map fields yourself. Add an event parameter named
user_datawhose value is a User-Provided Data variable, built from CSS selectors, data layer variables or code. - Cover earlier pages. If the email is typed before the conversion page, add a Google Ads User-Provided Data Event tag on the page where it is entered.
Stores that run Tag Manager through a Shopify custom pixel have extra steps, covered in our guide to Google Tag Manager on Shopify.
On Shopify with the Google & YouTube app
- Install and connect. Connect the Google account that owns your Google Ads account. The app suggests purchase, add to cart and checkout started conversion actions and maps each to a Shopify event.
- Confirm enhanced conversions. Accept the prompt during setup, or later open the app's Settings tab, find Enhanced conversions under Google Ads settings, select Turn on and agree to the data terms.
- Remove duplicates. Google's Shopify guide says to make the app's conversions Primary and remove legacy tags, or each order counts twice.
How do you set up enhanced conversions for leads?
Enhanced conversions for leads has two halves. Your website tag captures a hashed email or phone when the form is sent. Later, when the lead qualifies or pays, you upload the same email or phone, plus the click ID, from your CRM. Google matches the two and credits the ad.
- Check the basics. Auto-tagging on, enhanced conversions on, data terms accepted.
- Capture data on the form. With the Google tag, turn on automatic event detection for Form interactions. In Tag Manager, add a Google Ads User-Provided Data Event tag that fires on form submission. Google prefers email because CRMs rarely reformat it. GTM's automatic collection cannot read phone numbers, so map the phone field by hand.
- Store the match keys. Save email, phone, name, click IDs and the submit time on the CRM record.
- Create one import action per stage. Goals › Summary › + Create conversion action › Import › CRMs, files, or other data sources › Track conversions from clicks. Pick the Qualified lead or Converted lead goal, and keep new actions Secondary for 2 to 3 weeks.
- Connect the upload. In Data Manager, connect Google Sheets, HubSpot, Salesforce, cloud storage or a database, or use Zapier or the Data Manager API. Upload daily.
- Send every match key. Hashed email and phone, GCLID, GBRAID or WBRAID, conversion time with time zone, value, currency, an order ID and consent.
- Upload all conversions for the stage, including leads that did not come from Google Ads. Google's implementation checklist calls this required.
- Check diagnostics, then go Primary on the stage you bid toward.
How do you format email and phone before hashing?
Normalize every value the same way on your site and in your upload, then hash with SHA-256. A mismatch here is a common reason uploads show no matches.
| Field | Normalize first | Hash? |
|---|---|---|
| Trim spaces, lowercase; for gmail.com and googlemail.com remove dots before the @ (the Data Manager API also drops a plus sign and what follows) | SHA-256 | |
| Phone | E.164: plus sign, country code, number | SHA-256 |
| Names and street | Trim spaces, lowercase | SHA-256 |
| Country, state, city, ZIP | Plain text | No |
Sources: Google's leads diagnostics guide and the Data Manager API formatting rules.
Worked example: values for each lead stage
For example, a roofing company sells jobs that average $12,000. Its CRM shows that 10% of leads who reply end up signing, and 30% of qualified leads sign. It sends three stages, each as its own conversion action:
| CRM stage | Conversion action | Value sent |
|---|---|---|
| Lead replies | Engaged lead (Secondary) | $1,200 ($12,000 × 10%) |
| Inspection booked | Qualified lead (Primary) | $3,600 ($12,000 × 30%) |
| Contract signed | Converted lead (Secondary) | Actual contract value |
The numbers are illustrative. Bidding now sees that a qualified lead is worth three times a reply, and a spam form is worth nothing. Keep one stage Primary, usually the deepest one that still reaches 15 conversions a month, so one lead is not counted three times.
We run our own lead pipeline this way. When a lead in our CRM sends a first reply, is marked qualified, or pays, an automation sends that stage to Google Ads as an offline conversion with the hashed email, phone and name plus the click ID, through the Data Manager API. Each stage has its own conversion action, so we see which searches produce paying clients instead of form fills alone.
What changed on June 15, 2026, with the Data Manager API?
Since June 15, 2026, offline conversion imports and enhanced conversions for leads uploads run through the Data Manager API and are blocked in the Google Ads API. A script or tool that calls that API directly has to move. For uploads without code, Google recommends Data Manager inside your Google Ads account.
Google's Google Ads API documentation gives the rule: UploadClickConversions requests now fail with a not-allowlisted error for any developer token that sent no offline upload requests between December 17, 2025, and June 15, 2026. Active tokens keep legacy access, but Google's leads help page points everyone to the Data Manager API.
Not sure which path you are on? Ask whoever built your integration, or your connector's vendor, which API it calls. A blocked script stops sending conversions, and the leads diagnostics report can show a "No attempted imports" alert.
| Data Manager API | Google Ads API | |
|---|---|---|
| Offline and leads uploads | Google's path for all new work | Blocked since June 15, 2026, apart from legacy access |
| Developer token | Not required | Required |
| Encryption of user data | Supported | Not supported |
| Session attributes and IP | All users | Specific API users only |
| Errors | Fast-fail model | Partial-failure model |
Source: the Data Manager API upgrade guide. For developers, each event needs eventTimestamp, eventSource and at least one identifier: gclid, gbraid or wbraid, an IP address, session attributes, or hashed userData. Test with validateOnly: true, then send with events.ingest. Processing is asynchronous, so check each request with requestStatus.retrieve until it reads SUCCESS, PARTIAL_SUCCESS or FAILED. Within one conversion action, a repeated transactionId is treated as an adjustment to the first event (send events guide).
Where do GCLID, GBRAID and WBRAID fit with enhanced conversions?
Click IDs and hashed contact data are two separate match keys, and Google wants both. The click ID ties a conversion to one exact click. The hashed email or phone catches conversions whose click ID was lost on a redirect, a form or a long sales cycle.
Click IDs (GCLID, GBRAID, WBRAID)
- Added to the landing page URL by auto-tagging
- Match one click or click group
- Lost when a redirect or form drops them
Hashed contact data
- Email, phone, name or address the person typed
- Matched to signed-in Google accounts
- Recovers conversions with no click ID
For web conversions, the Google tag stores the click ID in first-party cookies. For lead uploads, Google's checklist lists the GCLID as a required match key, with GBRAID and WBRAID strongly recommended. Our guide to GCLID, GBRAID and WBRAID shows how to capture all three in hidden form fields and keep them on the CRM record.
How do you check that enhanced conversions are working?
Check three places: the conversion hit in your browser on day one, the diagnostics report after about 72 hours, and the Status column, which shows the impact after up to 30 days.
- Browser. Complete a test conversion with Chrome DevTools open. In the Network tab, find the request to googleadservices.com/pagead/conversion/, open Payload, and look for
em. Tag Assistant shows it under Hit Details, and GTM Preview shows the data in the Variables tab. - EC Assist. Google's free Chrome extension checks a test conversion on web setups and lists fixes. It skips address errors and may fail on iframe forms.
- Diagnostics, after about 72 hours. Goals › Summary › Diagnostics tab › View Diagnostics. Web setups read Excellent, Good, Needs attention or No recent data; leads setups can also read Urgent, meaning not active.
- Status column. It reads Recording (processing enhanced conversions) during up to 30 days of training, then Recording (enhanced conversions), with the impact by campaign type on hover.
What do coverage and match rate mean?
Coverage is the share of your conversions that carried enough user data. Match rate is how well that data matched signed-in Google accounts. Both appear in the Impact table of the web diagnostics report.
Conversion events with user data ÷ All conversion eventsFor example, if 400 purchases fired last week and 340 carried an email, coverage is 85%. Match rate uses labels: High above 15%, Low from 0% to 15%, Insufficient volume under 20 valid pings, and No matches at zero. With fewer than 20 conversions in 7 days, no alerts appear. To raise both, turn the feature on for every eligible action and send phone and address alongside email.
How do you fix common enhanced conversions problems?
Most problems show up as a missing or empty em parameter, a diagnostics alert, or uploads that never match. Each row below uses Google's own alert or error name.
| Symptom | Likely cause | Fix |
|---|---|---|
| No em parameter | Feature or user-provided data collection is off | Turn both on, then republish the tag |
| em reads tv.1~em. and nothing more | Data was not on the page when the tag fired | Fix the selector, tag the earlier page, or use a code snippet |
| Code e0 | A field failed format checks, such as an email with no @ | Point the selector at the real value |
| Code e1 or e2 | Legacy browser, or hashing failed on odd characters | Retest in an updated Chrome with clean input |
| Code e3 | Page not served over HTTPS | Move the conversion page to HTTPS |
| Missing required address fields | Address lacks first name, last name, postal code or country | Send all four, or send email too |
| Enhanced conversions not in use | Data terms never accepted | Accept them; earlier data is not processed |
| Match rate Low or No matches | Few matching accounts, or formatting differs between tag and upload | Add match keys; normalize exactly as in the table above |
| Tag not firing on your website forms (leads) | Nothing captures data at form submission | Turn on Form interactions or add the User-Provided Data Event tag |
| No attempted imports (leads) | Tag works, but no uploads arrive | Check the Data Manager connection or move an old API script |
| Importing limited user-provided data (leads) | Only rows with both contact data and a GCLID are uploaded | Upload every row with contact data |
Sources: Google's diagnostics guides for web and leads.
Pro tip: After a fix, check the em parameter on a fresh test conversion. Alerts use the past day of data, or 7 days when one day is too thin, so an old alert can linger after the fix works.
What consent do you need for enhanced conversions?
You need to tell people you share their information with Google for ad measurement, get consent where the law requires it, and pass consent signals to Google's tags and uploads. Google's data policies for enhanced conversions require you to:
- Disclose that you share people's information with third parties for ad measurement
- Get consent where legally required, and follow Google's EU user consent policy where it applies
- Upload only first-party data, nothing about children under 13 and nothing in sensitive categories
- Send data only through Google's approved tag, interface or API
On your site, consent mode carries each choice to Google's tags. When ad_user_data is denied, Google's consent mode documentation says hashed first-party data for enhanced conversions is not sent. Consent mode draws no banner, so you also need a consent platform. In uploads, the Data Manager API takes a consent object with adUserData and adPersonalization, and Google calls filling it in "highly recommended" for leads, because without it some conversions may not be attributable. If you serve visitors in Europe, our Consent Mode v2 setup covers the banner, tags and upload fields together.
Should you set up enhanced conversions yourself?
Set it up yourself on Shopify with the Google & YouTube app, or on a simple site where automatic detection finds the email. Get help for CRM lead stages, a Data Manager API integration, multi-step forms, iframes or European consent, because each can fail quietly while reports still look normal.
Before you trust the numbers, confirm the em parameter carries a hash, diagnostics read Excellent or Good, and Google Ads conversions line up with your orders or CRM. Our Google Ads conversion tracking setup covers web, leads, offline uploads and consent. Or start with a free Google Ads audit, and we will tell you whether tracking is what is holding your bidding back.
Frequently asked questions
Should I turn on enhanced conversions in Google Ads?
Yes, for almost every account that uses Smart Bidding and is allowed to. Enhanced conversions recovers conversions that cookie-based tracking misses, such as a click on a phone and a purchase on a laptop, and bidding can only learn from conversions it sees. Google says it helps most at 20 or more conversions a week. The exceptions are businesses in sensitive categories, such as health or negative financial status, where Google does not allow conversions to be used for enhanced conversions.
Do enhanced conversions work with GA4 conversions imported into Google Ads?
No. Google states that conversions measured by importing Google Analytics goals are not supported for enhanced conversions. To use the feature, create a Google Ads conversion action fired by the Google tag or Google Tag Manager, turn on enhanced conversions for it, and keep the GA4 import as a Secondary action if you still want it in reports. Making both Primary would count the same sale twice.
How long do enhanced conversions take to start working?
The em parameter shows on the conversion hit as soon as you publish, so you can test it the same day. The diagnostics report appears about 72 hours after setup. The Status column then shows Recording (processing enhanced conversions) while Google trains on the data, which takes up to 30 days. After that, the status reads Recording (enhanced conversions) and a hover card shows the impact by campaign type for 30 days.
What is a good enhanced conversions match rate?
Google labels a match rate above 15% as High and anything from 0% to 15% as Low. It shows Insufficient volume when fewer than 20 valid pings carry user data, and No matches when nothing matched. To raise it, send every match key you have (email, phone and full address), check that values are formatted the way Google specifies, and turn the feature on for every eligible conversion action.
Do you still need the GCLID with enhanced conversions for leads?
Yes. Google's implementation checklist lists the GCLID and user-provided data as required match keys, with GBRAID, WBRAID, session attributes and IP address strongly recommended. The GCLID ties a sale to one exact click. The hashed email or phone catches the leads whose click ID was lost. If no website tag collects user-provided data, the GCLID is required on every uploaded row.
Is it safe to send hashed emails and phone numbers to Google?
Google hashes the data with SHA-256 before it leaves the browser, or you hash it yourself before an upload, and Google says it matches the data inside a confidential computing environment. It also limits use to providing you measurement services. Safe is not the same as permitted, though: your privacy policy must say you share data with Google for ad measurement, and you need consent where the law requires it.
Can you still upload offline conversions with the Google Ads API?
Only with legacy access. Since June 15, 2026, Google Ads API requests that upload click conversions fail for developer tokens that sent no offline upload requests between December 17, 2025, and June 15, 2026. Google tells everyone to use the Data Manager API for current and future offline conversion and enhanced conversions for leads uploads. For uploads without code, Google recommends Data Manager inside your Google Ads account.
Sources26 references
- Google Ads Help: About enhanced conversions
- Google Ads Help: About enhanced conversions for web
- Google Ads Help: About enhanced conversions for leads
- Google Ads Help: Updates to your enhanced conversions settings
- Google Ads Help: Set up enhanced conversions for web using the Google tag
- Google Ads Help: Set up enhanced conversions for web using Google Tag Manager
- Google Ads Help: Configure the Google tag for enhanced conversions for leads
- Google Ads Help: Configure Google Tag Manager for enhanced conversions for leads
- Google Ads Help: Enhanced conversions for leads implementation checklist
- Google Ads Help: Using Google Ads Data Manager with enhanced conversions for leads
- Google Ads Help: About the enhanced conversions for web tag diagnostics report
- Google Ads Help: About the enhanced conversions for leads diagnostics report
- Google Ads Help: Enhanced conversions for web impact results
- Google Ads Help: About the enhanced conversions assist tool
- Google Ads Help: Set up conversion tracking with the Google & YouTube app on Shopify
- Google Ads Help: About Target ROAS bidding
- Google Ads Help: About consent mode
- Google for Developers: Consent mode overview
- Advertising Policies Help: Google's data policies for enhanced conversions and uploaded contact data
- Advertising Policies Help: How Google uses enhanced conversion data
- Google Ads API: Manage offline conversions (June 15, 2026 notice)
- Data Manager API: Google Ads offline conversions
- Data Manager API: Send events (identifier and field requirements)
- Data Manager API: Upgrade from the Google Ads API
- Data Manager API: Check request status and diagnostics
- Data Manager API: Format user data




