Short answer

Enhanced conversions for leads is Google's upgraded version of offline conversion import. Your website's Google tag captures a hashed email or phone number when someone fills in a form. When that lead becomes qualified or a customer in your CRM, you send the same hashed details back, with the GCLID if you have it, and Google matches the sale to the ad. The older import relies on the GCLID alone, and Google now recommends enhanced conversions for leads for new setups.

On this page
  1. What are enhanced conversions for leads?
  2. Enhanced conversions for leads vs offline conversion import
  3. Which CRM stage should you send to Google Ads?
  4. How to set up enhanced conversions for leads
  5. Enhanced conversions for leads in HubSpot
  6. Enhanced conversions for leads in Salesforce
  7. What breaks, and how to check it
  8. Frequently asked questions

When a lead from your website becomes a customer on a call or in a signed quote, Google Ads doesn't see the sale unless you send it. Enhanced conversions for leads is how you tell Google which leads turned into customers, so it can bid for more people like them. Google now calls the older method, an offline conversion import that relies on the click ID alone, "a legacy feature". For anyone starting out, Google recommends enhanced conversions for leads instead.

HubSpot and Salesforce can both send these conversions, but the numbers are only useful if you send the right CRM stage and the click ID and email reach the CRM intact. We checked every rule, limit and date below against Google's and HubSpot's help pages on November 5, 2026. The advice on which stage to send is ours.

What are enhanced conversions for leads?

Enhanced conversions for leads is a Google Ads feature that matches sales recorded in your CRM back to the ads that started them. It uses a hashed email address or phone number as well as the click ID. Google's definition: "an upgraded version of offline conversion import that uses user-provided data, such as email addresses, to supplement imported offline conversion data".

The GCLID, or Google Click ID, is a unique code that Google Ads adds to your page address for every click from an ad. Hashing runs an email address or phone number through a one-way formula, so Google receives a fixed string of characters instead of the address itself. The formula is SHA-256, applied after emails are lowercased and phone numbers put in international format (tag guide).

From click to sale, it works like this:

  1. Someone clicks your ad, and Google adds a GCLID to the landing page address.
  2. They fill in your form. The Google tag on that page sends Google a hashed copy of the email or phone number they typed.
  3. The lead lands in HubSpot or Salesforce, ideally with the GCLID saved in a hidden form field.
  4. Days or weeks later, your team marks the lead as qualified, or the deal as won.
  5. That change goes back to Google Ads with the same hashed email, plus the GCLID if you have it. The match is made "with lead information from the tag and signed-in Google accounts".

Enhanced conversions for leads vs offline conversion import

The difference is what travels with each sale. A standard import identifies the lead by its GCLID alone. The newer method adds the hashed email or phone number, so a sale can still be matched when the GCLID is missing.

Offline conversion import (GCLID only) Enhanced conversions for leads
What identifies the lead The GCLID saved with the lead A hashed email or phone number, plus the GCLID when you have it
Website setup A hidden form field, and a script on every page that stores the GCLID (steps) The Google tag on every page, set to collect user-provided data from your forms (steps)
Latest upload after the click 90 days 90 days with a GCLID, 63 days with only an email or phone number (FAQ)
Ad clicked on a phone, form filled on a laptop Missed: the script keeps the GCLID in the browser that clicked Can be counted: Google lists cross-device conversions among the benefits
Google's position "A legacy feature" Recommended for new setups and for upgrades

By Google's own figure, advertisers who sent email addresses and phone numbers alongside GCLIDs "saw a median 10% increase in conversions" compared with standard imports. It comes with no date, sample size or method, so don't plan on 10% for your account.

What changed in 2025 and 2026

The dates, from Google's help pages:

  • May 31, 2025: support ended for the legacy Salesforce integration. Salesforce data now goes through Data Manager, the part of Google Ads that imports data from sources such as Google Sheets, HubSpot, Salesforce and BigQuery.
  • April 2026: Google Ads accepts customer data from website tags, Data Manager and API connections at once, so you no longer pick one method.
  • June 2026: the web and leads versions become one on/off switch. Accounts that had accepted Google's customer data terms move over automatically.
  • June 15, 2026: API uploads of offline conversions and enhanced conversions for leads move to the Data Manager API and are blocked in the Google Ads API, except for integrations kept on legacy access. If a developer built your uploads, ask which route they use now.

Which CRM stage should you send to Google Ads?

Advertisers use enhanced conversions for leads to point bidding at the leads who become customers, so the stage you send is what Google learns from. Its best practice is to pick "either qualified lead or converted lead" as the goal, with a separate conversion action for each stage. Its reason: "Usually, you would only want to bid to one stage of the lead funnel."

Your sales cycle decides which stage can work. A GCLID is kept for only 90 days, and a conversion sent with only an email or phone number has to arrive within 63 days (import FAQ). A deal that closes five months after the click can't be imported, however good it was.

Time from ad click to signed deal Stage to bid on Why
Under 60 days Won deal Most deals arrive inside both upload windows
60 to 90 days Qualified lead, with won deals imported as secondary Won deals without a GCLID miss the 63-day window
Over 90 days Qualified lead Won deals miss both windows, so report them from the CRM

In HubSpot, the matching default lifecycle stages are "Sales Qualified Lead", a contact "your sales team has qualified as a potential customer", and "Customer", a contact "with at least one closed deal". In Salesforce, Google's own example is an opportunity whose Stage becomes "Closed Won".

A 12-person HVAC company that books most jobs within a week of the first call can bid on won jobs. An accounting firm whose engagements take three or four months to sign should bid on qualified leads. If you win only a few deals a month, bid on the qualified stage anyway, because it gives the bidding more conversions to learn from.

Whichever stage you pick, agree in writing what it means first.

How to set up enhanced conversions for leads

These steps happen in Google Ads, whichever CRM you use:

  1. Accept Google's customer data terms and turn on enhanced conversions in your conversion settings.
  2. Check that auto-tagging, the setting that adds the GCLID to your ad clicks, is turned on. Then set the Google tag to collect the email or phone number from your forms, either automatically, through CSS selectors or page code, or with Google Tag Manager (options). Send a test lead through.
  3. Create a conversion action for each stage you'll import, with the source set to "Import from clicks". Keep each new action secondary, meaning "observation-only", until step 6.
  4. Connect your CRM, as in the HubSpot and Salesforce sections below. For other CRMs, Data Manager can import from a Google Sheet, and Google's help pages also list Zapier. Wait four to six hours after creating a conversion action before the first upload, or the first conversions can take two days to appear.
  5. Check the diagnostics report, and look for imported conversions under the new action in the "All conv. (by conv. time)" column (checklist).
  6. Wait the longer of one to two conversion cycles (the usual time from click to that stage) or four weeks, as Google's upgrade guide does. Then make the CRM stage primary, and set the form fill and any old GCLID-only import to secondary.

Enhanced conversions for leads in HubSpot

HubSpot gives you two routes, and both send enhanced conversions for leads: HubSpot's ad conversion events and Data Manager's HubSpot connection.

HubSpot ad conversion events Data Manager's HubSpot connection
Where you set it up In HubSpot, once your Google Ads account is connected In Google Ads, by signing in to HubSpot
HubSpot plan Marketing Hub Starter, Professional or Enterprise Not listed; Google says limits vary by HubSpot subscription
What it sends Lifecycle stage changes, and form submissions if you add them Records picked by conditions on the Lifecycle Stage field
Past data Only stage changes made after you create the event The last 14 days on the first run, then every change since the previous run
Conversion value One fixed value per event, such as your average deal size Not stated in Google's guide

Four rules apply to HubSpot's own tool.

  • A contact needs a value in the "Google Ad click id" property, or shared contact data such as email or phone, or its stage change won't sync.
  • Choose "All contacts that move to the selected lifecycle stage(s)", which HubSpot strongly recommends.
  • Starter allows up to five events, Professional up to 50 and Enterprise up to 100.
  • Events connected through a Google Ads manager account can't sync with enhanced conversions. You can still create them in HubSpot, but the form data won't sync.

Enhanced conversions for leads in Salesforce

Use Data Manager, which imports from Salesforce's Lead, Opportunity and Order objects, with a separate connection for each object. The setup guide asks for a Sales Cloud login with the right permissions, then these steps:

  1. Create a custom field named GCLID on both the Lead and the Opportunity object, 255 characters long and read-only. Map Lead.GCLID to Opportunity.GCLID so the ID carries over when a lead converts.
  2. Turn on field history tracking for Lead Status and for the opportunity Stage. Data Manager takes each conversion's time from that history.
  3. Add GCLID as a hidden field on your web-to-lead form, the Salesforce form that creates lead records from your website. Add Google's script to every page so the field gets filled, and keep the form on the same domain as the rest of your pages.
  4. Test it. Open your site with ?gclid=test added to the address, submit the form, and check that the new lead shows "test". Convert it to an opportunity and check again.
  5. In Data Manager, map every identifier the object holds, such as GCLID, email and phone. The Salesforce page says to "include and map as many identifiers as you have".
  6. Define the event, such as the opportunity Stage becoming "Closed Won". Map a value field, such as the opportunity's Amount, to the conversion value; if you map nothing, each conversion gets a value of one.
  7. Run the import on a daily schedule.

Four limits apply. The first import looks back only 14 days, a failed event isn't retried, and Data Manager can't import from Salesforce sandboxes. A successful import can also take up to 24 hours to show as conversions.

What breaks, and how to check it

The usual causes, in Google's words: "missing or incorrectly formatted user-provided data, or incorrect in-page code implementation". Check these before you trust the numbers:

  • The form sits directly on your page. The tag instructions are written for a tag that sits "directly on your page (not within a third-party tool or iFrame)". For an iframe form, the implementation checklist says the data has to be passed to the main page, which means changing the form's code. If you can't, move the form onto a page you control.
  • The GCLID survives every hop. If lead details pass "through another system before reaching Salesforce", that system has to carry the GCLID too. The same goes for form tools and connectors that feed HubSpot.
  • The CRM keeps the email the lead typed. Email is the identifier Google prefers, because it "isn't prone to being reformatted in your CRM". Collect phone numbers too.
  • Every lead that reaches the stage gets sent. Uploading all conversions, including those not attributed to Google Ads, is "required for enhanced conversions for leads to function correctly".
  • Time zones match. A conversion dated before its click is rejected, and Google's fix is to check the time zone.
  • Customers have been told. Google's customer data policies require you to tell customers you share their information with third parties for ad measurement, and to get consent where the law requires it. Conversions in sensitive categories, such as health and medical information, can't be used in enhanced conversions. Check 18 in our AI readiness assessment asks whether your team knows which data comes with legal or contract conditions.

Optimitor's lead tracking project sets this up in your own Google Ads and CRM accounts in two weeks, at a fixed price agreed before work starts. It ends with five test inquiries followed from click to CRM to Google Ads.

Frequently asked questions

What do enhanced conversions do?

They send hashed customer details, such as an email address, with your conversions so Google can match more of them to ads. The web version covers sales and other events on your website. The leads version covers sales that happen later, off the website, from a website lead, such as "an online inquiry for an apartment" in Google's example. From June 2026, Google says, the two share one setting.

Do I still need the GCLID with enhanced conversions for leads?

Yes. GCLIDs should go in "whenever possible", and they're required if no tag collects user-provided data. The GCLID also gives you the longer window: 90 days after the click, against 63 days for conversions sent with only an email or phone number (import FAQ). The Google tag collects new GCLIDs automatically, but keep importing the ones already stored in your CRM.

Is offline conversion import going away?

Not as of November 5, 2026. GCLID imports still work, but Google calls them a legacy feature and recommends upgrading. You can add hashed emails or phone numbers to the import you already run, or set up a new conversion action beside it and switch bidding later. For developers, Google Ads API uploads moved to the Data Manager API on June 15, 2026.

Can I send the real deal amount to Google Ads?

With Salesforce through Data Manager, yes. With HubSpot's own ad conversion events, no. Google's Salesforce guide lets you map a value field, such as an opportunity's amount, to the conversion value. HubSpot removed its "Use the Deal amount" option, so its native lifecycle events send a fixed value. For each deal's actual amount, HubSpot points to a custom setup built with HubSpot workflows, and Google now takes those uploads through its Data Manager API.

Find out which ads bring customers.

Lead tracking tags every enquiry with where it came from, and tells the ad platforms which enquiries became good prospects. Two weeks, at a fixed price.

Lead tracking