Notes/02
AI AutomationApr 2026·7 min read

AI lead scoring without CRM lock-in

How we built a portable lead scoring layer on top of HubSpot that any team can own, modify, and move — using Claude, Make.com, and plain JSON.

Most AI lead scoring tools come with a catch: the model lives inside the platform. HubSpot's predictive scoring, Salesforce Einstein, Marketo's AI — they all score leads using logic you can't inspect, tune, or export. When you leave the platform, the score goes with it.

We built our scoring layer differently. The scoring model is a Claude prompt stored in a Make.com scenario. The prompt receives a JSON blob of lead attributes — company size, industry, page visits, email engagement — and returns a score from 0–100 with a reasoning field. The output is written back to a custom HubSpot property.

The portable part

Because the "model" is a structured prompt, it lives in a text file. We version it in Git. We can A/B test two prompts by cloning the Make scenario. We can migrate the whole thing to n8n or any other orchestrator in an afternoon.

What we learned tuning it

Early versions weighted recency too heavily — a lead who visited the pricing page three days ago scored higher than a lead with 12 months of engagement. We added a decay factor and blended it with a recency boost only when combined with email opens.

The other surprise: negative signals matter more than positive ones. A lead that unsubscribed from two sequences is almost never worth re-engaging, regardless of how good their company profile looks. We added hard score caps for specific negative triggers.

The result on our own pipeline

Sales time spent on leads scoring below 40 dropped by 68% after 60 days. Conversion rate from qualified to proposal went from 22% to 41%. We've since ported this setup to three client accounts.

G
Georgiy
Founder, propagandas.studio · Vienna, AT
Work with us →

← Previous

The MIRROR Principle: why we only sell what we run

Next →

Building Photovic: fifty PV proposals in twenty minutes

All posts