Salesforce will happily store a lead score. The problem is the data it scores on. A score built only on the activity already in your CRM ranks your busiest tire-kickers above your best-fit buyer. Einstein and homegrown formulas both read what Salesforce already holds: page views, email opens, form fills. That tells you who is curious, not who fits or who is in-market.
The accounts a rep should call first match your ICP and just did something that signals timing. Most of those facts are not in Salesforce until something puts them there. This is how to build a score on fit and intent, enrich what it needs, write it back to Salesforce, and route the hot leads.
Step 1: Split the score into fit and intent before you build anything
A score is two questions, not one. Does this lead look like the accounts you win, and are they showing signs of buying now? Collapse them into one number too early and you cannot tell a perfect-fit account that will never buy from a hand-raiser who never qualifies.
Fit is firmographic: industry, size, region, tech stack, the attributes that separated your closed-won deals from your closed-lost. Intent is behavioral and time-bound: a funding round, a relevant hire, a product signal, a visit to your pricing page. The two belong on separate axes, because a lead's quadrant decides the play, not just the priority.
Leads settle into fit-and-intent quadrants. Click a dot to see the inputs behind its position.
Series B fintech, 240 staff
Fit and intent are two axes, not one number: a lead's quadrant tells a rep what to do, not just how urgently. The same total can mean call-now or never-work, and only the split tells them apart.
Step 2: Enrich the data the score actually needs
Salesforce can only score on what it holds, and what it holds is mostly activity. The inputs that make a score predictive live outside the CRM until you bring them in.
Pull the leads into Clay, then enrich the fit and intent inputs the score depends on. For fit: verified industry and sub-industry, employee count, revenue band, location, and tech stack. For intent: funding events, hiring signals, job changes, and product or web activity. Use a Use AI column for the judgment calls a fixed field cannot answer. The score then reflects real research instead of whatever a form happened to capture.
You are scoring a B2B lead for intent.Inputs: {{Company}}, {{Industry}}, {{Recent news}}, {{Job postings}}, {{Funding}}.Decide whether this account shows a timing signal a seller should act on now (e.g. a relevant new hire, a funding round, an expansion, or a public project that maps to our product).Return:- yes or no- the single strongest signal in a few words- a 0-30 intent sub-scoreIf there is no real signal, return 0.
Step 3: Build the score as a Formula column
Clay has no "score this row" button, and it does not need one. Lead scoring is a Formula column: you write the weighting in plain logic and every row computes the same way.
Score fit and intent separately, then combine them so a lead needs both to reach the top tier. A simple, transparent shape: fit points plus intent points, with a floor on each so a zero on one axis caps the total. Keep the weights legible, because a score a rep cannot explain is a score a rep will not trust.
fit = (icp_industry ? 25 : 0) + (size_in_range ? 15 : 0) + (runs_target_tech ? 10 : 0)intent = (raised_funding_90d ? 20 : 0) + (hiring_buying_role ? 15 : 0) + (visited_pricing ? 15 : 0)score = (fit >= 25 && intent >= 15) ? fit + intent : min(fit + intent, 40)tier = score >= 70 ? "A" : score >= 45 ? "B" : "C"
Toggle any input to watch the score, tier, and reason recompute. Turn off both intent chips and the lead drops from A to C.
Lead score
0
strong fit + active funding and hiring signals
Tier A: 70+ · Tier B: 45+ · Tier C: 0+
A transparent fit-plus-intent formula makes the tier and the reason for it legible, so reps trust the score and act on it.
Step 4: Write the score back to Salesforce and route on it
A score that lives in Clay helps no one. It has to land on the Salesforce record and trigger an action.
Write the score and tier to custom fields with the Update record action, keyed on the Salesforce Record ID. Because the ID points at one record, the write updates it in place and never creates a duplicate. Clay's writes cannot be undone, so test against the Salesforce Test Env first. Map only the score fields you own, so you do not touch anything a rep depends on. Then route. Assign the A-tier leads to an owner with round-robin (Standard or Weighted) and notify the rep, so a hot lead reaches a human fast.
Auto-plays score to write-back to routing. Click a node to inspect it.
Score in Clay
Formula and Use AI columns return a number and an A / B / C tier per lead
Hands to Write to Salesforce: Each lead carries a score and a tier
The score only matters once it is written to the record by ID and used to route the hot leads to a rep automatically.
Step 5: Re-score on every new signal, not just at form-fill
A score set once at form-fill is wrong within weeks. Fit barely moves, but intent decays fast, and a C-tier lead from last quarter may be your hottest account today.
Turn on auto-update so the enrichment and the formula re-run as signals change, and the score on the Salesforce record stays current. A lead that just raised a round or started hiring crosses from C to A on its own. It gets re-routed and reaches a rep while the timing still holds. Scoring once is a snapshot; re-scoring on every signal is the point.
Auto-plays one lead crossing C to B to A as signals fire. Click a month to see its score and the signal that moved it.
Month 0 · Captured, no active intent
Re-score trigger: a watched signal fires or a scheduled refresh runs
Intent decays, so re-scoring on every new signal is what catches a lead at the moment it becomes worth a call.
Teams that score on enriched fit and intent, then route automatically, see it in conversion.
lift in SQLs ElevenLabs saw after moving to automated, signal-based lead scoring in Clay
Read the full storyCommon failure modes, and how to avoid them
Most Salesforce lead scores fail the same four ways.
- Scoring on activity alone: Engagement stands in for fit, so your most-emailed contacts outrank your best accounts. Score fit and intent on enriched data; treat engagement as one minor input.
- One combined number with no fit-and-intent split: A rep cannot tell why a lead is an A or what to do about it. Keep the axes separate so the tier explains itself.
- Scoring once at form-fill and never again: The score is stale by the time a rep looks. Re-score on signals and on a schedule so tiers track reality.
- Writing the score with the wrong action or unmapped fields: That creates duplicates or clobbers data a rep owns. Write by Record ID with the Update action and map only the score fields.
Outcomes teams report after scoring and routing leads with Clay
What teams report after scoring and routing leads with Clay