Lead Scoring & Qualification
Automatically score leads based on company size, engagement, and fit, surfacing hot prospects
HubSpot integration that calculates lead quality scores using company firmographics, email engagement, website activity, and conversion likelihood. Prioritize sales time on high-potential leads.
Daily at 6:00 AM, Nora queries HubSpot for new and updated contacts. It retrieves firmographic data, custom properties, and recent behavioral signals like email opens and website visits. Nora applies a scoring model based on the ideal customer profile, assigns a score from 1 to 100, and updates the contact record with the new score and corresponding lifecycle stage label.
Sales representatives check HubSpot in the morning and see a prioritized list of contacts flagged as sales-ready. They no longer spend time reviewing every new sign-up or cross-referencing engagement history. The team decides which specific outreach sequence to use for the top-scoring leads, while low-scoring contacts wait in automated nurturing campaigns.
Runs daily at 6:00 am using HubSpot, run by your Sales Dev Rep.
How it works
- Daily schedule execution — At 6:00 AM each day, Nora connects to the HubSpot API to fetch contacts created or modified in the last 24 hours. It pulls standard contact properties and associated company records to gather firmographic details.
- Assess firmographic fit — Nora reads company size, industry, and revenue fields. It compares these data points against the customer profile defined during onboarding, assigning baseline points for exact matches and partial points for adjacent industries or sizes.
- Evaluate behavioral signals — Nora checks the contact's recent activity log. It looks for specific behavioral indicators, such as email opens, link clicks, and form submissions, weighting recent actions higher than older interactions to calculate an engagement score.
- Handle incomplete profiles — When a contact lacks company data or uses a free email provider, Nora limits the maximum possible firmographic score. It relies entirely on behavioral signals for these records, preventing them from reaching the highest tier without explicit engagement.
- Calculate final score — Nora combines the firmographic and behavioral points into a single score out of 100. It categorizes the contact as Sales Ready for scores above 70, Nurturing Candidates between 50 and 69, or Not Qualified below 50.
- Update HubSpot records — Nora writes the final numerical score back to a custom property on the HubSpot contact record. It also updates the association label or lifecycle stage. The sales team's filtered views then automatically populate with the highest priority leads.
What this replaces
Sales development representatives manually review lists of new HubSpot contacts each morning. They click into individual profiles, check the associated company size, scroll through the activity timeline to count recent email opens, and mentally weigh the prospect's value. They then manually tag the contact or assign them to a specific list for outreach.
- Filter HubSpot contacts by creation date or recent activity
- Open each contact to check company industry and revenue
- Review the activity timeline for recent website visits or email opens
- Update a custom property or lifecycle stage based on the review
Rough estimate rather than a measured figure: about 45 minutes a day, assuming 30 new leads and 90 seconds spent researching and updating each contact.
What it needs to run
Accounts and plans
- HubSpot account with API access enabled
- Custom properties created in HubSpot for Lead Score and Qualification Status
Access it asks for
- crm.schemas.contacts.read to pull contact lists and custom properties
- sales-email-read to evaluate email open and click engagement
- Write access to contacts and companies to update the final scores
What Nora reads
- Contact properties and associated company firmographics
- Activity logs including email opens and form submissions
- Ideal customer profile criteria provided during configuration
What Nora writes
- Numerical values to the custom Lead Score property on contacts
- Text values to the Qualification Status property or lifecycle stage
When it goes wrong
- HubSpot API rate limit exceeded during high volume Nora pauses the scoring run and waits for the 10-second rate limit window to reset. It resumes processing the remaining contacts once the API accepts requests again, preventing dropped scores during high-volume days.
- Target custom score property is missing in HubSpot If the target field is deleted or renamed in HubSpot, Nora halts the update process. It sends a message in your designated channel explaining that the property is missing and asks you to restore it or specify a new target field.
- Contact has no recent activity or company data Nora assigns a score of zero for the missing categories. It updates the record with the resulting low score and flags it as Not Qualified. It does not attempt to guess firmographics from the email domain.
- Activity log contains ambiguous or unrecognized event types If Nora encounters unrecognized event types in the engagement history, it ignores those specific events in the calculation. It scores the lead based only on recognized data points and logs a note about the skipped events.
Who this is for
Worth it if
- Sales teams receiving 50+ inbound leads daily who struggle to identify which to call first
- B2B companies with a clear, defined ideal customer profile based on company size and industry
- Organizations running active nurturing campaigns that need a systematic way to graduate leads to sales
Not worth it if
- Businesses with very low inbound volume where reps have time to research every prospect thoroughly
- Companies using HubSpot's built-in Enterprise predictive lead scoring, which already handles this natively
- Workflows where qualification relies on complex human judgement during a discovery call rather than upfront data
A worked example
A commercial cleaning supplier receives about 40 inbound inquiries daily. They ask Nora to score leads based on company size, facility type, and whether the contact opened the recent pricing guide email.
HubSpot Contact Update: Record: Marcus Hayes Company: Horizon Retail (250 employees, $40M Revenue) Updates applied: - Property [Custom_Lead_Score]: 88 - Property [Qualification_Tier]: Sales Ready Calculation summary logged to contact note: Firmographic match: +45 (Target industry, 100+ employees) Engagement: +43 (Opened 'Wholesale Pricing' email 3 times, visited 'Shipping Rates' page today) Total: 88. Graduated to Sales Ready queue.
Frequently asked questions
Can I change the scoring criteria if our target market shifts?
Yes. You tell Nora in your chat channel that you want to adjust the criteria. For example, you can say you now want to prioritize healthcare companies over retail, or increase the points awarded for pricing page visits. Nora updates its evaluation model for all future daily runs based on your plain-language instructions.
What happens if a lead's score drops because they stop engaging?
Nora evaluates recent activity during every daily run. If you instruct it to decay scores over time, a lack of new engagement will lower the behavioral portion of the score. If the total drops below your threshold, Nora updates the HubSpot record to move the contact from Sales Ready back to a Nurturing status.
Does Nora use my HubSpot data to train its models?
No. Your data remains entirely within your dedicated, single-tenant instance. Nora reads the contact and company properties solely to calculate the score for that specific daily run and writes the result back to your HubSpot account. It does not retain the data for model training.
Will this overwrite scores I manually assign to contacts?
By default, Nora recalculates and overwrites the target score property every morning. If you need to manually override a score and prevent Nora from changing it, you can ask Nora to ignore contacts with a specific tag or status. Nora will skip those records during future scoring runs.
Connects to
Related automations
- Lead Auto-Assignment by Territory — Automatically assign new leads to sales reps based on territory, account fit, and workload balance
- Email Activity Auto-Sync to Salesforce — Automatically log all sales emails (sent, received, attachments) to Salesforce activities without manual work
- Opportunity Auto-Advance by Milestone — Automatically advance opportunities when milestones occur (proposal sent, demo completed, etc.)
- Sales Forecast Accuracy Tracker — Track forecast vs. actual monthly and identify which reps consistently miss targets for coaching
- Sales Activity Auto-Logger — Automatically log all sales emails (sent, received, replies) into a CRM activity timeline
- Deal Pipeline Auto-Advance — Automatically move deals through pipeline stages based on actions (proposal sent, demo completed, etc.)
- Contact Sync from Email & Forms — Automatically create HubSpot contacts from email senders and form submissions, no data entry
- Auto-Log Meeting Notes to Deals — Automatically transcribe meeting recordings and log summaries to HubSpot deals, keeping context