TYLER MATHENY
Work Writing About Positions Contact
Back to work
Elo
An adaptive lead scoring engine that treats every prediction as a wager.
Role
Sole builder. Concept, mechanism design, product.
Status
Working product. Prototype script available on request.
Elo adaptive lead scoring

Why has lead scoring not evolved the way everything else has? Most systems are still built on inferred intent and static bets. Signals get weighted, scores get assigned, and those scores tend to stick around long after reality has moved on.

That question sent me down a rabbit hole. I stepped back and asked what would need to be true to build a truly adaptive prediction model.

The answer I kept landing on was consequence.

It started as a small Python sketch to test whether the idea held. It pairs an Elo-style rating mechanism, the one chess uses to rank players against each other, with closed won and closed lost data. Not as a sports metaphor, but as a discipline. Every prediction is treated as a wager. Every outcome has the ability to rewrite belief.

The sketch held, so I built the rest of it. Elo now runs live against CRM data, syncing deals as they close and updating its beliefs continuously rather than on a quarterly review cycle.

Belief update mechanism
The update loop. A prediction is made, an outcome lands, and the size of the correction depends on how confident the prediction was and how recent the outcome is.
How Belief Updates
Confident misses adjust aggressively
The system pays a larger price for being sure and wrong than for being unsure and wrong. Certainty has to be earned.
Uncertain wins learn faster
A surprising close carries more information than an expected one, so it moves the model further.
Recent outcomes outweigh old ones
Learning rate decays with time, so last quarter's market counts for more than the market three years ago.
Sparse signals learn quickly, then slow
A new attribute moves fast on its first few deals and stabilizes as evidence accumulates. Numeric fields are binned so scale cannot dominate.
What The Model Comes To Believe
Signal
Belief
Evidence
champion_present = true
+1.61
112 obs
buying_signal_strength = high
+1.58
98 obs
lead_source = Referral
+1.44
87 obs
persona = Decision Maker
+1.29
76 obs
explicit_objection = pricing
–0.88
91 obs
buying_signal_strength = none
–1.24
74 obs
persona = Researcher
–1.47
83 obs
Belief runs from negative two to positive two. Every pair also carries a variance, so the model knows how sure it is, and a learning rate that decays as evidence accumulates. Sparse signals move fast. Established ones resist.

Nothing here was configured. Each of these numbers is the residue of closed deals, and each one is falsifiable by the next one.

The rule I care most about is what happens on a confident miss. When the model is sure and wrong, certainty amplifies the correction rather than dampening it. That is the whole Elo idea transplanted into a sales pipeline. Being wrong has to cost more when you were confident, or the system just calcifies around whatever it believed early.

Unstructured signals get read by Claude against a strict schema, so call notes and email replies become the same kind of evidence as a CRM field. No rep tags anything. The loop runs HubSpot to extraction to belief update and writes the score back.

Hot
78%
win rate, score 75–100
Warm
52%
win rate, score 50–74
Cool
21%
win rate, score 25–49
Cold
7%
win rate, score Under 25
Tiers are calibrated against closed won outcomes rather than set by hand, and they resharpen as evidence accumulates. Accuracy on the demonstration dataset moved from sixty one to seventy six percent over ten weeks with no change to the architecture. The only input was outcomes. Brier score and log loss are tracked alongside it, because log loss is what punishes a confident miss and that is the behavior the whole design is built around.
Figures shown are from the demonstration dataset, not a customer deployment

Over time, the model quietly shifts priority toward what actually closes deals, not what sounded good in last year's playbook.

What convinced me was not any single accuracy number. It was the shape of the behavior the system encourages. Signals that sound persuasive but do not survive contact with outcomes lose influence by design. A small number of repeatable patterns earn trust gradually, and the model shows its work on both.

None of the code is clever. The mechanism is the point, and the mechanism is old. Chess has ranked players this way since 1960. Lead scoring simply never adopted the part where being wrong costs you something.

I am not going to claim a customer outcome I do not have. Elo runs on a demonstration pipeline, and what it demonstrates is a property rather than a lift: a scoring system where every rep’s win or loss sharpens the next forecast for the whole team, with no retraining cycle and no data science function in the loop. Whether that beats a static model in production is the experiment I would like to run inside a real pipeline.

Predictions only get better when being wrong has a cost. Most lead scoring systems are never built to pay it.
The dashboard is open, no login. It ships with a guided tour of the mechanism and the problem it solves for enterprise sales teams.
Open the dashboardGet in touch
Tyler Matheny, Austin, Texas
Positions Get in touch LinkedIn