WritingLead Scoring in HubSpot and Salesforce: Fit, Behavior, and Routing — LinkIT
6 min readcrm-automation, lead-scoring, hubspot, salesforce

Lead Scoring in HubSpot and Salesforce: Fit, Behavior, and Routing

Set up lead scoring in HubSpot and Salesforce with separate fit and behavior models, score decay, routing thresholds, and outcome checks.

Lead scoring combines a prospect’s fit with their behavior to decide who needs sales follow-up. A useful model distinguishes recent buying signals from activity that does not lead to a sale.

Build separate fit and behavior scores, let old activity decay, and connect each score band to a routing action.

Why Lead Scoring Models Fail

The typical failure pattern: a team sets up a scoring model, assigns points for every interaction, watches scores inflate over time, and then discovers that high-scoring contacts are not converting at a higher rate than low-scoring ones. The model gets abandoned or ignored.

The failure is usually one of three things:

Scoring the wrong signals. Email opens and page views show activity, but do not necessarily indicate buying intent. Compare them with demo requests, trial activation, pricing page visits, and feature adoption to find which signals predict conversion in your own data.

No score decay. A contact who visited your site six months ago and has not interacted since should not still have the same score as someone who visited yesterday. Without decay, scores only ever go up, the model saturates, and differentiation between high-intent and low-intent contacts collapses.

No connection between score and action. A score is not useful unless it triggers something. If reaching score threshold 80 does not automatically route the contact to a rep, create a task, or enroll them in a sales sequence, the score exists only as a number in a field.

Building a Multi-Dimensional Scoring Model

Advanced lead scoring separates behavioral score (what has the contact done?) from fit score (does this contact match your ICP?). These are different signals that should not be collapsed into one number.

Fit Score (Demographic / Firmographic)

Fit score is static at first and updates when enrichment data changes. Score based on:

  • Job title and seniority: VP and Director roles get higher scores than junior titles for B2B enterprise plays; invert this for product-led growth tools targeting individual contributors
  • Company size: score based on whether the company falls in your sweet spot headcount range
  • Industry: score based on alignment with your target verticals
  • Technology stack: if they use complementary or adjacent tools that indicate readiness to buy your product

Score bands for fit: poor fit (0–25), acceptable (26–50), good fit (51–75), strong fit (76–100). Route leads in the "strong fit" band even at lower behavioral scores — they may just need a push.

Behavioral Score (Engagement and Intent)

Behavioral score captures what the contact has done and how recently. Weight signals by conversion predictiveness:

High-weight signals (15–25 points each):

  • Demo request submitted
  • Pricing page visited
  • Trial started
  • Feature X activated (if you have product usage data in the CRM)
  • Direct reply to a sales email

Medium-weight signals (5–10 points each):

  • Case study or ROI calculator viewed
  • Webinar attended (not just registered)
  • Proposal document opened
  • Multiple sessions in one week

Low-weight signals (1–3 points each):

  • Blog post viewed
  • Email opened
  • Newsletter subscribed

Do not score email opens heavily. Apple’s Mail Privacy Protection can inflate recorded opens, so they should not be treated as reliable evidence of engagement.

Implementing Score Decay

Score decay reduces a contact’s behavioral score when they show no new activity. Use a native setting or periodic workflow to prevent old interactions from outweighing recent behavior.

In HubSpot: use the "time since last activity" property in a scheduled workflow. Run daily: if time since last email open or form submission is greater than 30 days, reduce behavioral score by 10 points. If time since last activity is greater than 60 days, reduce by an additional 15.

In Salesforce: use a scheduled Apex job or a Flow that runs on a daily schedule. Apply similar reduction logic to the behavioral score field.

Cap the minimum decay at zero — do not let behavioral scores go negative. And exclude contacts in active deals from decay: a contact who is actively negotiating should not lose score just because they have not opened a marketing email recently.

Setting Routing Thresholds

Once you have a two-dimensional model (fit score and behavioral score), build routing logic based on the combination:

  • High fit + high behavior: route directly to a senior AE, create a high-priority task, send a personalized email immediately
  • High fit + low behavior: enroll in a high-touch sales sequence, do not wait for behavior score to reach threshold
  • Low fit + high behavior: route to a lower-tier follow-up sequence, evaluate if the ICP definition needs updating
  • Low fit + low behavior: let nurture automation run without sales involvement

This matrix separates active contacts who fit your target customer profile from those whose needs or company size fall outside it.

Pulling Product Usage Signals Into Your Score

If you have a product with a free trial or freemium tier, usage signals are the highest-intent signals available. A user who has invited three teammates and hit a paywall three times in one week is a better lead than someone who filled out a contact form.

Getting these signals into your CRM requires a product-to-CRM event pipeline. The pattern:

  1. Product emits events (feature used, invitation sent, paywall hit) to an event pipeline — Segment, a custom webhook, or a direct API call
  2. The CRM receives these events and updates the contact record (custom properties on the contact or company object)
  3. Your scoring workflow reads these properties and adjusts the behavioral score accordingly

The score builder can read CRM properties. Getting product events into those properties reliably may require a separate integration.

Testing and Validating the Model

A lead scoring model is a hypothesis until you validate it against outcomes. After six to eight weeks of running the new model:

  • Pull all contacts who reached your MQL threshold
  • Segment by fit score tier
  • Compare SQL conversion rate and win rate across segments

If high-fit contacts convert to SQL at a materially higher rate than low-fit contacts who hit the same behavioral threshold, your fit score is predictive. If not, your fit criteria need recalibration.

Run this analysis quarterly. Sales cycles change, your ICP evolves, and the signals that were predictive 12 months ago may no longer be.

Discuss a lead-scoring integration with LinkIT.