Why a generic CPL benchmark tells you almost nothing
Cost per lead only becomes meaningful once you put it next to two other numbers: your average deal size and your close rate. A $50 cost per lead is a genuinely excellent result if you're closing a fraction of those leads into a $50,000 enterprise contract. The exact same $50 cost per lead is a disaster if you're selling a $200/year tool and can't close enough of them to cover the spend. The raw figure, taken on its own, doesn't tell you whether you're winning or losing money.
That's exactly why a single cross-industry average — the kind of number that shows up in a lot of marketing content — is close to useless for an actual decision. It's averaging together SaaS, professional services, manufacturing, and local businesses; six-figure enterprise sales and self-serve signups; leads bought from a database and leads that walked in the door on their own. Squashing all of that into one figure erases the exact context that would have made it useful.
None of that means cost per lead is a bad metric — it's a genuinely useful one. It just isn't useful as an external number to hit. It's useful as an internal number to track over time, per channel, next to your own close rate and deal size, so you can tell whether a channel is actually working for your business rather than for the business the benchmark happened to be built from.
The rest of this page is about building that internal number properly — what to count, what to leave out, and how to compare channels that have fundamentally different cost structures — rather than handing you another average to chase.
The real formula: total channel cost divided by qualified leads, not raw leads
The most common way teams get cost per lead wrong isn't the math — it's what they're dividing by. A lot of CPL calculations use every raw contact a channel produces: every form fill, every list export, every keyword match. That approach makes channels that generate a large volume of low-quality contacts look artificially cheap, because the denominator is inflated with people who were never going to buy anything.
A channel that hands you 500 unfiltered contacts for $500 looks like a $1 cost per lead. If only 10 of those 500 actually match your ICP and show real intent, your real cost per qualified lead is $50 — fifty times higher than the headline number, and the number that actually matters for deciding whether the channel is worth the spend.
“Qualified” is worth defining precisely for your own business rather than leaving it vague. At minimum it should mean the lead matches your ICP on the criteria that actually predict a sale — company size, role, budget signal, whatever those are for you — and shows some evidence of real intent, not just a passing mention or a curiosity click. The stricter and more specific that definition, the more honest the resulting CPL number becomes.
This is also why comparing two channels by their raw, advertised cost per lead is often misleading. A channel with a higher sticker price per contact but a much higher qualification rate can easily produce a lower cost per qualified lead than a cheaper channel that mostly generates noise. The sticker price is the least useful number in the comparison.
Comparing channels honestly: contact databases, paid ads, and intent-based discovery
Different lead-gen channels don't just have different prices — they have fundamentally different cost structures, and comparing them fairly means accounting for that rather than just lining up sticker prices. A contact-database tool like Apollo has a real per-seat and credit cost that scales with volume: the more contacts you export, enrich, or reveal, the more it costs, regardless of whether any of those contacts ever respond. The cost is tied to access to data, not to outcomes.
Paid ads work differently again — you're paying a cost per click, and that click only sometimes turns into a qualified lead at all, let alone a sale. The cost structure there is tied to attention, and the conversion rate from click to qualified lead can vary a great deal by campaign, targeting, and offer, which makes the effective cost per lead swing much more than the cost per click alone would suggest.
An intent-based discovery tool has a third kind of structure: a flat or usage-based cost, generally lower per-unit than a database or ad spend, but paired with a naturally smaller volume of signal, because it's finding people who are already expressing a specific need rather than everyone who might theoretically fit a target profile. LeadLinx sits in this category — it reads public Reddit activity for buying intent rather than buying access to a contact list or bidding for attention, which is a different trade than either of the other two.
None of these three structures is inherently better — they answer different questions. A database gives you reach across a large addressable market at a scaling cost. Ads give you reach on demand at a cost tied to attention, not intent. Intent-based discovery gives you a smaller number of people who've already told you they have the problem, at a cost that doesn't scale the same way. The right comparison weighs each channel's cost against the qualification rate and deal size it tends to produce, not just against the number on the invoice.
A simple way to calculate your own number
Start with total monthly spend on a single channel, counted honestly. That means the tool or platform cost, plus a reasonable estimate of the time spent on it if the channel is mostly manual — searching, filtering, or reaching out by hand — valued at whatever your own time (or a rep's time) is actually worth per hour. A “free” channel that eats ten hours a week isn't free; it just moves the cost from a line item to a time sink that's easy to under-count.
Divide that total by the number of leads from that channel that actually met your qualification bar last month — not every contact, click, or mention, just the ones that matched your ICP and showed real intent. That gives you cost per qualified lead for that channel, for that month, which is a far more decision-useful number than any external benchmark.
Do this per channel, not as one blended number across everything you're running. A blended average hides which channels are actually earning their spot in your budget and which are being carried by the others. Once you have a per-channel number, you can also divide it by your close rate to get an illustrative cost per customer for that channel — again, a number specific to your own funnel, not one borrowed from somewhere else.
Track this over a few months rather than trusting a single data point. Volume and quality both fluctuate month to month — a slow week, a lucky batch of signal, a seasonal dip — and a channel that looks bad on one month's numbers can look very different once you've got a rolling average to look at instead.
Further reading
Frequently Asked Questions
What is a good cost per lead for B2B?
There isn't one number that's right to target, because it only means anything relative to your deal size and close rate. A $50 cost per lead is cheap for a $50,000 enterprise contract and ruinous for a $200/year tool. Instead of chasing a benchmark, work out what you can afford to pay per qualified lead given your own average deal value and conversion rate, and use that as your target.
Why do cost-per-lead benchmarks vary so much online?
Because they're mixing together completely different industries, deal sizes, and definitions of "lead." A benchmark built from enterprise software sales looks nothing like one built from local services, and a benchmark counting every form-fill looks nothing like one counting only sales-qualified leads. Any single average you find has effectively averaged away the information you actually need.
Should I calculate CPL using all leads or only qualified ones?
Qualified ones, if you want the number to mean anything for a decision. Dividing cost by every raw contact a channel produces makes noisy, low-quality channels look artificially cheap, because volume goes up while relevance doesn't. Dividing by leads that actually match your ICP and show real intent gives you a number you can compare across channels honestly.
How does LeadLinx's pricing compare on a cost-per-lead basis?
LeadLinx starts at $3.99/mo with 100 free credits on signup, so the tool cost itself is low relative to most contact-database or enrichment platforms. But we can't promise you a fixed cost per qualified lead — that number depends on your close rate and how well-targeted your search queries and subreddit choices are, same as any channel. The honest way to find your number is to run the framework in this article on your own account for a month.
Is a lower cost per lead always better?
No — a low CPL on leads that rarely close is worse than a higher CPL on leads that convert reliably, because you're paying less per lead but more per customer. The number worth optimizing is closer to cost per closed deal, or at minimum cost per qualified lead weighted by how often that channel's leads actually convert.
How often should I recalculate cost per lead?
Monthly is a reasonable default for most small teams, since channel costs, lead volume, and lead quality all drift over time. A single month's number can be skewed by a slow week or an unusually good batch of signal, so it's worth tracking a rolling few months per channel rather than reacting to any one data point.