Guides

Lead Scoring with Visit Behavior + Intent Data

Build a lead score that combines website visit behavior (pages, duration, frequency) with cross-web intent signals. More predictive than firmographics alone.

Nicolas Canal Nicolas Canal · · 11 min read
Lead Scoring with Visit Behavior + Intent Data

Gartner’s research on lead management confirms what most revenue teams already suspect: most lead scoring models are broken. They assign points based on firmographic fit - company size, industry, job title - and call it a day. A VP at a 500-person SaaS company gets a high score whether they’re actively evaluating your product or have no idea you exist.

Firmographics tell you whether someone could buy. Behavior tells you whether they will.

The best lead scoring models combine both. They start with firmographic fit (is this person at a company that matches your ICP?) and layer on behavioral signals (are they actively researching, evaluating, and engaging?). A VP at a 500-person SaaS company who visited your pricing page three times, read two case studies, and is researching “visitor identification tools” across the web - that’s a fundamentally different lead than the same VP who’s never heard of you.

With Leadpipe’s visitor identification and Orbit’s intent data, you have the inputs to build a scoring model that actually predicts buying behavior. This post walks through the formula, the implementation, and the common mistakes.


Table of Contents

  1. Why Traditional Lead Scoring Fails
  2. The Multi-Signal Scoring Framework
  3. Signal 1: Page-Based Visit Scoring
  4. Signal 2: Visit Duration and Depth
  5. Signal 3: Return Visit Frequency
  6. Signal 4: Orbit Intent Score
  7. Signal 5: ICP Fit
  8. The Complete Scoring Formula
  9. Scoring Examples: Three Real Scenarios
  10. Implementation in Your CRM
  11. Score Decay: Keeping Scores Fresh
  12. FAQ

Why Traditional Lead Scoring Fails

Traditional lead scoring assigns points based on static attributes. The typical model looks something like:

AttributePoints
VP or C-level title+20
Company size 50-500+15
SaaS industry+10
Has a work email+5
Downloaded a whitepaper+10
Attended a webinar+15
Requested a demo+50

This model has three fundamental problems:

Problem 1: It scores who they are, not what they’re doing. A VP at a SaaS company gets 45 points regardless of whether they’ve ever visited your website. The score reflects fit, not intent.

Problem 2: The behavioral signals are limited to known actions. Downloading a whitepaper and attending a webinar are the only behavioral inputs, and both require the prospect to identify themselves first. The 97% of visitors who don’t fill out forms have no behavioral score at all.

Problem 3: Scores don’t decay. That VP who downloaded your whitepaper six months ago still has those 10 points, even though they took a job at a different company. Without decay, your high-score list fills up with stale leads.

The result: according to SiriusDecisions (now Forrester), fewer than 25% of B2B leads generated by marketing are ever contacted by sales. Sales teams don’t trust the scores. They look at a list of “marketing qualified leads” with scores of 50+ and know from experience that most of them won’t respond. So they ignore the scores and work their own leads, and the sales-marketing alignment problem gets worse.

A better model needs behavioral signals that are continuous (not one-time), anonymous-inclusive (not dependent on form fills), and time-sensitive (not permanent).


The Multi-Signal Scoring Framework

Here’s the framework. Five signal categories, each contributing to a composite lead score:

Lead Score = Page Score + Duration Score + Return Visit Score
             + Intent Score + ICP Fit Score

Signal sources:

Signal CategoryData SourceWhat It Measures
Page ScoreLeadpipe (pages viewed)Intent based on content consumed
Duration ScoreLeadpipe (time on page)Engagement depth
Return Visit ScoreLeadpipe (visit history)Sustained interest over time
Intent ScoreOrbit (cross-web behavior)Research activity beyond your site
ICP Fit ScoreLeadpipe (firmographic data)Fit with your ideal customer profile

Each signal category has its own scoring logic, and the categories combine into a single composite score. Let’s break each one down.


Signal 1: Page-Based Visit Scoring

Not all pages are equal. Someone reading a blog post is less likely to buy than someone studying your pricing page. Your scoring model should reflect this.

Page scoring table:

Page TypePointsRationale
Pricing page+25Active evaluation - comparing costs
Demo/trial signup page+20Considering hands-on evaluation
Case study page+10Looking for social proof
Integration/API docs+10Checking technical fit
Competitor comparison page+15Actively comparing alternatives
Product/features page+10Understanding capabilities
About/team page+5Light interest
Blog post+5Early research
Careers page+0Not a buying signal
Support/help docs+0Could be an existing customer

Multi-page scoring:

Points are additive across pages in a session. A visitor who views your pricing page (+25), a case study (+10), and your integrations page (+10) in a single session scores 45 page points - compared to someone who only read a blog post (+5).

Important: Cap the blog post score at +15 per session (3 posts max contributing). Without a cap, someone who reads 10 blog posts would score 50 page points, which overstates their buying intent. Blog readers are interested in your content, but reading content and buying your product are different behaviors.


Signal 2: Visit Duration and Depth

How long someone spends on a page indicates how seriously they’re evaluating the content. A 10-second bounce is very different from a 3-minute read.

Duration scoring:

Time on PagePoints
< 15 seconds+0 (bounce - don’t count)
15-60 seconds+3
60-120 seconds+7
> 120 seconds+10

Apply duration scoring to high-intent pages only. Time spent on blog posts is less meaningful than time spent on pricing or product pages. Someone spending 5 minutes reading a long-form blog post is consuming content. Someone spending 5 minutes on your pricing page is doing serious evaluation.

Session depth scoring:

Pages Viewed Per SessionPoints
1 page+0
2-3 pages+5
4-5 pages+10
6+ pages+15

Multi-page sessions indicate sustained engagement. A visitor who navigates through your product page, then pricing, then a case study, then your integrations page has demonstrated a research pattern that maps to buying behavior.


Signal 3: Return Visit Frequency

First-time visitors are at the top of the funnel. Return visitors are progressing through it. Repeat visitors are deep in evaluation.

Return visit scoring:

Visit PatternPoints
First visit+0 (baseline)
2nd visit within 14 days+15
3rd visit within 14 days+15
4th+ visit within 14 days+10 per visit

Why return visits are so valuable:

A return visitor has remembered your company, typed in your URL (or searched for you), and come back to continue their research. This is a strong buying signal because it indicates:

  1. They weren’t satisfied by their first visit - they needed more information (positive: they’re going deeper)
  2. They’re comparing you against alternatives and coming back for another look
  3. They’re building a case to present to their team and gathering supporting material

Return visit + page escalation:

The strongest signal is a return visitor who escalates to higher-intent pages. First visit: blog post. Second visit: product page. Third visit: pricing page. This progression maps directly to the B2B buying journey - awareness, consideration, decision.

Track the page sequence across visits and add bonus points for escalation:

  • Return visit with higher-intent pages than previous visit: +10 bonus
  • Return visit to the same pages: +5 (reinforcement, still valuable)
  • Return visit to lower-intent pages only: +0 (probably just reading content)

Signal 4: Orbit Intent Score

The signals above measure what people do on your website. Orbit measures what they do everywhere else.

Orbit’s intent score reflects how actively a person is researching topics related to your product across the web - reading articles, visiting competitor sites, engaging with industry content. It’s scored 0-100.

Incorporating the Orbit intent score:

Orbit Intent ScorePointsWhat It Means
80-100+30Actively researching your category now
60-79+15Showing interest in related topics
40-59+5Mild topical interest
0-39+0No relevant research activity detected

Why intent data is a game-changer for scoring:

Consider two visitors who both spend 2 minutes on your pricing page:

  • Visitor A: Orbit intent score of 85 (researching “visitor identification tools,” “website deanonymization,” and “B2B lead generation software” across multiple sites)
  • Visitor B: Orbit intent score of 12 (no research activity in your category)

Visitor A is deep in an active buying cycle. Visitor B might have landed on your pricing page from a random Google search and has no immediate purchase intent. Without intent data, they’d score the same. With it, Visitor A scores 30 points higher - a meaningful differentiation.

Intent + website behavior together:

The combination of high Orbit intent and high website engagement is the strongest buying signal available. If someone is researching your category across the web AND visiting your pricing page multiple times, your AE should be reaching out today, not next week.


Signal 5: ICP Fit

Behavioral signals tell you whether someone will buy. ICP fit tells you whether you want them to buy. Both matter.

ICP fit scoring:

AttributePoints
Job title matches target persona (VP, Director, Head of)+20
Company size matches ICP (50-500 employees)+15
Industry matches your best verticals+10
Company uses complementary tech (e.g., HubSpot, Salesforce)+5
Geographic fit (US, Canada, UK, etc.)+5

Why ICP fit is scored last, not first:

Traditional models put ICP fit at the center. This model uses it as a modifier. The reason: a perfect ICP match with zero behavioral signals is a cold lead. A decent ICP match with strong behavioral signals is a warm lead. You’d rather talk to the warm lead.

ICP fit prevents false positives from behavioral data. A student researching your product for a class project might visit your pricing page and read five case studies - strong behavioral signals, zero ICP fit. The ICP fit score keeps them from being routed to your AE.


The Complete Scoring Formula

Putting it all together:

Lead Score = Page Score (0-75)
           + Duration Score (0-25)
           + Return Visit Score (0-60)
           + Intent Score (0-30)
           + ICP Fit Score (0-55)

Maximum possible: 245

Score thresholds:

Score RangeClassificationAction
0-30ColdAdd to nurture, no outreach
31-60WarmMonitor for additional activity
61-100HotRoute to SDR for outreach within 24 hours
101-150Very HotRoute to AE for immediate, personalized outreach
150+On FireAE drops everything and calls

The thresholds are starting points. Calibrate them against your actual close rates. If leads with scores of 50 are closing at the same rate as leads with scores of 80, your thresholds are too generous - tighten them.


Scoring Examples: Three Real Scenarios

Scenario 1: The Active Buyer

Visitor: Sarah Chen, VP of Marketing at a 300-person SaaS company

SignalDetailPoints
Page: PricingViewed pricing page+25
Page: Case studyRead SaaS case study+10
Page: IntegrationsViewed HubSpot integration+10
Duration3+ minutes on pricing+10
Session depth4 pages+10
Return visit3rd visit in 10 days+30
Page escalationBlog -> Product -> Pricing+10
Orbit intentScore: 82+30
ICP: TitleVP of Marketing+20
ICP: Company size300 employees+15
ICP: IndustrySaaS+10
Total180

Classification: On Fire. AE should reach out today with a personalized message referencing HubSpot integration and SaaS-specific ROI data.

Scenario 2: The Early Researcher

Visitor: Mike Torres, Marketing Manager at a 75-person fintech company

SignalDetailPoints
Page: BlogRead 2 blog posts+10
Page: ProductViewed features page+10
Duration90 seconds on features+7
Session depth3 pages+5
Return visitFirst visit+0
Orbit intentScore: 45+5
ICP: TitleManager (not VP+)+10
ICP: Company size75 employees+15
ICP: IndustryFintech+10
Total72

Classification: Hot. Route to SDR for outreach within 24 hours. Mike is an ICP match showing early interest. The SDR should share a relevant resource and start a nurture sequence.

Scenario 3: The False Positive

Visitor: Alex Kim, College Student (intern title)

SignalDetailPoints
Page: PricingViewed pricing page+25
Page: Case studiesRead 3 case studies+15 (capped)
Page: ProductViewed features+10
Duration2+ minutes on pricing+10
Session depth5 pages+10
Return visit2nd visit+15
Orbit intentScore: 8+0
ICP: TitleIntern+0
ICP: Company sizeUniversity+0
ICP: IndustryEducation+0
Total85

Without ICP fit, this visitor would score 85 - seemingly hot. But the zero ICP points plus a near-zero Orbit intent score reveal this isn’t a buying signal. A smarter model would also apply a negative modifier for non-ICP titles (intern, student, professor), pulling the score down to the warm range where no outreach is triggered.


Implementation in Your CRM

The scoring model is only useful if it lives where your sales team works - your CRM.

Salesforce implementation:

  1. Create custom fields for each signal category (page_score, duration_score, return_visit_score, intent_score, icp_fit_score, composite_score)
  2. Configure the Leadpipe webhook to push visitor data into these fields
  3. Build a Process Builder or Flow that calculates the composite score on each update
  4. Create a lead view sorted by composite score, descending
  5. Set up task auto-creation for leads that cross the “hot” threshold

HubSpot implementation:

  1. Create custom contact properties for each score component
  2. Build a Zapier workflow that maps webhook data to HubSpot properties
  3. Use HubSpot workflows to calculate the composite score
  4. Create an active list for leads above your routing threshold
  5. Trigger enrollment in a sequence when a lead hits “hot”

Deduplication matters:

When a return visitor is identified, you need to update the existing contact record, not create a new one. Match on email address to ensure visit scores accumulate on a single record. Without deduplication, a three-time visitor gets three separate contacts with low scores instead of one contact with a high score.

Leadpipe gives you the behavioral data that makes lead scoring actually predictive. Identify visitors, track pages, and feed it all into your CRM. Start with 500 free identified leads.

Start your free trial →


Score Decay: Keeping Scores Fresh

A lead score without decay is a lead score that lies. Someone who visited your pricing page six months ago and hasn’t been back is not a hot lead anymore. But without decay, their score stays frozen at whatever peak it reached.

Decay logic:

Time Since Last ActivityDecay Applied
0-7 daysNo decay
8-14 days-10% of behavioral score
15-30 days-25% of behavioral score
31-60 days-50% of behavioral score
60+ daysReset behavioral score to 0

Important: Only decay behavioral scores (page, duration, return visit, intent). ICP fit scores don’t decay because firmographic attributes don’t change on a weekly basis. A VP at a 300-person SaaS company is still a VP at a 300-person SaaS company next month.

How decay works in practice:

Sarah Chen scored 180 two weeks ago. She hasn’t visited since. At day 14, her behavioral score (125 points) decays by 10%, dropping to 112.5. Her ICP fit score (55 points) stays. New composite: 167.5. She’s still “On Fire” because 14 days isn’t very long.

At day 30, her behavioral score has decayed by 25% to 93.75. Composite: 148.75. Still “Very Hot.”

At day 60, behavioral score resets to 0. Composite: 55 (ICP fit only). She’s now “Warm” - which is exactly right. She was an ideal fit who showed strong interest two months ago. That interest hasn’t been reinforced, so she drops to a holding pattern.

If Sarah returns and visits your pricing page again at day 45, the decay resets and her behavioral score rebuilds from the new activity. The model rewards recency.

Implementing decay:

Run a scheduled job (daily or weekly) that recalculates behavioral scores based on the last activity date. In Salesforce, this can be a scheduled Flow. In HubSpot, a scheduled workflow. The job applies the decay percentages and updates the composite score.


FAQ

How is this different from the lead scoring built into my CRM?

Most CRM-native lead scoring relies on form fills, email opens, and static attributes. This model adds two critical signals your CRM doesn’t have: anonymous website behavior (from Leadpipe) and cross-web research activity (from Orbit). These behavioral signals are far more predictive than email engagement.

What if I don’t have Orbit? Can I still use this model?

Yes. Remove the Intent Score category and recalibrate your thresholds accordingly. The remaining four signals - page, duration, return visit, and ICP fit - still provide a significantly better scoring model than firmographics alone. You can always add intent data later as a score booster.

How do I calibrate the point values?

Start with the values in this post, then adjust based on your close rates. Run the model for 60-90 days, then compare scores against actual pipeline outcomes. If leads with high return-visit scores close at a higher rate than leads with high page scores, increase the return-visit point values. Let your data tune the model.

Should I score every visitor or only visitors that match my ICP?

Score every identified visitor. The ICP fit component naturally pushes non-ICP visitors down the priority list. But don’t filter them out entirely - occasionally, a visitor outside your typical ICP shows strong enough behavioral signals to warrant attention. Let the composite score make that determination.

How do I handle visitors with no Orbit intent data?

Treat missing Orbit data as a 0 score for that component, not as a disqualifier. Many strong leads won’t have intent data, especially if they found you through direct navigation or an internal referral. The other four signal categories should still produce a meaningful score.


Build a Score That Sales Actually Trusts

The goal of lead scoring isn’t to generate a number. It’s to give your sales team a prioritized list they actually believe in. When the number one lead on the list is someone who visited pricing three times, has an Orbit intent score of 85, and matches your ICP perfectly - your AE doesn’t question the score. They pick up the phone.

That’s what behavioral scoring produces: a list that reflects real buying signals, not marketing’s guess about who might be interested.

Leadpipe gives you the behavioral data. Orbit gives you the intent data. Your CRM brings it together. Start with 500 free identified visitors and see what the data tells you.

Start your free trial →