All posts
Ad Tracking

Offline conversions & GCLID: tie ad clicks to closed-won deals

The Elir Team·RevOps playbooks·June 22, 2026·7 min read

Here's the gap that costs B2B teams the most money in paid search: Google Ads optimizes toward whatever conversion you feed it, and most teams feed it the form fill. So the algorithm gets very good at buying cheap form fills — which is not the same as buying customers.

The fix is offline conversion tracking: sending a conversion back to Google when a lead actually becomes a qualified opportunity or a closed-won deal, weeks after the click. This post is the practical how — capturing the click ID, firing on the right CRM event, and choosing between the two import methods Google offers in 2026.

If you haven't set up basic conversion tracking yet, start with the Google Ads conversion tracking guide; this picks up where that leaves off.

The demo isn't the conversion

In B2B, the meaningful events happen long after — and away from — the ad click:

  • Someone clicks a Google ad and fills out a demo form. (This is what most teams track.)
  • A week later, sales qualifies them: they become an SQL.
  • A month later, an opportunity opens.
  • Two months after that, the deal closes for $40,000.

Only the first event fires a browser tag. The other three — the ones that actually represent revenue — are invisible to Google unless you send them back. So the algorithm never learns that this particular click led to a $40K deal, and it keeps optimizing toward whatever produces the most cheap forms.

Offline conversion tracking closes that loop. You report the qualified lead, the opportunity, or the closed-won deal back to Google, attributed to the original click, and bidding starts chasing the actions that produce pipeline. Done right, it's the single highest-leverage change a B2B paid-search program can make.

GCLID: the thread that connects click to deal

The mechanism that makes this possible is the GCLID — Google Click ID. When someone clicks a Google ad, Google appends a unique gclid parameter to your landing-page URL. That string uniquely identifies the click.

The whole technique rests on one move: capture the GCLID at form submission and store it on the lead/contact record in your CRM. Then, when that record later changes stage, you send the conversion back to Google with the GCLID, and Google reconnects it to the original click and campaign.

The setup, concretely:

  1. Capture it on the page. When a visitor lands with ?gclid=..., read it (from the URL or the Google cookie) and write it into a hidden form field.
  2. Store it in the CRM. Map that hidden field to a custom property — name it clearly, e.g. "Google Click ID (gclid)". Most CRMs (HubSpot, Salesforce, Pipedrive) support this mapping in their form settings.
  3. Fire on stage change. When the record moves to a stage you care about (Qualified, Opportunity, Closed-won), send a conversion to Google Ads containing the GCLID, the conversion action name, the timestamp, and ideally the deal value.

The same pattern works for the other platforms — store fbclid for Meta and li_fat_id for LinkedIn in their own fields so you can close the loop everywhere you advertise.

Fire on the right event

Which stage should send a conversion? This is a strategy decision, not a technical one, and it maps directly onto the primary-conversion choice in conversion tracking.

  • Qualified lead (SQL): the sweet spot for most B2B teams. Enough volume for Google's algorithm to learn from, and far better quality signal than a raw form fill.
  • Opportunity created: higher intent, lower volume — good if you have the lead flow to support it.
  • Closed-won: the truest signal and the right one for value-based bidding, but often too sparse on its own for the algorithm to optimize against. Many teams send both qualified-lead (for volume) and closed-won-with-value (for revenue signal).

Send the deal value with closed-won conversions. Value-based Smart Bidding can then optimize toward expected revenue, not just conversion count — which is the entire point of doing this in B2B, where a $5K deal and a $200K deal should not be weighted equally.

GCLID import vs enhanced conversions for leads

Google offers two ways to get these offline conversions in, and in 2026 its recommendation has shifted decisively.

Legacy GCLID import. You store the GCLID and upload conversions keyed on it (via the API, a Google Sheet, or a scheduled file). Reliable and explicit, but it breaks entirely if the GCLID wasn't captured, and GCLIDs can be lost when users strip URL parameters or land through privacy-restricted browsers.

Enhanced conversions for leads. Instead of relying on the click ID, you upload hashed first-party data (the email the lead entered), and Google matches it back to the ad click on its side. It's more resilient to lost GCLIDs and to privacy restrictions, and Google now explicitly favors it. As of 2026, Google unified enhanced conversions for web and leads into a single on/off switch, and accepts the data from website tags, Data Manager, and API connections simultaneously — so you no longer have to choose one implementation path.

| | GCLID import | Enhanced conversions for leads | |---|---|---| | Keyed on | Google Click ID | Hashed email (first-party) | | Breaks if | GCLID not captured / stripped | Email not captured | | Privacy resilience | Lower | Higher | | Google's 2026 stance | Legacy | Recommended | | Best for | Existing GCLID-based setups | New setups |

The practical recommendation: if you're starting from scratch in 2026, build on enhanced conversions for leads — there's no reason to implement the legacy GCLID path. If you already have a working GCLID pipeline, keep it and layer enhanced conversions on top for the matches GCLID misses. Either way, keep capturing the GCLID — it's still useful for your own CRM-side attribution even when Google matches on email.

Mind the conversion window

None of this works if your conversion window is shorter than your sales cycle. If deals take 90 days and your window is set to 30, the click that started a closed-won deal has already aged out by the time the conversion fires — so the import has nothing to attribute to.

Set the conversion window to match (or exceed) your real sales cycle — for many B2B companies that's 30 to 180 days. This is the most common silent failure in offline conversion setups: everything is wired correctly, but the window quietly drops every conversion that takes too long to materialize.

Where Elir fits

The hard part of offline conversions isn't the concept — it's the plumbing: capturing click IDs reliably, watching CRM stage changes, sending the right conversion with the right value back to each platform, and keeping it all reconciled. Elir captures GCLID/fbclid/li_fat_id on inbound leads, watches your CRM (HubSpot, Salesforce, GoHighLevel) for stage changes, and feeds qualified-lead and closed-won conversions — with values — back to Google, Meta, and LinkedIn automatically. It's the same closed loop behind unified ad-spend reporting and accurate CAC by channel, and it's what lets multi-touch attribution run on real closed-won revenue instead of form fills.

If you want to see closed-won deals flowing back to your ad platforms on your own data, book a 20-minute walkthrough.

TL;DR

In B2B the form fill isn't the conversion — the qualified opportunity and the closed deal are, and they happen weeks later, off your website. Capture the GCLID (and fbclid/li_fat_id) at form submission, store it on the CRM record, and fire a conversion back to the ad platform when the record hits a stage you care about — sending deal value on closed-won so bidding optimizes for revenue. Prefer enhanced conversions for leads over legacy GCLID import in 2026, but keep capturing the GCLID regardless. And set your conversion window to match your sales cycle, or every slow-closing deal silently drops out.


See this in your own numbers.
Book a 20-minute walkthrough with the Elir team.
Book a demo