[object Object]

A team turns on lead scoring with default rules, watches the score column populate, and never looks at it again. Three quarters later the score has zero correlation with conversion and sales ignores it. Lead scoring is one of those features that takes a weekend to set up and a year of discipline to make useful. The scoring logic is the easy part; the calibration loop is what separates portals where scoring drives action from portals where it does not.

Predictive vs manual

Manual scoring:
  Rule-based, you assign points per signal
  Available on Marketing Hub Pro+
  Transparent: you can explain any score
  Right starting point for most teams

Predictive scoring:
  ML-based, HubSpot trains on your historical data
  Marketing Hub Enterprise
  Higher accuracy when you have 1000+ historical conversions
  Black box: harder to explain individual scores

Start manual. You control the logic and reps trust scores they understand. Add predictive once you have a baseline to compare against.

Multiple score properties, not one composite

A single number reduces information. Build separate scores per dimension and a composite for routing decisions:

Property: fit_score
  Industry match            +20
  Company size in range     +15
  Geography in target       +10
  Has compliance need       +10

Property: engagement_score
  Form submission           +10 per
  Pricing page visit        +5 per
  Demo request              +25
  Email reply               +15
  Meeting attended          +20

Property: composite_score
  Calculated: 0.6*fit + 0.4*engagement

Reports filter on the right dimension for the question. Sales asks about engagement; marketing asks about fit; routing uses composite.

Workflow triggers on score bands

Use bands rather than hairline cutoffs. A contact at 59 should not be treated radically differently from a contact at 61:

Composite < 30        -> nurture only
Composite 30-49       -> sales-aware nurture, no SDR action
Composite 50-69       -> SDR cadence, low priority queue
Composite 70-89       -> SDR cadence, high priority queue
Composite 90+         -> AE direct routing

Set workflow triggers on band entry. Reps see priority changes; nurture programs adjust automatically.

Engagement score decay

A contact engaged 18 months ago should not score the same as one engaged last week. Decay engagement points over time:

Workflow: Decay engagement score
  Trigger: scheduled, daily
  Action: for each contact with engagement_score > 0
    multiplier = 0.99 (loses 1% per day)
    new_score = max(0, engagement_score * multiplier)

Half-life of about 70 days fits most B2B cycles. Faster for high-velocity SMB; slower for long enterprise cycles.

Calibration loop

Quarterly, pull the actual conversion rate by score band:

Score band  Count  Converted to SQL  Conversion rate
0-29         8200    98               1.2%
30-49        2300    140              6.1%
50-69         800    180              22.5%
70-89         220    122              55.5%
90+            65    51               78.5%

If a band’s conversion rate jumps unexpectedly, investigate. If 80 percent of leads land above MQL threshold, your rules over-score. If 5 percent do, you under-score. Adjust rules and re-baseline.

Negative scoring

Subtract for disqualifiers, do not just exclude:

Free email domain         -10
Job title in [intern, student] -15
Country not served        -50
Existing customer         skip workflow entirely

Negative scoring keeps the data while keeping the queue clean. Excluded contacts vanish from analysis; subtracted ones stay visible.

Score-driven routing

Routing logic:
  Composite >= 90 + Industry = Enterprise -> Strategic AE
  Composite >= 90 + Industry = Mid-market -> Mid-market AE
  Composite 70-89 -> SDR queue, named priority
  Composite < 70 -> Marketing nurture

Document the routing in one shared sheet so leadership can audit the path any lead took.

What to do this week

Build separate fit and engagement scores if you do not have them, audit current score distribution against actual conversion, add decay if engagement is static, and schedule the next quarterly calibration before reviewing the deck for leadership.

[object Object]
Share