HubSpot Lead Scoring: A Step-by-Step Setup

HubSpot Lead Scoring: A Step-by-Step Setup

HubSpot lead scoring built on billing, support and product signals, not just contact properties. Score contacts, then write it back with a reason.

No credit card required

Free 200 credits every month

Most HubSpot lead scoring advice starts with assigning points to job titles and email opens. That data is easy to score because it already sits in HubSpot, and it is also the weakest signal you own. Whether a lead pays you, what they complained about last week, and how often they log in all predict conversion better than any form fill, yet none of it reaches a contact record on its own. This guide builds HubSpot lead scoring the other way around: pull your contacts in, add the billing, support, and product usage data HubSpot cannot see, let AI score the whole list, and sync the score plus a written reason back as contact properties. The result works on every HubSpot tier, including Free.

How native HubSpot lead scoring works and what it costs

HubSpot ships two scoring engines. Manual scoring uses the HubSpot Score property, where you define rules that add or subtract points, and it requires a Professional subscription. Predictive scoring is the Enterprise one: a model trained on your closed deals that writes a likelihood to close.

Predictive models probably earn their keep at Enterprise contact volumes. We have never run a CRM big enough to find out, and with a few hundred contacts there is not much closed-deal history for a model to learn from anyway.

Both engines evaluate only what lives inside HubSpot: contact properties, form submissions, and the email and page activity HubSpot tracks itself. External data enters a score only after someone lands it on the contact record.

If you run HubSpot Free or Starter, neither engine is available to you at all. That reads like bad news and is actually the loophole. A score computed outside HubSpot and written into a custom contact property behaves like a native one everywhere it matters, because custom properties work on every tier. You can sort on it, filter on it, and build lists on it without touching a Professional upgrade.

For what it is worth, HubSpot Free is still the best free product in B2B software, and we recommend it to every founder who asks. They have to charge for something, and scoring is something. Anyway.

The signals HubSpot lead scoring cannot see

We built Oneprofile because our own CRM had this exact blind spot. Every account looked the same in the contact list. The differences sat in three other tools: Stripe knew who paid, the support desk knew who was frustrated, and only the product database could say who had gone quiet.

Signal

Where it lives

On the contact record?

Job title, company size

HubSpot

Yes

Email opens, form fills

HubSpot

Yes

Plan and MRR

Stripe

No

Trial end date

Stripe

No

Open and escalated tickets

Support desk

No

Last login, seats invited

Product database

No

The rows marked No are the predictive ones. A lead on a paid plan who invited two teammates this week outranks any volume of email opens, which is the entire argument behind product qualified leads.

The broader taxonomy of scoring models, demographic versus behavioral versus predictive, is covered in what lead scoring is. This guide stays on the build.

HubSpot lead scoring setup: build the score from real signals

1. Connect HubSpot and load your contacts. Authorize HubSpot in Oneprofile and pull in your contacts. Every property you care about is ready to enrich for each one. The connection is two-way, which is the detail that pays off in the final step.

2. Bring in data from your own systems. Connect the tools that hold the missing signals and match each contact by email address:

  • plan, MRR, and trial end date from Stripe

  • open ticket count and last ticket date from Zendesk or Intercom

  • last login and seats invited from your Postgres or MySQL product database

Each signal fills in automatically from its source. Nothing gets exported, reformatted, or pasted. This is data enrichment from systems you already own, and no purchased dataset can substitute for it, because no vendor knows what your leads do inside your product.

3. Fill the remaining gaps from the provider waterfall. Your own systems do not know a lead's company size, industry, or funding. Add enrichment for those and Oneprofile runs a waterfall of data providers ordered by cost and hit rate, cheapest first, stopping at the first match. The credit cost of the run shows before you start it, and lookups that come back empty are never billed.

4. Score every contact with AI. Describe your ideal customer in plain language. AI scores every contact against that description and against each other, then writes a 0 to 100 score and a one-sentence reason for each contact.

The written reason is the part we would fight to keep. The first time we scored our own signup list, the top result was an account we had mentally written off, and the reason read "upgraded last month, never onboarded". We booked the call the same day. A bare number would not have moved us; six words did.

Write the score and the reason back to HubSpot

Map the score and reason to two custom contact properties. Oneprofile creates the properties in HubSpot when they do not exist and keeps them current through the same two-way connection from step one.

HubSpot property

Type

Example value

lead_score

Number

87

lead_score_reason

Single-line text

Paid plan, 6 seats, 2 API tickets

plan_name

Single-line text

Team

open_tickets

Number

3

last_login

Date

2026-08-01

Nothing limits you to the score. Any data point you've enriched can write back, and having plan_name and last_login on the contact record saves a tab switch in the middle of a call.

Earlier we said HubSpot scores only read what sits on the contact record. That constraint is now doing the work for us: HubSpot treats a synced score like any field it owns. Views sort by it, lists filter on it, and if you upgrade to Professional later, the native HubSpot Score engine can use these synced properties as rule criteria. On Free, sort the contact view by lead_score descending and work from the top, reading the reason before you write the first line of the email.

Re-run scoring on whatever rhythm suits your pipeline. Scores and reasons update in place, and a lead that upgrades in Stripe climbs your HubSpot list without anyone touching a spreadsheet.

What HubSpot lead scoring costs with Oneprofile

The build above runs on the Team plan at $20 a month: 1,000 credits, unlimited tables, unlimited seats, and two-way HubSpot sync included. All 127 integrations work as sources and destinations on every paid plan. Most enrichment platforms gate CRM write-back behind tiers costing hundreds of dollars a month, which puts the one feature that makes scoring operational out of a founder's reach.

One meter covers everything. Every operation has a published credit price, a run shows its cost before it starts, and unused credits roll forward instead of expiring. Top-ups are $20 per 1,000 credits at the same rate, so a heavy month does not force a plan change.

The free plan covers three integrations, which fits HubSpot, Stripe, and one more source, with 200 credits a month across three 100-row tables. That is enough to score a real pipeline this afternoon and see whether the reasons change who you call first. If they do, the support desk and the product database are a $20 upgrade away. Get started free and run the first scoring pass before your next outbound block.

Ready to get started?

No credit card required

Free 200 credits every month

Ready to get started?

No credit card required

Free 200 credits every month

Ready to get started?

No credit card required

Free 200 credits every month

Does HubSpot have lead scoring on the free plan?

Do I need HubSpot Enterprise for predictive lead scoring?

Can HubSpot lead scoring use data from Stripe or my product database?

How much does it cost to score HubSpot contacts this way?

Does the same setup work for Salesforce?