Google Ads is matching fewer of your conversions as cookies erode, and enhanced conversions is Google's answer: send hashed first-party data to recover the matches you are losing. The setup changed meaningfully in 2026, so doing it from an old guide can send you down a dead end. Here is how to implement it now.

What enhanced conversions does

Enhanced conversions supplements your conversion tags with hashed first-party data, like an email or phone number the user provided, so Google can match a conversion to a signed-in account even when cookies fail. The data is hashed with SHA-256 in the browser before it is sent, so Google never receives raw personal information. The payoff is more complete, more accurate conversion measurement.

Know the 2026 changes first

Two updates reshape how you set this up, and ignoring them causes broken pipelines:

  • Enhanced conversions for web and for leads are now a single on/off setting rather than two separate products.
  • Offline conversion imports and leads uploads are migrating to the Data Manager API, and the old Google Ads API upload path is being blocked from mid-June 2026.

Choose your delivery method

There are three ways to send the user-provided data, and you pick based on where your data lives. The Google tag or Google Tag Manager captures it from the page at conversion time; the Data Manager API sends it from your systems; and many setups use both. For web conversions on a site with forms or logins, the tag-based route is the usual starting point.

Capture the data with the Google tag or GTM

In a tag-based setup you tell Google which page elements or variables hold the user-provided data, and the tag hashes and sends it:

// gtag: provide user data at conversion; the tag hashes it before sending
gtag('set', 'user_data', {
  email: emailFromForm,              // hashed automatically by the tag
  phone_number: phoneFromForm,       // E.164, hashed automatically
  address: { first_name: fn, last_name: ln, postal_code: zip }
});
// For leads, also send the GCLID alongside the user-provided data.

In GTM the equivalent is configuring the conversion tag's user-provided data fields to read your data layer variables, which keeps the hashing and transport handled for you.

Mind leads vs web

For lead conversions there is one extra requirement that trips people up: you must send the GCLID along with the hashed data, so Google can tie the offline lead back to the original ad click. For web conversions on-site, the click context is already present, so the user-provided data alone does the job. Knowing which case you are in prevents a half-working setup.

Verify and respect consent

Confirm it works and stays compliant:

  • Check the conversion diagnostics in Google Ads for enhanced conversions status and match rate.
  • Confirm the data is hashed before it leaves the browser, never sent raw.
  • Gate the user-provided data on consent, since ad_user_data must be granted for EEA and UK users.

Watch the match rate, not just the toggle

Turning enhanced conversions on is the start, not the finish, because the setting can be enabled while little data actually matches. Google Ads reports a match rate in the conversion diagnostics, and that number is what tells you the feature is working. A green toggle with a low match rate usually means the data is not being captured, is formatted wrong, or is not reaching the tag, so treat the match rate as the real success metric and investigate whenever it sits lower than you expect.

Google Ads is quietly matching fewer conversions as cookies fade, and enhanced conversions hands it clean first-party data to close the gap. Set it up with the unified 2026 setting in mind, capture the data through the tag or Data Manager API, send the GCLID for leads, and verify the match rate while respecting consent. Do that and the conversions Google was losing to cookie decay come back as matches you can actually optimize against.

Want a stronger data analyst role or a raise? Grab the FREE Product Analyst Playbook and get the exact roadmap to your next offer.