That last point is where most scoring projects die. The model gets built, the field appears in the CRM, and the sales team keeps calling whoever called them last.
In short
- A lead score is a prioritization tool, not a truth machine. Its only job is to change the order of the queue.
- Fit and behavior are different questions. Keep them in two columns and you can tell "perfect customer who ignored us" apart from "curious reader who will never buy."
- Weights come from lift, not from intuition: compare the conversion rate of leads with an attribute against the base rate of all leads.
- Recency matters. A demo request from March is not a demo request from yesterday, so scores need decay.
- Predictive scoring needs history. Under a few dozen closed-won and closed-lost records, rules you can explain beat a model you cannot.
- A score without a calibration loop rots. Check monthly whether high scores actually convert better.
What a lead score is actually for
Every revenue team has more leads than attention. Scoring is how you allocate the scarce thing. Which means a score is only worth building if you can complete this sentence: "When the score is above X, the system does Y."
In MitHub's revenue engineering method you find this out by following the money backwards. If the map of your process shows that only 60% of leads are ever contacted, the first question is not "which leads are best?" but "why are 40% never touched?" Scoring solves the order problem. It does not solve the capacity problem, and it never solves the speed problem — that belongs to speed to lead and lead routing.
Fit vs behavior: two columns, not one number
The major CRMs converged on the same distinction. HubSpot's scoring tool builds engagement scores from a contact's actions, fit scores from property values, and combined scores that mix both, with criteria grouped into event groups (behavior, within a timeframe and frequency) and property groups (attributes) (HubSpot).
Collapsing both into a single number destroys information. Consider two leads at 70 points:
| Fit | Behavior | What it means | Right action | |
|---|---|---|---|---|
| Lead A | 60 / 100 | 10 / 100 | Looks exactly like your best customers, has done almost nothing | Outbound: a call, not a nurture email |
| Lead B | 10 / 100 | 60 / 100 | Reads everything, but is a student or a competitor | Self-serve content, no rep time |
Same total, opposite plays. Keep the two numbers visible and the sales team can read the record in two seconds.
Setting the weights: the lift table
Here is the part most teams skip. Point values should come from what actually happened.
The method: take a closed period (six months is usually enough), count the leads, count how many became customers, and compute the base rate. Then compute the rate again for each attribute and divide.
The following table is a hypothetical example built to show the arithmetic, not a MitHub result. Imagine 1,200 leads that reached a final outcome, of which 96 became customers — a base rate of 8%.
| Attribute | Leads | Customers | Rate | Lift vs 8% base |
|---|---|---|---|---|
| Company has 50–500 employees | 400 | 48 | 12.0% | 1.50× |
| Company has fewer than 50 employees | 600 | 30 | 5.0% | 0.63× |
| Company has more than 500 employees | 200 | 18 | 9.0% | 1.13× |
| Requested a demo | 150 | 36 | 24.0% | 3.00× |
| Visited pricing 3+ times | 250 | 30 | 12.0% | 1.50× |
| Only downloaded a guide | 500 | 15 | 3.0% | 0.38× |
(The three company-size rows are mutually exclusive and add back to 1,200 leads and 96 customers; the behavior rows overlap with them.)
Now convert lift into points with a rule you write down once:
- Lift ≥ 2.0× → +20 points
- Lift 1.2–1.9× → +10 points
- Lift 0.8–1.19× → 0 points
- Lift < 0.8× → −10 points
In this example: demo request +20, 50–500 employees +10, pricing visits +10, more than 500 employees 0, fewer than 50 employees −10, guide-only −10.
Two things happen when you do this. First, the argument in the room ends, because the numbers are on the table. Second, you usually discover that a favorite signal — the ebook download, the webinar attendance — converts below the base rate and has been inflating scores for years.
A caution about small samples
A 3.00× lift computed on 150 leads is a suggestion, not a law. If a segment has fewer than roughly 30 outcomes, treat the number as directional and say so out loud. Overfitting a scoring model to 12 closed deals is how teams end up trusting noise.
Decay: scores must forget
Behavior ages. A pricing page visit from nine months ago says almost nothing about this week. HubSpot's tool handles this with score decay — for example, halving a score's contribution every three months (HubSpot).
MitHub's rule of thumb: fit scores do not decay, behavior scores always do. A company's industry and headcount are still true next quarter. Their curiosity is not.
Thresholds and the action they trigger
A score becomes useful the moment it is banded and each band is wired to something. Scoring tools support this directly: HubSpot creates threshold properties with labels such as High, Medium and Low over ranges you define (HubSpot).
An example banding, again hypothetical:
| Band | Score | Action | Owner |
|---|---|---|---|
| A | 70+ | Call within 5 minutes; route to a senior rep | Sales |
| B | 40–69 | AI voice agent calls and qualifies; transfers if interested | Automation |
| C | 15–39 | Email sequence only; re-score on next behavior | Marketing |
| D | < 15 | No human touch; newsletter | — |
Notice that band B is where AI voice for sales and automated workflows earn their keep: the leads a human team would never get to anyway.
Rules vs predictive models
Vendors now ship machine-learning scores alongside rules. HubSpot's predictive lead scoring produces a "likelihood to close" within 90 days and a contact priority tier, and describes the model as a black box — inputs and outputs are known, the transformation is not — available on Enterprise tiers (HubSpot). Dynamics 365 Sales requires at least 40 qualified and 40 disqualified leads created and closed inside the training window before a model can even be created, offers windows from three months to two years, can retrain every 15 days, and warns that a model below its AUC accuracy threshold is "not ready to publish" (Microsoft Learn).
Read those requirements as a decision rule:
| Situation | Use |
|---|---|
| Fewer than ~100 closed outcomes | Rules from a lift table. You need explainability, not sophistication. |
| Hundreds of clean closed outcomes, stable offer | Predictive model, with a rules-based score kept visible next to it |
| Messy or half-empty CRM data | Neither. Fix the CRM architecture first. |
A model trained on bad stage data will confidently rank bad data.
MitHub's scoring contract
Before a score goes live, MitHub asks for five commitments. Write them on one page and get the sales owner to agree.
- Named action. Every band triggers a specific action, with an owner and a deadline.
- Two columns. Fit and behavior are stored separately, even if a combined score is also shown.
- Evidence per point. Every weight traces back to a lift number, or it is labelled "assumption" until measured.
- Decay policy. Behavior signals have a stated half-life.
- Review date. A person and a date for the next calibration. No orphan models.
The feedback loop nobody runs
A scoring model is a hypothesis. The calibration check is one table, run monthly: score band on the left, what actually happened on the right.
| Band at first contact | Leads | Became customers | Win rate |
|---|---|---|---|
| A (70+) | 120 | 22 | 18.3% |
| B (40–69) | 300 | 27 | 9.0% |
| C (15–39) | 500 | 20 | 4.0% |
| D (< 15) | 400 | 6 | 1.5% |
This hypothetical table passes the only test that matters: the win rate falls monotonically as the score falls. If B ever outperforms A, the model is actively misdirecting your team's attention and should be paused, not tuned.
This is the operate loop applied to scoring: observe → hypothesis → build → measure → learn → adjust.
Seven ways lead scoring goes wrong
- Scoring without capacity. If nobody works the A band within an hour, the ranking is theatre.
- Points for being alive. Awarding points for opening any email makes everyone medium.
- One number. Fit and behavior collapsed together, so nobody can read the record.
- No negative points. Real models need disqualifiers: wrong country, competitor domain, free-email-only, out of service area.
- Scores that never decay. Old curiosity outranks today's demo request.
- Copying someone else's model. Their base rates are not yours.
- No owner. The score drifts for a year and then everyone quietly ignores it.
Start here
You can build a defensible first version in an afternoon:
- Export the last six months of leads with their final outcome.
- Compute the base conversion rate.
- Pick five attributes and five behaviors. Compute the rate and the lift for each.
- Convert lift to points with a stated rule.
- Band the score and write the action for each band.
- Put a review date in the calendar.
If step 1 is impossible because outcomes are not recorded, you have just found something more valuable than a score: a hole in your data model. Fix that first with CRM architecture, then come back. And if you want to enrich the fit side with external data before scoring, Clay is where most revenue engineers start.
Scoring is one system in a chain: score, route, contact fast, record the outcome, learn. The Faculty of Revenue Reverse Engineering teaches the whole chain, starting with following the money so you know which link is actually leaking.
