All insights

B2B offline conversion tracking: from form fill to closed deal

To Google Ads, the student who filled in your contact form for a dissertation and the operations director who later signed a year-long contract score exactly the same: one conversion each. B2B offline conversion tracking is the cure for that: you store the click ID and contact details when the form is submitted, then send the later CRM stages back to Google Ads so Smart Bidding learns from qualified leads and won deals instead of form fills.

The idea fits in a sentence. The work sits in the joins between your website, your CRM and Google’s upload route, and those joins are where most set-ups leak. This guide takes them in the order we’d build them.

Why are form fills a poor bidding signal?

Smart Bidding learns from the conversions you give it. Feed it form fills and it will become extremely good at finding people who enjoy filling in forms.

A typical B2B contact form collects genuine enquiries alongside job applicants, suppliers, people selling SEO, existing customers hunting for a support number and the occasional bot. Every one of them counts. The form also scores a small one-off job and a multi-year framework identically, so the algorithm has no reason to prefer one over the other.

Your CRM already knows which enquiries went anywhere. Google Ads doesn’t, because as far as it can tell the story ends at the thank-you page. Offline conversions carry the rest of that story back.

What do you need to capture when the form is submitted?

Two things, and we’d capture both wherever consent allows.

Click identifiers. When someone arrives from an ad, the landing URL usually carries a GCLID, or a gbraid or wbraid on some Apple device traffic. Your site needs to read it from the URL, hold it across the visit in first-party storage, write it into hidden form fields and save it on the CRM record.

Hashed contact details. A normalised, hashed email address and phone number let Google match the lead even when no click ID survived the journey. Enhanced conversions for leads works this way. Google describes its classic offline conversion import as a legacy feature and recommends upgrading to enhanced conversions for leads, so we wouldn’t build anything new that relies on click IDs alone.

Consent decides how much of this you’re allowed to do. If a visitor denies ad_user_data, enhanced conversions hashed data isn’t collected, so the form build and the cookie banner have to be designed together.

The usual failures are mechanical: a redirect that strips URL parameters, a form embedded from another domain, a booking widget that never sees the stored ID, or a CRM field overwritten on a second visit. Click IDs also tend to sit on the contact while the money sits on the deal, so something has to join the two before anything can be sent.

Which CRM stages should you send to Google Ads?

Send the first stage where a person at your company has said yes, and the stage where the money arrives. Stage names vary from one pipeline to the next, so translate this table into your own:

CRM stage Send it? How we’d use it
Form submitted Already tracked on the website Demote to secondary once better signals are flowing
Qualified by a person Yes Usually the first primary action: soon after the click and frequent enough to learn from
Proposal or quote sent Sometimes Useful when qualification is loose, or when deals take a long time to close
Closed won Yes The real prize with the real value attached, though often too rare to bid on alone
Disqualified or lost No Leave it out, so only the leads that progressed get reported as conversions

Two decisions sit behind that table. One is counting: a qualified lead normally wants “one” per click so a keen prospect isn’t counted three times, while “every” can suit a won-deal action if one click really can produce separate sales.

The other is repeat firing. Your sync has to remember what it has already sent, so a retried job or a sales rep dragging a deal back and forth doesn’t report the same stage twice. If three people from one company enquire, decide which of them owns the deal as well.

What value should you give a lead?

Give each stage a value that reflects what it’s usually worth to you. Here’s a hypothetical with round numbers: if an average won deal brings £8,000 of gross profit and one in four qualified leads closes, a qualified lead is worth £2,000. If one in ten form fills qualifies, a form fill is worth £200.

Won deals can then carry the actual figure from the CRM. Gross profit is a better number than contract value if you can get hold of it, and our guide to bidding on margin covers how that works.

Revisit those stage values when your close rates move. If the business can’t agree a number yet, a qualified-lead action with no value attached is a respectable start and far better than a precise-looking figure nobody believes.

How many conversions does Smart Bidding need?

There’s no honest universal number. Google’s guidance varies by strategy and has shifted over time, so we won’t quote a threshold here, and we’d be wary of anyone who hands you a magic figure.

Thin data generally makes for jumpy bidding. If won deals arrive a few at a time, bidding on them alone will probably struggle, which is why we’d normally bid on a qualified stage that happens more often and sooner after the click, while reporting on won deals alongside it.

Long sales cycles add a wrinkle. Imported conversions are generally reported against the date of the original click, so recent weeks can look worse than they really are until the pipeline catches up. If your volume is genuinely tiny, keep tidied-up form fills as the primary action for now and let the CRM stages build up as secondary data until there’s enough to act on.

How do you move bidding from form fills to CRM stages?

Switching everything over on a Tuesday afternoon is how accounts fall over. This is the order we’d do it in:

  1. Add the new actions as secondary. They gather data and appear in reports without affecting bids, because only primary actions feed bidding by default.
  2. Reconcile against the CRM. Compare what was uploaded, matched and rejected with what the CRM says happened. A big gap means capture or matching is wrong, and this is the cheap moment to find out.
  3. Wait for a normal cycle. Give it long enough to cover your usual gap between enquiry and qualification, so you aren’t judging a half-finished batch of leads.
  4. Work out the new target. At £50 per form fill with one in four qualifying, the equivalent is about £200 per qualified lead. Leave the old £50 in place and you’ll starve the campaign.
  5. Swap the roles. Make the qualified stage primary and move form fills to secondary, so they stay visible for diagnostics. One campaign first is safer if your goals can be set per campaign.
  6. Hold your nerve. Avoid changing budgets, targets and ads at the same time, or you won’t know what caused what.
  7. Keep watching the pipe. A sync that fails silently looks exactly like a bad month for leads, so someone needs alerting when uploads stop or error.

How should the data get from your CRM to Google Ads?

That depends on the CRM. A native connector may be all you need, and we’ve set out the different ways to send CRM data to Google Ads, including the cases where you shouldn’t hire someone like us.

If you’re writing your own uploads, new or dormant integrations are now blocked from sending offline conversions through the Google Ads API, and Google points them towards the Data Manager API instead. Older integrations that kept legacy access are living on borrowed time.

When the connector runs out of road, our lead quality feedback service connects HubSpot, Pipedrive, Salesforce or a custom CRM to Google Ads, and all of it lives in your own accounts. Each project gets a fixed quote, from £2,500 ex VAT depending on the systems involved, and our pricing page has the rest of the numbers.

Before any CRM data goes near your account, the foundations need to be sound. A Tracking Audit will show whether your tags and conversion actions are fit to build on, and you’re welcome to stop there.