B2B lead scoring: models, examples, and best practices

B2B lead scoring explained: the three model types, a worked example that adds up, and why most models fail on their inputs, not the math.

Photo of Utku Zihnioglu

By

ยท CEO & co-founder

Updated Oct 16, 2026

ยท 11 min read

Worked example fixed to add up, score bands added, FAQ on calculating a lead score added.

Blog cover: Lead scores fail on inputs, not math, beside the HubSpot, Salesforce, and PostHog logos

Your rep just spent 45 minutes on a demo with a two-person agency that signed up in March and never activated. Meanwhile a VP of operations at a 120-person SaaS company logged in four times this week, invited a teammate, and hit your pricing page twice. Nobody called her. B2B lead scoring exists to prevent exactly this: it ranks every lead by how likely they are to buy, judged on fit and intent, so your team works the list from the top.

To see that ranking on your own pipeline first, score your own leads free and check the reasons against what you already know.

What is B2B lead scoring, and why do most models fail?

A lead score is one number that answers two questions at once. Does this lead look like your best customers, and are they acting like someone about to buy? The textbook terms are explicit and implicit data: what you know about the lead, and what they did.

A director at a 50-person SaaS company who created a workspace and viewed pricing outranks someone with the perfect job title who downloaded a whitepaper six months ago and vanished. In B2B the lead is a person at a company, so the score has to judge both: whether the account fits and whether the person is moving.

A lead score is for people who have not bought yet. Accounts that already pay get a different number, a customer health score, which tracks whether they are likely to renew.

Without a score, sales defaults to recency. Whoever signed up last gets the call, along with whoever the CEO forwarded. That holds up at 20 leads a month. At 200 it starts to leak, and at 2,000 your best leads go cold in the queue while reps demo to agencies outside your market.

Here is the part the definition leaves out: in practice, most lead scoring projects die within a quarter, and almost never because the point values were wrong. Hold that thought. The reason matters more than the taxonomy.

B2B lead scoring models: demographic, behavioral, and predictive

Every model draws on the same three approaches. The differences come down to what gets measured and who sets the weights.

Demographic scoring (firmographic, when you score accounts) assigns points for who the lead is: job title, company size, industry, funding stage. If 80% of your customers are B2B SaaS companies with 20 to 200 employees, a lead matching that profile starts higher. Intent never enters the equation.

Behavioral scoring is the intent half. Signups, feature activation, pricing page visits, demo requests, email replies: these earn points for what the lead does, and a lead who invited two teammates is telling you something no firmographic field can.

Predictive lead scoring flips the weighting problem around. Instead of you deciding that a pricing page visit is worth 5 points, the model derives weights from the attributes your closed-won deals shared. It learns from your closed deals, so it needs a lot of them. With enterprise predictive tools the pattern holds: strong when the history exists, noise when it doesn't.

Scoring approach

Best for

Weakness

Demographic

Filtering out poor-fit leads early

Says nothing about intent

Behavioral

Catching in-market leads while warm

Blind to company fit

Predictive

Teams with a long closed-won history

Needs history most teams lack

Most teams should start with a combined B2B lead scoring model that scores fit and engagement together: fit points plus intent points on a 0 to 100 scale, where 70 or above is the MQL line and goes to sales the same day, 40 to 69 enters nurture, and anything under 40 waits for a new signal.

One opinion while we're here. The MQL threshold debate that eats so many pipeline meetings is rarely about the model. It's a negotiation over whose numbers look good this quarter, and no weighting scheme fixes politics. Anyway.

The data a lead scoring model actually needs

Now the reason lead scoring models die. Write down the inputs a combined model wants: company size, industry, product usage, billing status, support history, email engagement. Then write down where each one lives.

Billing status lives in Stripe. Usage sits with your product database or an analytics tool like PostHog, ticket history with the support desk, and firmographics may not exist anywhere yet. The CRM, the one place the score is supposed to live, holds a job title, an email, and a last-activity date.

So teams build the model with the fields the CRM actually has. The scores come out flat, sales checks them against instinct a few times, finds them wrong, and quietly goes back to recency. The model was fine. The data was incomplete.

The standard fix is a warehouse project: pipe everything into Snowflake, model it in SQL, push scores back to the CRM with a sync job. If you employ a data engineer, that is a real path. Most 30-person companies do not, and a scoring project that takes a quarter to stand up loses its sponsor before it ships.

The cheap version fails differently. Picture a CRM property fed by a Sunday-night CSV export. It is stale by Tuesday and ignored by the end of the month. The logic was never the problem; nobody trusted a number that old.

A B2B lead scoring example, worked through with AI

There is another way to assemble the inputs, and it runs in the opposite direction: instead of pushing every signal into the CRM and building rules inside it, pull your CRM contacts in for enrichment. Each lead then picks up firmographics from a waterfall of data sources, trial and plan status from billing, usage from product analytics, and ticket text from the support desk.

Once the evidence is in one place, AI can do something per-lead formulas cannot: reason across all of it at once. It weighs every lead against your ICP definition and writes two things per lead, a score and a reason. That is what AI lead scoring should mean in practice: not a black-box grade, but a ranked list where every lead carries its evidence.

Here is a worked example, because this is where every explainer goes vague. Say your ICP is product-led B2B SaaS between 20 and 200 people. An AI pass does not need the points written down, but writing them out shows what a score should add up to, which is also how you check one. The lead scoring template has this rubric ready to copy.

Signal

Source

Points

Headcount between 20 and 200

Data source

+20

Raised funding in the last 18 months

Data source

+15

Started a paid-plan trial

Your billing system

+25

3+ active users this week

Product analytics

+20

Ticket asks about SSO or API limits

Support desk

+10

No login in 30 days

Product analytics

-20

The formula is the sum of the points a lead shows, kept between 0 and 100:

lead score = fit points + intent points - decay points
lead score = fit points + intent points - decay points
lead score = fit points + intent points - decay points

Three leads from the same list:

Lead

Signals it shows

Score

Lead A

Right size, trial started, 3+ active users, SSO ticket

20 + 25 + 20 + 10 = 75

Lead B

Right size, trial started, nothing else yet

20 + 25 = 45

Lead C

Right size, no login in 30 days

20 - 20 = 0

Lead A arrives with its reason attached: "in a trial, usage climbing, asked about SSO." The bands then decide what happens next:

Score

Band

What happens

70 to 100

Work it now

A rep calls the same day

40 to 69

Nurture

A sequence and product nudges until a new signal

0 to 39

Not yet

Nobody calls; watch for a change

Reps will argue with a bare number all day. A stated reason they can check in ten seconds, and when a score is wrong, the reason shows which input to fix. Note the negative signal too: without decay, the pipeline fills with leads that peaked in April. The same pass works as account scoring: swap leads for accounts and score against the same ICP.

The spreadsheet-plus-ChatGPT version of this is where most founders start, and it genuinely works at fifty leads. Past a few hundred it collapses: the chat cannot hold the whole list, the weights live in a prompt you keep re-pasting, and nothing re-runs when a lead starts a trial a week later. What changes when you research every account at that scale is covered in AI lead research at scale, and scoring a whole market rather than a pipeline is the job of a ranked TAM list.

B2B lead scoring best practices: write the score back to your CRM

Lead scoring only pays off when the score reaches the person holding the phone, and that person lives in the CRM. The last step writes both fields back to the record: the score into a number property reps sort by, the justification into a text property they see when the record opens. Create both properties in the CRM once, then map them. Route from there: high scores to a rep's queue, product qualified leads into a fast lane, everything else into nurture.

Write-back is also what keeps the score alive. When billing shows a lead starting a trial, the next scoring pass moves the number and rewrites the reason, and the next export carries both to the CRM. We cover the CRM-specific setup separately for HubSpot lead scoring and Salesforce lead scoring. Both hold external scores happily; neither can compute one from data it cannot see.

The rest of the B2B lead scoring best practices fall out of everything above:

  • Score fit and intent together. Either half on its own puts the wrong leads at the top.

  • Subtract points when a lead goes quiet, so a lead that peaked in April does not still lead the queue in June.

  • Write a reason beside every score. Reps check a reason in seconds and argue with a bare number for weeks.

  • Put the score on the CRM record reps already open, not in a report nobody visits.

  • Re-score when the inputs change. A trial start or a new support ticket should move the number the same week.

Oneprofile runs this loop. Your CRM contacts load in and go through data enrichment from data sources and from your own billing, support, and product tools (142 integrations read data in, write it back, or both). The ICP scorer rates every lead against your ICP with a written reason, at 3 credits a scored lead, and an AI lead scoring agent you build can read the whole record, billing and usage included. An export writes score and reason back to the CRM fields you mapped. The Free plan renews 200 credits a month, enough for 66 ICP scores, with up to 3 integrations, 3 tables and 100 rows per table, and the Team plan starts at $20 a month for 1,000 credits.

To test the premise before touching any tool, pull your last 50 closed-won deals into a lead list built from a CRM export, write down the five buying signals they shared, and count how many of those signals your CRM can currently see. That gap is your scoring project. Close it, and the ranking mostly takes care of itself. When you would rather not count by hand, score your leads free with the reasons written down.

Do this in Oneprofile

A score and a reason on every lead

The ICP scorer rates each lead 0 to 100 against your ICP, places it strong, possible, or poor, and names the facts that drove it, for 3 credits a scored lead.

  • HubSpot logo
  • Salesforce logo
  • Stripe logo
  • PostHog logo

B2B lead scoring: common questions

What is lead scoring in B2B sales?

B2B lead scoring ranks leads by how likely they are to buy. It combines fit, such as company size, industry, and role, with intent, such as signups, usage, and pricing page visits, so reps call the highest scores first.

What is the difference between rules-based and AI lead scoring?

Rules-based scoring adds fixed points per attribute and needs manual reweighting as your ICP shifts. AI lead scoring drops the point-keeping: it scores every lead from 0 to 100 against your written ICP, and writes a short justification, so you can see why each lead ranked where it did.

What data does a B2B lead scoring model need?

Three kinds: fit data about the person and company (job title, company size, industry), behavioral data (product usage, page views, email replies), and transactional data (billing status, plan tier, purchase history). In B2B most of it lives outside the CRM.

Do I need a data warehouse for lead scoring?

No. A warehouse pipeline is one way to combine the inputs, but Oneprofile can read your CRM, billing, support, and product tools directly, score every lead with AI, and write the results back to the CRM without SQL or a data engineer.

How do you calculate a lead score?

Add the points for each fit and intent signal a lead shows, subtract points for negative signals, and keep the result between 0 and 100. A lead in a paid-plan trial (+25) at the right size (+20) with three active users (+20) and an SSO ticket (+10) scores 75.

What are the best practices for B2B lead scoring?

Score fit and intent together, subtract points when a lead goes quiet, and write a reason beside every score. Put both on the CRM record reps already open, and check the model against your last 50 closed-won deals before you trust it.

About this article

Photo of Utku Zihnioglu

Utku Zihnioglu

CEO & co-founder

Serial entrepreneur who built infrastructure companies handling billions of requests. Now leads engineering at Oneprofile, which finds the people worth talking to, researches each one, and follows up until they reply.

Drafted with AI from our product docs and code. Utku Zihnioglu answers for what it says.

Score every lead with its reason

AI scores each lead 0 to 100 against your ICP and writes down why.

Free plan: 200 credits a month, 3 integrations, no card

Read next

How to identify product qualified leads (PQLs)

Score every lead with its reason

AI scores each lead 0 to 100 against your ICP and writes down why.

Free plan: 200 credits a month, 3 integrations, no card

Read next

How to identify product qualified leads (PQLs)