
Traffic is up. Impressions are up. Where are the leads?
That's the question a B2B SaaS client of ours asked on a call this week. It's a fair question, and it usually points at broken tracking. Not this time.
His offline conversion tracking already works. Every qualified lead, every disqualification, every closed deal flows back to Google and LinkedIn correctly, the way it should. The problem sits one level deeper. On the enterprise side of B2B, lead volume in a given month can be thin enough that neither platform has much to learn from, even when the pipes are clean.
That's not a tracking problem. It's a volume problem, and no amount of fixing the pipes between a CRM and an ad account solves it, because the pipes were never broken. There just isn't enough running through them some months.
This week that client and I are going to start testing something I've been circling for about a year, which is feeding the ad accounts a second, much higher volume signal, pulled from a tool his team already owns but has never pointed at the ad accounts. A website visitor identification platform.
Offline conversion tracking is necessary. On its own, it's not always enough.
I've written before about feeding closed deal data back to Google and LinkedIn once sales has qualified or won the account. We run that for every client where it's technically possible, and it's the highest leverage change most accounts can make. It teaches the algorithm what a real buyer looks like instead of what a form fill looks like.
But that fix has a hard floor. It can only train the platform on outcomes that actually happened. In my experience, a Smart Bidding campaign needs somewhere in the range of fifteen to thirty qualified conversions a month before there's enough signal for it to learn anything real. On a long enterprise sales cycle, qualified leads can arrive in the single digits some months. The tracking is doing its job. There just isn't enough of it to work with yet.
That's the gap website visitor identification data is actually good for. Not replacing offline conversions. Supplementing them with volume, from people who match your ICP but haven't converted at all.
Most website visitor identification tools never leave the CRM
Website visitor identification, sometimes called de-anonymization or intent data, works by matching the IP address of an anonymous visitor against a database of known companies and, in some cases, individuals. When it works, someone who never filled out a form shows up in your CRM as somebody from a specific company who was on your pricing page yesterday.
Most teams stop right there. The tool becomes a sales enablement feed. A rep gets an alert, checks whether the company fits, and works the account. That's a real use, worth having on its own.
But it treats the tool as a lead source instead of what I see it as, a stream of ICP signals that shows up before anyone converts. Almost nobody pushes that signal back to Google or LinkedIn (or Meta for that matter), even when their offline conversion tracking is already solid. The volume just sits in a CRM tab that only sales opens.
How the loop actually works
The mechanics are the same shape across most tools in this category, Lead Forensics, Knock2, Warmly, and the newer entrants coming up.
- The tool identifies a visitor, usually at the company level and sometimes down to the individual, from IP data.
- It checks that visitors against your criteria to see if it's an ICP company or individual or not
- It fires a webhook or API payload with what it knows of those ICP individuals; company name, firmographics, pages viewed, and UTM parameters if your tracking passes them through.
- The filtered list gets pushed into your CRM, and for our case, Google and LinkedIn Ads as a qualified ICP site visitor conversion event.
- You use that conversion event as an optimization target. Layer it onto Performance Max or Demand Gen, or seed a lookalike from it.
Feed a platform a signal for what a real buyer looks like, and you've given it a pattern to go find more of.
What I've seen this work on, and where it fell apart
I ran a version of this system with an enterprise software reseller / implementation partner a few years ago, to solve exactly this volume problem. A company selling high ticket implementation services on a genuinely long sales cycle.
Before we fed visitor identification data back into Google Ads, they were surfacing a small handful of qualified site visitors a month, an extreme version of the same thin volume problem, one layer earlier. A few months after we started pushing that data back as a conversion actions, the volume of qualified visitors the platform was surfacing had grown by an order of magnitude. Nothing else about the account changed. Same budget, same keywords, same landing pages. The only thing that changed was what we told Google to look for.
I also ran it on a B2B2C SaaS company. It did not work. Their traffic mixed heavy consumer visits with business visits, and the visitor identification tool couldn't cleanly separate the two. We ended up feeding the ad platform a blend of real buyers and people who worked at one of their ICP businesses, but were not in a relevant role in the company and were simply consumers. If a meaningful share of your traffic isn't your real audience, fix that segmentation problem before you build this loop. Otherwise you're just teaching the algorithm to find more of the wrong mix, faster.
These tools are not that accurate, use them anyway
I asked a client this week how accurate he felt his visitor identification tool actually was. His answer, paraphrased only slightly, was that none of them are all that great. He's right, and it matches what I've seen across every tool in this category I've used so far. None of them nail individual level identification consistently. Company level matching is more reliable, but even that carries real error, especially at ISPs and hosting providers that share IP ranges across unrelated businesses.
That's the wrong bar to judge this by. You don't need the tool to be right about every visitor. You need it to be directionally right often enough that the pattern it feeds the ad platform points toward your real ICP instead of away from it. A platform learning from a list that's seventy percent accurate on real buyers is still learning something true. A platform that only ever sees form fills is often learning from somewhere a lot less accurate than that, because a form fill rewards whoever will click a button, not whoever will eventually sign a contract.
Before you build this, check three things
This only works as an addition. If your CRM and ad accounts aren't already talking to each other through offline conversions, fix that first, it's the higher leverage move. Visitor identification data makes a working loop bigger. It does not fix a broken one.
Most teams who try this and give up hit one of three walls after that.
Your visitor identification tool needs to expose a webhook or an API, not just a dashboard. If the only output is a list you export by hand once a week, this loop will not run often enough to matter. Check what your current plan actually includes before you assume the integration exists.
You need an ICP filter you can apply automatically, before anything reaches the ad platform. Sending every identified visitor regardless of fit defeats the purpose. You would just be training the algorithm on anyone who visited the site, the same mistake as optimizing for form fills, one layer earlier.
You need it to capture url parameters, like UTMS and Click IDs. Ideally you're able to capture the Google and Meta clicks IDs from traffic coming from those paid sources, otherwise you're reliant on the data you're gathering matching their, which doesn't work all that well. We want to match as many individuals as possible. The whole reason we're doing this is because we have thin data, so if you're going to rely on Google's Enhanced Conversions to match, you're going to miss out on a substantial amount of conversion data.
The point isn't the tool, it's what you do with the data
Website visitor identification software gets sold as a sales tool, and used as one. That's fine, it's a legitimate use on its own. But if your team only pipes that data into alerts and CRM records, you're sitting on a training signal for your ad accounts that almost nobody else in your market is using.
If you want help building this loop, or you're not sure whether your CRM and ad accounts could support it, we run a free system review and trace exactly where a signal like this gets stuck before it reaches your ad platform. Read more about how we think about the Reverse Optimization Trap, or see what closing that loop looks like across an account.
Sources
- Google Ads Help, About Customer Match
- LinkedIn Marketing Solutions Help, Target audience size best practices

About the author
Kyle Rutledge
Owner
I’m Kyle, founder of Gradari, a paid ads lead generation agency that helps B2B and SaaS companies stop wasting budget on low-quality leads and start building systems that actually drive growth.
