Why intent-scoring matters
A 10,000-address list isn't 10,000 buyers. Typically 1-5% are in active decision mode, 10-20% are researching, and 75%+ aren't in market at all. Sending the same message to everyone wastes sends and damages your sender reputation.
Intent scoring is about ranking addresses by how likely they are to convert — so you can focus outreach on the top of the list.
Signal type 1: Engagement history
Past behavior is the strongest intent predictor. Rank by:
- Recent opens (last 30 days) — warmer than 6-month-old opens
- Clicks on pricing, demo, or feature pages — not clicks on blog content
- Multiple opens of the same email — forwarded to a team, reviewing options
- Reply activity — the highest-intent signal of all
If you have analytics on email opens, rank contacts by a weighted score: reply=10, pricing-click=5, demo-click=7, open=1, blog-click=0.5.
Signal type 2: Domain & role signals
Business email domain tells you a lot:
- Freemail (gmail.com, yahoo.com): almost certainly B2C or a consultant. Deprioritize for most B2B tools
- Generic business domain: normal lead
- Target industry domain: high-value if it matches your ICP
Role patterns in the local-part:
- firstname.lastname: individual, possibly decision-maker
- info@, contact@: role-based, low intent
- ceo@, marketing@: targeted but often filtered by assistants
Signal type 3: External intent data
Third-party "intent data" providers (Bombora, G2, 6sense, Demandbase) claim to know which companies are researching in-market topics. It works for enterprise SaaS; for smaller markets it's often too noisy.
Free alternatives:
- Website visitor identification tools (Leadfeeder, Albacross) — show which companies visited your site
- LinkedIn Sales Navigator alerts on job changes, company news
- Google Alerts on key phrases or competitors (reveal who's searching)
A practical scoring workflow
For a small team without a fancy platform:
- Extract your list with our extractor to make sure the data is clean
- Tag each row with: last-engagement-date, email-role-type, domain-type (freemail/business/target)
- Score each row 0-100 based on your weighting rules
- Segment into Hot (80+), Warm (50-79), Cold (<50)
- Send different messages to each segment: Hot gets a direct ask, Warm gets value content, Cold gets occasional touches only
Signals to deprioritize or remove
- Addresses not opened in 12+ months
- Disposable domains
- Hard bounces
- Complaints
- Role addresses (
info@,no-reply@,admin@) — unless you have a specific reason - Out-of-office replies within hours — that person isn't in buying mode