All posts
google-adssmart-biddingconversion-trackinglead-gen

Teaching Smart Bidding the difference between a form fill and a customer

Why lead gen campaigns optimise for the wrong people, and the grading layer that cut cost per qualified lead in half.

By Abdul Haseeb

Teaching Smart Bidding the difference between a form fill and a customer

Here is a sentence I have heard from more sales teams than I can count: "The leads are rubbish."

And here is the part nobody enjoys hearing back: the campaigns are usually doing exactly what they were told to do. The problem is what they were told.

This is the story of a B2B software account where lead volume looked healthy, the dashboard looked green, and the sales team was quietly ignoring half of what marketing sent them. The fix was not a new campaign structure or a clever ad. It was changing what we told Google a "conversion" was. Cost per qualified lead came down by 50%.

The problem: Smart Bidding is a very obedient intern

Smart Bidding (Target CPA, Maximise Conversions and friends) is Google's automated bidding. You give it a goal, it adjusts bids for every single auction to hit that goal. It is genuinely good at this. It sees signals you never will: device, time, location, audience membership, the query itself, and hundreds of combinations of them.

But it only optimises toward the conversion action you give it. If the conversion is "someone submitted the form", then Smart Bidding's entire job becomes finding more people who submit forms, as cheaply as possible.

Now think about who submits B2B software forms cheaply:

  • Students researching the category for an assignment
  • Competitors checking your pricing
  • Job seekers who clicked the wrong button
  • People who will fill in any form that offers a free PDF

The algorithm finds these people because they are cheap and they convert, by the definition you gave it. It is not broken. It is a very obedient intern following a bad brief.

Before: what Smart Bidding was rewarded for
  1. 01Ad clickCheapest one available
  2. 02Form fillStudent, competitor, job seeker
  3. 03Counted as a winEvery lead worth the same
  4. 04Bids for more of the sameAnd the loop tightens

Why "just add negative keywords" does not fix it

The usual first response is to tighten targeting: more negatives, stricter match types, audience exclusions. That helps at the edges, but it is fighting the symptom. As long as every form fill counts as an equal win, the bidding model keeps being rewarded for volume over quality, and it will keep drifting back toward whatever is cheapest.

The real fix sits after the click, in data the ad account cannot see on its own.

The fix: grade the lead, then tell Google what it was worth

The idea is simple. Instead of reporting every form fill as a conversion at the moment it happens, you wait until you know something about the lead, then report back only the leads that turned out to be real, weighted by what they were actually worth.

I built this as a grading layer that sits between the CRM and the ad account:

  1. Form submission. The lead arrives with its click identifier (the GCLID) captured in a hidden field, so it can be matched back to the exact ad click later.
  2. Grading webhook. A small Node.js service receives the lead and scores it against the rules sales actually cares about: company fit, role, the answers on the form, and later, what happened in the CRM.
  3. Value assignment. Each lead that passes gets a conversion value. A lead that became a real sales conversation is worth far more than one that merely looked promising.
  4. Conversion upload. Qualified leads go back to Google Ads through offline conversion import, attached to their original click, with their value.
After: the grading layer between the CRM and the ad account
  1. 01Form submissionGCLID in a hidden field
  2. 02Grading webhookNode.js, rules agreed with sales
  3. 03Value assignmentWorth more if it reached sales
  4. 04Conversion uploadGoogle Ads offline import

Google calls the general approach offline conversion tracking. The mechanism has been around for years. Most accounts simply never wire it up, because it lives in the awkward gap between the marketing team and whoever owns the CRM.

What changes when the signal changes

Once the qualified conversion becomes the primary goal, Smart Bidding starts learning from a completely different set of examples. The students and job seekers stop counting as wins. The people who look like actual buyers start counting a lot.

The bidding model does not need to be told why. It just follows the reward. Over the following weeks the traffic mix shifted toward the queries, audiences and times of day that produced real pipeline, and cost per qualified lead dropped by half.

Cost per qualified lead, indexed (before = 100)

A few things I would tell anyone attempting this:

  • Keep the raw form fill as a secondary conversion. You still want to see it in reporting. You just do not want the bidding model optimising toward it.
  • Mind the delay. Qualification can take days. Google accepts offline conversions for clicks up to 90 days old, but the longer the lag, the slower the algorithm learns. Grade early where you can, then send a second, higher value conversion when the deal progresses.
  • Watch conversion volume. Smart Bidding needs enough conversions to learn from. If qualified leads are rare, a value based approach that still counts decent leads at a lower value is usually better than a strict yes or no.
  • Agree the grading rules with sales first. If sales and marketing disagree on what a good lead is, the algorithm will faithfully optimise toward whichever definition won the argument.

The actual lesson

Ad platforms are only as smart as the conversion data you feed them. Feeding them bad data is the most expensive mistake in performance marketing, because the platform will happily spend your whole budget getting better at the wrong thing.

The second most expensive mistake is losing the signal entirely, which is what happens when conversions never reach the platform in the first place. That is a different problem with a different fix, and I wrote about it in moving the conversion path out of the browser.

And once the right leads are arriving, the next leak is usually how long they wait for a reply. That one is a 14 hours to 4 seconds story.

You can see the short version of this case, with the data path, in the case studies on the homepage. If your sales team is saying "the leads are rubbish" right now, tell me about it. It is usually fixable.

Keep reading