Google Enhanced Conversions: What Actually Changed and How to Set It Up Right (2026)
Enhanced conversions for web and leads became one toggle in June 2026, multiple data paths can now run at once, and offline uploads are moving to Data Manager. What the diagnostics report is really telling you, why match rates collapse, and the setup that recovers the conversions smart bidding cannot see.
if you set up enhanced conversions in 2023 and have not touched it since, there is a fair chance it is sending email only, the diagnostics card says "good," and you have never looked at the match rate. google rebuilt the settings in 2026. this guide covers what changed, what the diagnostics report actually measures, and the setup that turns enhanced conversions from a checkbox into a bidding signal.
what enhanced conversions actually is
enhanced conversions sends hashed first-party data from your conversion event to google so google can match the converter to a signed-in google account that saw or clicked your ad. google's definition: "a feature that can improve the accuracy of your conversion measurement and unlock more powerful bidding" by sending "hashed first party conversion data" (google ads help, about enhanced conversions). the fields are email, name, home address, and phone number, hashed with sha-256 before they leave the page.
here is what most guides get wrong: enhanced conversions does not create new conversions. it recovers attribution for conversions that already happened but could not be tied to a click, because the cookie was gone, the click id was stripped, or the person converted on a different device. the number that matters is how many of your existing conversions it can now attribute, and google reports exactly that as coverage, match rate, and conversion uplift in the diagnostics report.
there were two products until this year:
- enhanced conversions for web: for conversions that happen on the site. the tag captures the user data at the moment of conversion.
- enhanced conversions for leads: for conversions that happen off the site later. the tag captures hashed lead data at form submit, you store it in the crm, and when the lead closes you upload the same hashed identifier plus the google click id (google ads help, about enhanced conversions for leads).
as of june 2026, both are one feature with one switch.
the fundamental shift: from one exclusive method to a unified signal
before 2026: you chose one implementation path per conversion action: google tag, google tag manager, or api. web and leads were separate products with separate toggles. an account that sent web data through the tag could not also send lead data through the api for the same action without workarounds.
april 2026: google ads began accepting user-provided data from "website tags, data manager, and api connections" at the same time (google ads help, updates to your enhanced conversions settings).
june 2026: "enhanced conversions for web and leads will be combined into a single feature with a simple on/off switch." accounts that had already agreed to google's customer data terms were migrated automatically. accounts that had not were not.
the direction: everything first-party is converging on data manager. google's note that developer tokens inactive between january and june 2026 do not receive legacy api access, with the data manager api as the alternative, tells you where offline uploads are going.
in plain english: one switch, as many data paths as you have, judged by one diagnostics report.
what this broke in existing accounts
1. accounts that never accepted the customer data terms stopped, or never started
the unified feature migrates automatically only if the terms were accepted. under a manager account the terms are accepted per client account. accounts that skipped it show "no recent data" in diagnostics and have been sending nothing.
2. email-only setups plateaued at "good"
the diagnostics report has four statuses. "good" means "active, but there are further improvements available," and google's stated fix is to "send more forms of user provided data, like address and phone number" (google ads help, tag diagnostics report). most 2023-era setups send only email and have read "good" as done.
3. match rates collapsed on normalization
google matches hashed values. Jane@Example.com, jane@example.com , and jane@example.com are three different hashes. a phone number hashed without the country code does not match google's e.164 form. accounts with clean data and sloppy normalization show low match rates and blame google.
4. the tag fired where the data was not
enhanced conversions for web needs the user data available on the page where the conversion tag fires. thank-you pages that do not carry the email in the data layer produce a conversion event with no user-provided data. that is what the coverage metric measures: "percentage of your eligible conversion events with sufficient user provided data."
5. lead uploads stayed on legacy paths
enhanced conversions for leads only accepts data manager file formats. teams still pushing offline conversions through legacy sheets or the older api upload paths hit the 2026 migration wall. google's upgrade guide also notes that connectors such as cloud storage, s3, sftp, and sheets import conversions from the last 90 days on every run, so a broken run can be recovered but a wrong format cannot (google ads help, upgrading offline conversion imports).
6. the uplift card was read at the wrong time
google says enhanced conversions "need up to 30 days to train before you'll start to view impact," and then "you'll only view this card for 30 days" (google ads help, impact results). teams that checked at day 10 saw nothing, teams that checked at day 70 saw nothing, and both concluded it did not work.
7. eea traffic without consent sent nothing
user-provided data on users who declined consent is not usable. without consent mode, european enhanced conversions coverage looks broken when the problem is the consent layer.
the data
every figure here is google's own and self-reported. treat them as directional.
- "early adopters of enhanced conversions have seen substantial benefits, including a median conversion rate increase of 5% on search and 17% on youtube." (google ads, privacy in ad performance with enhanced conversions, october 2025)
- "advertisers using enhanced conversions realize an average 11% increase in search conversions compared to standard conversion imports." (google ads and commerce blog, september 10, 2026)
- same post: "advertisers who connect offline and app data to data manager see an average 26% increase in incremental roas," and advertisers using google tag gateway "observe on average a 14% conversion uplift."
- the diagnostics report tracks three metrics per conversion action: coverage (share of eligible conversion events with sufficient user-provided data), match rate ("how well your user provided data matches with google signed-in data"), and conversion uplift ("increased conversions reported from your user provided data"). (google ads help, tag diagnostics report)
- training takes up to 30 days. the impact card is visible for 30 days after that. (google ads help, impact results)
- on the analytics side, "improvements to models and attribution by enhanced conversion may take up to one month to appear," and if ga4 conversions are imported into google ads, user-provided data collected by ga4 is shared with google ads without a separate ads configuration (google analytics help, enhanced conversions in google analytics).
read the first three numbers carefully. "conversion rate increase" and "increase in search conversions" are increases in what google can report and bid on, not new customers. the value is in what smart bidding can now see, and in the 26% incremental roas figure, which is the only one of the three measured against a holdout.
what changed in 2026 specifically
april 2026: multiple data sources per conversion action at once. the google tag on the site, data manager uploads, and api connections no longer compete. this is the change that makes web plus leads on one action practical.
june 2026: one toggle. the web and leads distinction is gone from the settings surface. the migration required prior acceptance of the customer data terms.
june 2026: legacy upload paths reach their migration deadline. data manager, and the data manager api for engineering teams, is the supported route for offline and lead uploads.
september 2026: google published the 11% search and 26% incremental roas figures alongside the announcement that enhanced conversions capabilities rolled out in google analytics and display and video 360, and that the data manager api is now the universal connection layer. google tag gateway, which serves the tag from your own domain through a cloud or cdn path, was positioned as the way to lift coverage on browsers that block third-party tag hosts.
unchanged: sha-256 hashing, the four diagnostic statuses, the 30-day training and 30-day card window, and the requirement to confirm the data processing terms before anything is sent.
what actually works now
for the tag-level configuration (manual javascript, tag manager variables, the api payload, and the leads tag), use the google ads attribution setup guide. this section is the operating procedure on top of it.
1. accept the terms on every account, then flip the one switch
in each client account, not just the manager account, confirm the customer data terms, then turn on enhanced conversions at the account level. check diagnostics 24 hours later for any status other than "no recent data."
2. send every field you legally hold, not just email
email gets you "good." email plus phone plus name plus address gets you the coverage and match rate google is asking for. if your checkout or form collects it, send it. if it does not, the purchase and lead forms are where to add it.
3. normalize before you hash
lowercase, trim whitespace, strip dots from gmail local parts only if google's documentation for your implementation says so, and put phone numbers in e.164 with the country code. do this in the data layer, not in the tag, so every path (tag, data manager, api) hashes the same string. the google tag can hash raw values for you; the point is to hand it clean raw values.
4. put the user data where the tag fires
for web: the conversion page must carry the user data in the data layer before the conversion tag fires. for single-page checkouts, fire the conversion on the confirmation state, not on the payment submit.
for leads: capture hashed lead data at form submit, store it against the lead in the crm, and include the gclid. google's guidance is explicit: "include gclids with your uploaded events whenever possible."
5. move offline and lead uploads to data manager
pick a connector data manager supports (cloud storage, s3, sftp, sheets, or a crm connector) and let its 90-day rolling import handle retries. if there is an engineering team, the data manager api is the durable path. retire anything that still posts through legacy sheet templates or the older api upload paths.
6. run the diagnostics as a weekly check, and read the uplift on the right days
weekly: every enhanced conversion action should read "excellent." "good" means add fields. "needs attention" means a field is missing or malformed. "no recent data" means nothing has arrived in 7 days.
once: between day 30 and day 60 after enabling, record the conversion uplift from the impact card. that number disappears after the window. it is your baseline for what enhanced conversions is worth in this account.
7. wire consent mode before you judge european coverage
consent mode is required for google ads measurement on eea and uk users. with it, declined users are modeled and consenting users' data flows. without it, coverage on european traffic will look broken no matter how good the tag is.
8. if ga4 collects user-provided data and you import ga4 conversions, do not double-configure
ga4's own user-provided data collection shares with google ads automatically when the ga4 conversion is imported. running a second enhanced conversions configuration on the google ads tag for the same action is not harmful, but it is not needed, and it makes diagnostics harder to read. choose one source of user-provided data per conversion action.
what to stop doing immediately
- stop treating "good" in diagnostics as finished.
- stop sending email only when you collect phone and address.
- stop hashing un-normalized values, or hashing the same person differently on different paths.
- stop firing the conversion tag on pages that do not carry the user data.
- stop uploading offline and lead conversions through legacy sheet templates or retired api paths.
- stop checking the uplift card outside the 30-to-60-day window and concluding it does not work.
- stop enabling enhanced conversions on the manager account and assuming the client accounts inherited the terms.
- stop judging european coverage without consent mode in place.
the orbit agent instructions
{
"guide": "enhanced-conversions-google-2026",
"agent_tasks": {
"audit_ec_status_per_action": {
"check": "for every primary conversion action, read the enhanced conversions diagnostics status and the account-level enhanced conversions and customer data terms state",
"flag": "any primary action whose status is needs attention or no recent data, or any client account where the customer data terms are not accepted",
"recommend": "accept the terms in the client account, enable enhanced conversions at the account level, and re-check diagnostics after 24 hours"
},
"audit_coverage_and_match_rate": {
"check": "for each enhanced conversion action, read coverage, match rate, and the list of user-provided data fields being sent",
"flag": "status good rather than excellent, coverage below 80 percent, or only the email field being sent when the site collects phone or address",
"recommend": "add phone, name, and address to the data layer at the conversion point and confirm normalization (lowercase, trimmed, e.164 phone) before hashing"
},
"audit_tag_placement": {
"check": "for web conversion actions, confirm the conversion tag fires on a page or state where the user-provided data is present in the data layer",
"flag": "conversion events firing with zero user-provided data on a checkout or form flow that collects it",
"recommend": "move the conversion tag to the confirmation state and populate the data layer before it fires"
},
"audit_lead_pipeline": {
"check": "for lead conversion actions, confirm hashed lead data is captured at form submit, offline uploads include the same hashed identifier plus gclid, and uploads run through data manager or the data manager api",
"flag": "offline uploads missing gclid on more than 20 percent of rows, uploads older than 90 days, or uploads still using legacy sheet templates or retired api paths",
"recommend": "capture gclid at lead creation, move the upload to a data manager connector, and keep the upload cadence inside the 90-day window"
},
"monitor_uplift_window": {
"check": "track the enable date for each enhanced conversion action and read the impact card conversion uplift between day 30 and day 60",
"flag": "an action past day 60 with no recorded uplift value, or a recorded uplift of zero",
"recommend": "store the uplift as the account baseline; if zero, re-check coverage and match rate before assuming the feature is not working"
},
"audit_consent_coverage_eea": {
"check": "compare enhanced conversions coverage on eea and uk traffic with the rest of the account and confirm consent mode signals are present",
"flag": "eea or uk coverage more than 30 points below the account average, or no consent mode signals",
"recommend": "implement consent mode v2 and re-check coverage after 7 days before changing the tag"
}
}
}
the bottom line
enhanced conversions is one switch now, fed by as many paths as you have, and judged by three numbers: coverage, match rate, and uplift. send every field you hold, normalize before you hash, fire the tag where the data lives, upload through data manager, and read the uplift card in its 30-day window.
it does not find new customers. it lets smart bidding see the ones you already have. in 2026 that is the difference between bidding on data and bidding on a sample.
built by orbit - the performance marketing intelligence layer. questions? jose@orbitllm.com