Offline conversion import: optimise lead gen for real revenue
Offline conversion import feeds the real deal value from your CRM back into Google Ads, so Smart Bidding optimises for leads that actually close instead of for form spam.
Originally written in German — read it on visnakovs.de.
Most lead gen accounts optimise for the wrong number. They count every form submission as a conversion and let Smart Bidding chase as many of those as it can — while Google has no idea which of those leads ever becomes a customer. Offline conversion import flips that around. It feeds the real value of a closed deal from your CRM back into Google Ads, so the bidding automation optimises for qualified leads that actually close rather than for form spam.
It sounds technical. It’s also the biggest lever most lead gen accounts leave lying on the floor. Here’s why the default setup costs you money, how the import actually works, and why you should end up optimising for profit rather than revenue.
1. Why optimising for form submissions costs you money
The default looks like this: someone fills in your form, that fires a conversion, and you set the campaign to Maximise conversions or a target CPA. What you’ve told Google is “get me as many form submissions as you can at this price”. And that’s exactly what the automation does — with full commitment.
The problem: Google only knows the click, not the close. To the bidding algorithm every form submission is worth the same. The serious prospect with a budget and the price-shopper pinging ten suppliers at once both count as “one conversion”. So does the bot filling your form with garbage.
In reality lead quality swings wildly — by search term, by ad, by time of day, by audience. A few patterns every sales team recognises:
- Leads from comparison and “free” searches enquire a lot and buy rarely.
- Certain keywords pull in students, job applicants and pure information-seekers, not buyers.
- Some audiences close at a high rate, others almost never.
- Form spam and bots inflate the conversion count without a cent of revenue.
When Google optimises for “form submitted”, the obvious thing happens: the automation scales exactly the sources that deliver the most submissions for the least money. And cheap leads are almost never the good ones. Your CPA in the interface falls, conversion counts climb, the report looks great — and nothing usable reaches sales.
The nasty part is the feedback loop. The more cheap submissions the automation collects, the lower the average CPA, and the harder it bids into precisely those sources. The error reinforces itself. You see a clean, falling curve in the account while your sales team spends more and more time phoning through hopeless enquiries. The metric everyone watches and the metric that carries your business drift apart completely. And since the form submission is the only truth Google has, the automation can’t behave any other way. It isn’t stupid, it’s just briefed wrong.
That’s the core of the misunderstanding. A form submission isn’t a conversion in any economic sense — it’s a statement of intent. Train the bidding automation on statements of intent and you get more statements of intent, dump a pile of unqualified enquiries on sales, and pour budget into the wrong search terms. Garbage in, garbage out, this time at lead level.
2. Offline conversion import: feeding the real deal value back to Google
The fix is to finally tell Google what happened after the click. That’s what offline conversion import (OCI) does. You report the qualified or closed deal as the success, not the form submission — with its real value attached. Smart Bidding then learns which clicks turn into customers and optimises for those.
The classic route runs on the GCLID, the Google Click ID. Four steps, simplified:
- Capture the click. Google appends a GCLID to the URL on every ad click. You read it out and write it into a hidden field on your form. On iOS and under certain consent setups you get wbraid and gbraid instead of the GCLID — handle those the same way.
- Store it in the CRM. On submission the GCLID (or wbraid/gbraid) lands as a field on the lead, next to name, contact and source.
- Maintain quality. Your sales team does what it already does — disqualify the lead, send the quote, win the deal. All that matters is that the status and the deal value sit cleanly in the record.
- Send it back. When a lead gets qualified or you win the deal, you upload the conversion with its GCLID, timestamp and value back to Google — by manual upload (CSV or a linked Google Sheet), through the Google Ads API, or automatically via a native CRM integration.
From then on the bidding automation isn’t judging “submitted the form” but “became a customer and was worth X”. It shifts budget towards the campaigns, keywords and audiences that actually close, and pulls it out of the sources that only produce cheap submissions.
One question decides the quality of the whole setup: which moment do you report back? The closer to the real close, the cleaner the signal — but the longer it takes to accumulate enough data. What works well is a two-stage approach. Report the qualified lead (sales has checked it, it broadly fits) as an early signal with a moderate value, and the won deal as a strong signal with the real value. The automation gets fed faster and still learns in the direction of closing.
The time window is also more relaxed than people usually claim. Each stage is simply its own conversion action — one for the qualified lead, a second for the won deal. You upload both as ordinary new conversions with the same GCLID; you don’t need an adjustment or correction system for this. Adjustments exist to change conversions you’ve already reported, and the tight deadlines only apply there. The real limit is the click-conversion window of each action — set it to the maximum of 90 days. Only if your sales cycle runs longer than those 90 days does the close genuinely arrive too late. One nuance: bidding automation learns most from fresh signals. Very late conversions count fully in the statistics but move bids more sluggishly. That’s another reason the two-stage report — early qualified lead plus later close — is the most robust pattern.
The more modern, more robust route is Enhanced Conversions for Leads. Instead of threading the fragile GCLID through your entire system, you work with the identifiers the form collects anyway: email and phone number. On upload that data is hashed (SHA-256, nothing leaves your system in clear text) and Google matches the close back to the original click via the hash. The big advantage: no GCLID to manage in the CRM — you already have the email. That makes the setup less error-prone and much easier to maintain. In a lot of accounts Enhanced Conversions for Leads is now the first thing to check, before you even start thinking about GCLID handling.
One point that tends to get lost: both stand or fall with consent. You may only collect and upload GCLIDs, email hashes and the rest if consent is properly in place and correctly reflected in Consent Mode. No OCI in the world saves you when the base tracking underneath is leaking.
Before you set up OCI, make sure the foundation measures cleanly in the first place. My tracking check and the ready-made consent and lead gen container from my GTM configurator both live on my German site: tracking check and GTM configurator (both in German — the container JSON they produce is language-neutral).
3. Revenue is good, profit is better — and what you need for it
Once you send back the deal value instead of just the submission, you’ve already made the biggest jump. Google then optimises for revenue instead of counts — in most accounts that’s the difference between “lots of leads, little business” and “fewer leads, more revenue”.
But revenue isn’t the finish line, because revenue isn’t profit. If your margin varies by deal type, optimising for raw revenue can pull you in the wrong direction. An everyday example:
- A big job with a high invoice total but a thin margin, because it’s stuffed with bought-in work and materials.
- A smaller job with a fat contribution margin, because it’s almost pure service.
Optimise for revenue and Google chases the large, low-margin jobs — even though the small, high-margin deal is worth more to your books. So the more honest value to send back is the contribution margin or profit per deal, not gross revenue. You don’t need it accurate to the cent; a rough margin per deal type or product category is usually enough to steer the bidding in the right direction. I run the same logic in e-commerce — how to optimise for real contribution margin instead of revenue there is in E-commerce: track profit, not revenue.
You don’t need enterprise infrastructure to make this work, but a few things have to be in place:
- Click identification with consent. Either GCLID/wbraid/gbraid written cleanly into the form and the CRM, or email and phone for Enhanced Conversions for Leads. Either way with Consent Mode properly wired in.
- A CRM with value and status fields. One field per lead for status (qualified, won, lost) and one for value — ideally contribution margin, at minimum the deal value.
- A clear definition of a good lead. What counts as qualified, what counts as closed? Without that definition you upload inconsistent signals and the automation learns noise.
- Clean base tracking. OCI sits on top of your tracking foundation. If conversions double-fire, consent is missing or the GCLID never arrives, you’re importing junk with a value label on it.
- Some patience. The bidding automation needs volume and time to learn on the new signal. Think in weeks, not days — and leave the form conversion running alongside as a secondary signal rather than switching it off immediately.
The honest reality check first: if your base tracking isn’t solid, fix that before anything else. OCI amplifies what’s there, good and bad.
The bottom line
Optimising lead gen campaigns on raw form counts trains Google for quantity over quality — and cheap leads are almost never the good ones. Offline conversion import closes the gap between the click and the close.
Three things to take away:
- Optimise for closes, not submissions. Send the qualified or won deal back via OCI and Smart Bidding learns which clicks genuinely become customers.
- Try Enhanced Conversions for Leads first. The GCLID-free route over hashed email and phone is more robust and easier to maintain than classic GCLID handling.
- Optimise for profit wherever margin varies. Send back contribution margin rather than revenue, or Google will chase big low-margin jobs.
The foundation stays the same: clean tracking with consent, and a CRM that knows value and status. With that in place, OCI is one of the strongest levers in lead gen — and one of the least used.
If you want a second pair of eyes on whether your setup can carry an offline conversion import, write to me at visnakovs@clickspire.de. I’ll tell you honestly what I see.