LeadGrade is the inbound lead agent for founder-led sales teams. It works last night’s inbound out of the accounts you already have and hands you a ranked queue in the morning — and you approve anything that goes back to your CRM. Here is what that looks like, step by step.
HubSpot connects through its own OAuth. LeadGrade asks for read and write on contacts, and for company read as an optional scope — a portal that declines the optional scope still connects, and every lead then carries “scored on the form alone” as a reason rather than a company size being invented.
Your forms need nothing but a URL. Point Webflow, Framer, Typeform, HubSpot forms or your own site at your endpoint; it reads the field names your form already posts, and when it cannot find an email it answers with the keys it did see instead of dropping the lead quietly.
A pass reads every lead created since the last watermark. The watermark is the pass’s own start instant, and each pass re-reads the 120 seconds before it, de-duplicating on the source id.
That overlap is the whole trick: a lead created while the pass was running would otherwise land inside a window that has already been consumed. Seeing a lead twice costs nothing — seeing it zero times costs you the lead, and you find out from a customer.
Enrichment means one thing here: the company record HubSpot already holds against the lead’s domain, plus what the address itself says — company domain or free mailbox, a person or a shared inbox, a real provider or a throwaway.
12 rules run over each lead: the seniority of the title, company domain versus free mailbox, shared mailbox, which form it came through, buying language in the message, company size and industry against your ICP, whether HubSpot already knew them, your exclusion list, how much of the form was filled, and whether it could be enriched at all.
Each one returns the value it read — “180 employees”, “VP of Revenue”, “demo-request” — and what that value was worth. Hot starts at 70, warm at 45, cool at 25. The weights are calibrated so that only a lead which maxes every positive rule reaches 100; if the rules could sum past the ceiling, the clamp would do the ranking and every strong lead would render the same number.
In the morning the leads are in one screen, ranked, each carrying its reasons. Two taps: approve, which queues the CRM write-back, or kill, after which nothing was written. Copilot is the default and writes nothing on its own; autopilot queues write-backs above a score you set, and those still wait out the window.
An approved write is deferred by 60 seconds. The dispatcher selects on the send-after column, so a row inside its window is not picked up at all rather than picked up and filtered — which is the only version of that guarantee a race cannot lose.
What it may write is a short list, and the second half of it has a hard rule attached:
leadgrade_score, leadgrade_band, leadgrade_top_reason, leadgrade_scored_at — which it created and nothing else writes, so a new score may replace an old one.After a write has gone, the value it replaced is still stored. Putting it back is one tap, and it goes through the same window and the same ledger rather than being a privileged instant undo.
Comparing options? LeadGrade vs HubSpot lead scoring, LeadGrade vs Common Room, and LeadGrade vs MadKudu.
Or watch it work a real queue. See the live demo →
WHEN A RULE CHANGES
LeadGrade scores every inbound lead overnight and ranks the queue highest first. The scoring rules and the rails it will write back to both change. Leave an address and LeadGrade writes when one does.