How a point spread becomes a win probability
A point spread is not a prediction that the favorite will win. It is the market's forecast of the final margin: "Boston -6.5" means the market expects Boston to win by about 6.5 points. Real games scatter around that forecast, and here is the useful part: they scatter in a shape statisticians know very well. Hal Stern showed decades ago that final margins behave like a normal (bell curve) random variable centered on the spread, and the basketball version of that lineage, carried forward by Wayne Winston in Mathletics, measures the NBA's scatter at close to 12 points of standard deviation. Winston even shows where the 12 comes from: across roughly 86 field goal attempts a side, ordinary night-to-night shooting variance alone moves the final margin by about 6 baskets.
Once you accept that shape, win probability is one division and one table lookup. The favorite wins whenever the actual margin lands above zero, so you ask the bell curve how much of it sits on the winning side of the spread. That is the entire model, and it is the same math NBA analytics sites run under their pregame percentages.
The formula
Φ is the standard normal CDF (the running total of the bell curve), spread is the favorite's spread in points, and σ is the standard deviation of NBA margins around the spread. The underdog gets whatever is left: 1 − P(favorite).
The moneyline mode uses market prices instead of a model. Each American line converts to an implied probability (for -260, that is 260 ÷ 360; for +210, it is 100 ÷ 310). The two sides of a market always sum to more than 100 because the bookmaker's fee is baked into the prices, so we scale both back to a 100 total:
That normalization is the standard vig removal. For odds format conversion, payouts, and the full story on the vig, see our odds calculator; this page borrows exactly that math for the cross-check.
Worked example
A 6.5-point favorite. z = 6.5 ÷ 12 = 0.54. The normal curve puts Φ(0.54) = 0.706 of outcomes on the favorite's side of zero, so the favorite wins outright 70.6% of the time and the underdog 29.4%.
Cross-check with the moneyline pair -260 / +210. Implied probabilities: 260 ÷ 360 = 72.22% and 100 ÷ 310 = 32.26%, which sum to 104.48%. The extra 4.48 points is the bookmaker's fee. Scale both back to 100 and the fair probabilities are 69.13% and 30.87%.
Model 70.6%, devigged market 69.13%: within a point and a half of each other, which is the usual state of affairs. When they disagree by more, trust the moneyline; it is a direct price on winning, while the spread is a price on the margin pushed through a model.
The model against the market's history
Here is what the formula says at common spreads, next to the approximate share of games favorites at that spread have actually won in large historical samples (the ballpark figures come from a 28,000-game spread-to-moneyline study; treat them as rough, because that is what they are):
| Favorite by | Model says | History says (approx) |
|---|---|---|
| 1 | 53.3% | about 52% |
| 2.5 | 58.3% | about 58% |
| 5 | 66.2% | about 66% |
| 7.5 | 73.4% | about 76% |
| 10 | 79.8% | about 85% |
| 12.5 | 85.1% | about 88% |
Through single-digit spreads the model tracks reality within a couple of points, which for a one-line formula is remarkable. At double digits it runs a few points cold: real 10-point favorites win more often than the curve says. The main culprit is garbage time. The sigma of 12 is fitted to margins, and late-game margins get noisy for reasons that have nothing to do with who wins: benches empty, intentional fouls trade twos for threes, a 15-point game finishes as a 7 or a 22. That noise inflates the measured scatter without flipping many outcomes, so a margin-fitted sigma slightly overstates the upset chances of big favorites. And past 15 points the model is extrapolating where data is thin; the biggest spreads ever posted sit in the low 20s, so treat anything out there as a sketch, not a measurement.
Why this model actually suits basketball
Our NFL page has to apologize for this model; this page mostly does not. Football margins clump on key numbers (3 and 7, the field goal and the touchdown), so a smooth bell curve is always fudging the lumps. Basketball scores in a steady drip of 1s, 2s, and 3s across 200-plus possessions, so final margins land almost anywhere with almost no clumping. The one wrinkle worth knowing is the garbage-time inflation described above, plus a small pile-up right around zero: there are no ties, close finishes get decided by intentional-foul chess, and overtime resolves the rest. Compared to what the normal approximation deals with in other sports, these are misdemeanors.
Home court is already in the number
The spread you type in already contains home court, rest, travel, injuries, and every other public fact, because the market moved the line for them before you got there. Home court in the modern NBA is worth roughly 2 to 3 points, and it is in the spread. If your team is at home and favored by 6.5, do not add anything: the 6.5 is the after-home-court number. Adding your own bonus is the most common way to double-count your way to false confidence.
One honest sentence before you go: these are prices, not edges. The market has already priced in everything this page knows and more, and the fee baked into posted odds makes their expected value negative by construction, so use this calculator to understand what a spread really claims, not to hunt for bets. If you want the same honesty applied to the odds themselves, the odds calculator will show you the fee to the penny.