Skip to main content
Enhanced Conversions dataReference

Google Enhanced Conversions data guide

Enhanced Conversions recovers attribution by sending hashed customer data alongside a web conversion, and its defining failure is silence: the setting reads active, the tag fires, and no user data ever arrives. The three causes are always the same — field selectors pointing at markup a redesign moved, values read before the confirmation renders, or hashing applied before normalization. All three look identical in the settings screen and all three are visible in the diagnostics report, which is the first place to look and the last place anyone does.

Free30 minutesNo obligation

Enhanced Conversions data · what breaks

Where teams get this wrong — Enhanced Conversions data

  1. 01

    Reading the toggle instead of the diagnostics

    Active means configured. Only the diagnostics report says whether data arrived.

  2. 02

    Reading values from CSS selectors

    They break on every redesign, silently, with no error.

  3. 03

    Hashing before normalizing

    A valid hash of a malformed value matches nothing.

Enhanced Conversions data · the fix

What a correct implementation looks like — Enhanced Conversions data

  • Values sourced from the data layer

    Not from DOM selectors.

  • Normalized before hashing

    Lowercase, trimmed, E.164 phones.

  • Tag sequenced after the values exist

    Which matters on single-page checkouts.

  • Verified in the diagnostics report

    Not by the setting.

Enhanced Conversions data · architecture

What data is needed and where it should come from

Google's documentation defines the accepted fields and current normalization rules. These are the ones that matter and the sources that hold up.

  1. 1

    Email

    Lowercase, trimmed, then hashed. The primary matching field.

  2. 2

    Phone

    E.164 format, digits only, then hashed.

  3. 3

    Name and address

    Accepted, and contribute less. Useful where you already collect them cleanly.

  4. 4

    Where to source it

    The data layer, populated from the order record. Never DOM selectors.

  5. 5

    When to fire

    After the values exist in the page. On single-page checkouts this is a real sequencing problem.

  6. 6

    Consent dependency

    ad_user_data must be granted. Where it isn't, the absence of data is correct rather than a fault.

Enhanced Conversions data · diagnose

Common mistakes and how to validate each — Enhanced Conversions data

Ordered by how often we find them. Each one has a specific check rather than a general instruction to be careful.

  1. 01

    Selectors broken by a redesign

    The most common cause. Check whether the configuration references CSS classes; if so, it's one deploy from failing silently.

  2. 02

    Values not yet rendered when the tag fires

    Test a single-page checkout specifically. The tag fires, then the confirmation renders.

  3. 03

    Hashing applied twice

    Compare the raw and dispatched values on one real conversion.

  4. 04

    Consent denied during the test

    Confirm ad_user_data was granted, or you're diagnosing correct behaviour.

  5. 05

    Diagnostics never opened

    Open it. It's the fastest diagnostic available and almost nobody reads it.

Enhanced Conversions data · prove

How to prove your implementation is right — Enhanced Conversions data

Against your own records and a live payload, not against a preview screen.

Source of truth

the Google Ads Enhanced Conversions diagnostics report, over a closed window

  • Diagnostics showing a real match rate rather than zero.
  • User-provided data confirmed present on a live conversion.
  • Values confirmed sourced from the data layer, not selectors.
  • Normalization verified against Google's current specification.
  • Checked on a live conversion, not in preview mode.
  • Reconciled over a fully closed window, matched per record.
  • Re-checked 30 days later.

Enhanced Conversions data · free audit

What we check in the free audit

  • Selectors broken by a redesign
  • Values not yet rendered when the tag fires
  • Hashing applied twice
  • Consent denied during the test
  • Diagnostics never opened

Checked against

the Google Ads Enhanced Conversions diagnostics report, over a closed window

Get my free conversion tracking audit

Free30 minutesNo obligation

Enhanced Conversions data · when not to buy

What this reference deliberately leaves out — Enhanced Conversions data

Stated openly, because a reference that's silent about its own gaps is the dangerous kind.

  • Google's accepted field list and normalization rules change. Verify against current documentation before building.
  • Enhanced Conversions for leads uses a related but distinct mechanism, with its own configuration.
  • Match rate benchmarks aren't published by Google and vary by vertical, so we won't quote a target figure.
  • Vendor documentation is the authority, not this page. Where the two disagree, the vendor is right and we'd like to know so we can correct it.
  • Parameter names and behaviour change. Anything here is accurate as we last verified it; verify against the current documentation before you rely on it for a build.

Enhanced Conversions data · what we deliver

The checklist — Enhanced Conversions data

  • Diagnostics report shows real user-provided data

    Not zero.

  • Values come from the data layer

    Not CSS selectors.

  • Normalization applied before hashing

    Case, whitespace, phone format.

  • The tag fires after the values render

    Test on a single-page checkout specifically.

  • ad_user_data consent is granted for the test

    Otherwise the absence is correct behaviour.

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Repairs and verifies your existing browser-side setup against this reference, on a live conversion.

  • Implementation checked against the spec
  • Verified on a live conversion
  • Reconciled against your own records
  • Written handover
Have mine checked

1st-party server-side

Recommended

$800One-time fee · most popular

Money events sent from your own records through a first-party container on your subdomain, built to this specification.

  • First-party server container on your own subdomain
  • Events from your records, not the browser
  • Deduplicated on a shared event ID at every destination
  • First-party cookies beyond Safari's 7-day cap
  • 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Have it built properly

Full 1st-party stack

$1,800One-time fee · lifetime ownership

Every paid channel server-side plus the offline loop, documented to this standard.

  • Everything in 1st-party server-side
  • Pinterest, Snapchat, Reddit and LinkedIn CAPI
  • CRM and offline conversion loop
  • Refunds and cancellations corrected wherever each platform allows it
  • Monitoring so the next break surfaces in days
Get the full stack

FAQ

Enhanced Conversions data questions, answered

The diagnostics report in Google Ads. If it shows little or no user-provided data, the setting is active and the feature is doing nothing.

Free · 30 min

Find out whether Enhanced Conversions is doing anything

Free30 minutesNo obligation