A rep opens a HubSpot contact with a score of 82 and cannot say why it is 82. The number sits on the record. It assigns no owner, creates no task, and no report uses it.
That is the usual state of lead scoring: the score exists and nothing depends on it.
The short answer: build separate fit and engagement scores, take the points from your own conversion data, and make every score trigger something: an owner, a task, an email, a report. Score companies and deals as well as contacts, and merge duplicate companies first.
The examples below come from HubSpot portals I have worked on. For the native setup steps, use Oneprofile's HubSpot lead scoring guide. This post covers what comes after: separate scores, company and deal scores, actions, and reporting.
What HubSpot can score
HubSpot's lead scoring tool needs a Professional or Enterprise subscription. What you can score depends on the Hub:
Object | Score types | Hub required |
|---|---|---|
Contacts | Engagement, fit, combined | Marketing Hub |
Companies | Engagement, fit, combined | Marketing Hub or Sales Hub |
Deals | Combined only | Sales Hub |
AI-built contact scores need Marketing Hub Enterprise. Every score creates a property. A combined score creates three (total, engagement, and fit), and a threshold adds one more. You can use all of them in segments, workflows, and reports.
Checked against HubSpot's lead scoring documentation on October 18, 2026.
Keep fit and engagement apart
A single blended number hides the two things a rep needs to know: could this lead buy, and is it acting now?
A B2B SaaS company I worked with needed to score two objects, companies and contacts, and the logic was different for each. I built four scores: a fit score from profile data and an engagement score from activity, each on companies and on contacts.
Fit score | Engagement score | |
|---|---|---|
Question | Does this match our ideal customer? | Is this person acting now? |
Built from | Properties: company size, industry, job title | Actions: page views, email clicks, form fills |
Changes | Only when the data changes | Constantly |
Decay | Not needed | Yes: 1, 3, 6, or 12 months in HubSpot |
Decides | Who deserves a human | When to reach out |
For the models behind these two scores, see Oneprofile's lead scoring explainer.
Take the points from conversion data
Do not guess the points. Build a report of conversion and close rates by attribute: company size, industry, source. If companies with 500+ employees convert 20% better than the rest, that criterion earns more points than one that converts the same.
These are example rules. Replace the points with your own conversion data.
Rule | Points |
|---|---|
Company has 500+ employees | +20 |
Industry is in your best-converting segment | +15 |
Phone number is known | +10 |
Company name is known | +5 |
Job title is known | +2 |
Viewed the contact page | +10 |
Viewed a case study page | +10 |
Clicked a link in an outbound email | +8 |
Clicked a link in a nurture email | +3 |
Opened a nurture email | +2 |
Marketing email bounced | -100 |
Opted out of marketing email | -10 |
The first five rules build the fit score. The next five build the engagement score. The last two are negative: HubSpot allows negative points and score limits, and a bounced email should push a contact out of the sales-ready group.
One contact, scored: a 600-person company in a target industry, with a known phone number, company name, and job title. Fit is 20 + 15 + 10 + 5 + 2 = 52. The contact viewed the contact page and a case study, and clicked an outbound email: engagement is 10 + 10 + 8 = 28. With example thresholds of 40 fit and 25 engagement, the contact is sales-ready. If the next email bounces, engagement drops by 100 and the contact leaves the group.
Make the score trigger something
Add a threshold to each score, then enroll records in a workflow when both pass. In the SaaS portal, scores triggered record updates, emails, reminders, tasks, and owner assignments. The pattern is a simple matrix:
High fit, high engagement: assign an owner and create a task.
High fit, low engagement: send a nurture email and set a reminder for the owner.
Low fit, high engagement: keep in marketing nurture, with no task.
Bounced or opted out: exclude from outreach.
Report on the score by source
Before the scores, management could not easily see which sources brought the best-fit leads. In the same portal I built scoring reports by source, channel, segment, date, and location. Marketing and management could then see which actions brought in qualified prospects, not only which brought leads.
Score deals when you run several pipelines
A company with three brands, each with its own pipeline, had reps who could not tell which open deals deserved attention first. I built the score in four phases:
Go live fast: I rolled out HubSpot's default AI score so the team had something to use right away.
Ask sales: I asked four questions. Which deals feel stronger from the start? Which close faster? Which usually stall? What makes you trust or distrust a deal early?
Rebuild the score: I rebuilt it from those answers and showed it on deal cards, columns, and record views.
Let reps sort: reps filter and sort deals by score, with the likeliest to close on top.
The default score got the team started. Their answers made it reflect how they actually sell. Reps now spot priority deals without reviewing every deal by hand, and the same logic holds across the three pipelines.
Company scores need one record per account
A score lives on the record. If one account is split across two company records, each record holds only part of the activity, and neither may reach the threshold. Merge first, then score.
In a portal of about 3,500 companies, rebrands had left the same organization as two records, and name variations had created copies without a domain. I listed the duplicates by hand and merged 59 of them. I left two pairs apart on purpose: a university and its affiliated health system can be two separate buying accounts. A matching rule cannot make that call. Someone who knows the business has to.
If fit properties are blank, the fit score reads zero. Fill them before you turn the score on: Oneprofile's HubSpot data enrichment guide shows how.
Build it yourself or bring in a HubSpot CRM agency
Build it yourself if you have one pipeline, one object to score, and a few hundred contacts. A fit score and an engagement score take an afternoon.
Bring in a HubSpot CRM agency when any of these is true:
You score more than one object: companies, contacts, and deals.
A score must trigger assignments, tasks, or emails, not only sit on the record.
You run several brands or pipelines with different sales logic.
Company data has duplicates or missing fit properties.
In those cases most of the work is design and cleanup, not clicking through the scoring tool.
Sources
HubSpot: lead scoring tool documentation, checked October 18, 2026
Oneprofile: HubSpot lead scoring guide, checked October 18, 2026 (custom properties on every HubSpot tier)
Guest post by Ericson Da Silva. Ericson is a HubSpot Platinum-certified CRM consultant with 10+ years of experience. He runs Best CRM Experts, a HubSpot implementation and consulting agency for SaaS, tech, and professional services companies.

