Skip to content
All work

Systems

A lead scoring model built on fit and behavior

A HubSpot score that separates who the company is from what the person is doing, with a handoff threshold agreed with sales.
  • HubSpot
  • Salesforce
  • ZoomInfo

Summary

Challenge
In a long, committee-driven sale, a form fill says little on its own. A download from outside the market and a pricing-page visit from a target account look alike until something tells them apart.
What I built
A firmographic fit grade plus an engagement score in HubSpot, an MQL threshold agreed with sales, 30-day decay with a full reset on re-engagement, and routing by tier on the Salesforce Lead object.
Result
Grade and score decided who worked a lead and how, from fields both teams could read.
Role
Designed the model and built it in HubSpot and Salesforce; set the threshold with sales and tuned it from closed-loop results
With
Sales leadership and the two BDRs who worked the queue
Status
Ran in production at Anova

Part of the lead-to-opportunity system. The fit half comes from the account universe.

The situation

A form fill says little on its own.

In a technical sale with a long, consultative cycle and a buying committee on the other side, most early signals are ambiguous. A content download from someone outside the market and a pricing-page visit from a buyer at a target account arrive as the same kind of record.

Without a shared score, lead quality becomes a judgment made record by record, and campaign results are hard to read in pipeline terms. A company selling a technical product into long cycles cannot hand every form fill to a seller.

The decision

Score who the company is and what the person does, separately.

I split the score into two halves and made both visible. Fit answers whether the company is worth selling to at all. Engagement answers whether this person is doing something that suggests a buying conversation now. A lead needs both, and a seller reading the record should be able to see which half is carrying it.

Three more decisions followed. The threshold would be set with sales, because a score only works if the people receiving the leads agree on what it means. Engagement would decay, because in a cycle measured in quarters, last month's webinar says little about this month's intent. And routing would live in Salesforce, where the sellers work, while scoring lived in HubSpot, where the signals land.

What I built

Six pieces, one number.

Fit and engagement are built separately, combined at the threshold, and read by routing and reporting from the same fields.

  • Fit: the firmographic grade

    The company record carries the fit: industry from SIC and NAICS codes mapped onto the record, company size, and the A–D account tier from the account universe. Workflows push company-level fit down to every associated contact, so a new contact at a target account arrives already graded.

    Where the tiers came from
  • Engagement: what the person does

    Points for the signals that predict a conversation: high-intent web pages, email engagement, content downloads, form fills and campaign responses, plus HubSpot intent and ZoomInfo intent at the account level.

  • A threshold that moves

    A lead becomes an MQL when its score crosses a threshold agreed with sales. The threshold is not fixed. Closed-loop reporting shows which MQLs became pipeline, and moving the threshold is one of the levers on how warm a lead is when it reaches a seller.

  • Decay and re-engagement

    Engagement decays over a 30-day window, so old activity stops reading as current intent. When a lead re-engages, the window resets in full and the score reflects the new activity.

  • Alerts and routing

    At the threshold, the owner is alerted in Slack and by email, and routing on the Salesforce Lead object assigns the lead by tier. HubSpot stays the upstream source for enrichment and scoring; Salesforce is where the lead is worked.

  • One number in every report

    Score, grade and tier are properties, so routing, dashboards and campaign reports all read the same fields. Campaign performance could be read by account and by tier instead of by raw lead count.

The model

Fit and engagement combine, decay and hand off at the threshold.

Illustrative Fit and engagement stay separate inputs, so a seller can see which half carried a lead over the line. Decay keeps last month's activity from reading as current intent; at the threshold the owner is alerted and the lead routes in Salesforce.

The handoff

From signal to seller, step by step.

  1. A signal lands. A visit to a high-intent page, an email click, a download, a form fill or an intent spike adds engagement points to the person.
  2. The company is graded. Fit comes from the company record: industry, size and account tier, pushed down to every contact at that company.
  3. The threshold is crossed. The lead becomes an MQL, with the grade and the engagement history that got it there on the record.
  4. The owner hears about it. Slack and email alerts go to the owner the moment the threshold is crossed, not at the next list pull.
  5. Salesforce assigns it. Routing on the Lead object puts it in the right queue by tier, where the BDR sees it in ranked order.
  6. Reporting reads the same fields. The dashboards count MQLs, SQLs and pipeline by the same score and grade the routing used.

How it ran

A number both teams could read.

Once the score lived on the record, conversations about lead quality started from the same data. A lead that reached a seller carried its grade and its engagement history, and the seller could see why it had arrived. A good-fit account that had gone quiet and an engaged lead outside the profile looked different on the record.

The model sat between two other builds. The account universe supplied the fit half, and the account tiers set how much coverage each lead received once it qualified.

Result

Grade and score decided who worked a lead, and how.

The handoff to sales ran on a number both teams could see and had agreed to, and campaign performance could be read by account and tier instead of by raw lead count.

Takeaways

What carries over.

  • Show both halves of the score on the record. Sellers trust a number they can take apart.
  • Agree the threshold with sales before launch, then treat it as a lever: revisit it where pipeline is reviewed.
  • Decay is required in a long cycle. Without it, scores only go up.

The stack

What it ran on.

Scoring and automation

  • HubSpot Marketing Hub Enterprise
  • Lead scoring
  • Workflows
  • Lifecycle and lead status

Routing

  • Salesforce Lead object
  • Assignment by tier
  • Slack and email alerts

Data

  • ZoomInfo enrichment
  • ZoomInfo intent
  • HubSpot intent
  • SIC and NAICS mapping

Open to senior and manager-level roles

Need the demand engine built, or someone to run it?

Demand generation, marketing operations and RevOps roles in complex B2B, remote or hybrid from Omaha. I also take on a small number of scoped builds.