This site publishes output from a lineup-based expected points model for NCAA men's basketball, fit on possession-level play-by-play. Everything below describes how a number gets made, so you can judge how much weight it deserves.
Every value on this site
| Term | What it means |
|---|---|
| Pts | Projected points for that team. The margin and total carry the signal; the two team scores just split them. |
| Total | Projected combined points. |
| Poss | Projected possessions for the game. Both teams face the same number, which is why tempo is modelled once. |
| By | Projected margin of victory for the favourite. |
| Win% | Probability the favourite wins, from the projected margin and the model's own margin spread. It is a normal approximation, so treat the tails loosely. |
| Off /100 | Points scored per 100 possessions against a league-average opponent. |
| Def /100 | Points allowed per 100 possessions against a league-average opponent. Lower is better. |
| Net /100 | Off minus Def. The single-number team rating. |
| Tempo | Expected possessions in a game against an average-tempo opponent. |
| Home edge | That venue's home advantage in points per 100 possessions, shrunk toward the league value. |
| Units | Distinct five-man lineups the team has actually used. |
| Pts/100 | What a specific five-man unit is worth against this opponent's expected mix of defensive units. |
| On floor | Share of the team's projected possessions that player is on the court for. |
| Basis | lineups means the projection used observed five-man units. minutes means the team had no lineup history and the projection fell back to expected minutes from a roster — a weaker input, flagged so you can discount it. |
How a projection is made
Expected points separates into two pieces that are estimated independently:
E[points] = E[possessions] × E[points per possession]
Possessions come from a tempo model, efficiency from a ridge RAPM fit plus a home court term and a heavily shrunk lineup residual. Keeping them apart matters: tempo stabilizes in about eight games while efficiency does not, so mixing them lets pace noise contaminate the part that actually needs shrinkage.
For a game, each of a team's five-man units is matched against the opponent's whole usage distribution rather than one guessed lineup — the honest treatment when the coach's matchup plan is unknown. Because points per possession is additive in the offensive and defensive terms, averaging over that cross product collapses to the product of the marginals, so the full rotation is used rather than a truncated top few. Truncating would be worse than slow: the dropped tail is disproportionately bench units, so keeping only the best and renormalizing biases scoring upward.
RAPM
Regularized adjusted plus-minus regresses possession outcomes on who was on the floor, penalizing large coefficients so that a player with few possessions is pulled toward average rather than trusted. Box-score priors inform the fit, which is what lets a bench player with 150 possessions get a defensible number instead of noise. The penalty is chosen by cross-validation, not by taste.
Pace
Possession counts are ridge-regressed on each team's own tempo push, the tempo it imposes on opponents, and a home term. Pace is fit on every possession including garbage time — blowout possessions still count toward a game total, and excluding them systematically under-projects scoring. Efficiency is the only thing garbage time is kept out of.
Home court
The league home edge comes out of the possession-level fit; each venue then gets a deviation from it, shrunk by a factor estimated from the data. On a single season most teams land above 0.9 shrinkage, which is the correct answer — very few venues are genuinely distinguishable from average on one year.
Lineup chemistry
A unit's residual — what the five together do that the sum of their parts does not explain — is available, but shrunk hard: several hundred possessions before it moves a projection at all. At college sample sizes almost all apparent lineup synergy is noise. Fitted values should be small. If they are not, suspect a lineup reconstruction bug rather than a discovery.
This model's fitted numbers
| Quantity | Value |
|---|---|
| League points per possession | 1.0737 |
| Calibrated league ppp | 1.0707 |
| Home edge (ppp) | +0.0302 |
| Home edge (points/game) | +2.11 |
| League mean possessions | 69.8 |
| Home tempo effect | +0.17 |
| Residual sd per possession | 1.140 |
| Ridge lambda | 4000 |
| Players rated | 4752 |
| Home court method | within_team_conference |
Known limitations
- Ratings are opponent-adjusted through the RAPM design, not through an explicit strength-of-schedule pass. Early-season numbers in a network that has barely connected are correspondingly soft.
- Defensive on-floor personnel are approximated by each team's offensive lineup usage. That is standard, and wrong for teams with defensive specialists.
- No injury, rest, travel, or in-game foul trouble information. An injury has to be entered by hand, by passing the set of available players.
- Win probability is a normal approximation on the margin. It is fine near the middle and too confident in the tails.
- A
minutesbasis on the slate means the model had no lineup history for that team and fell back to a roster-and-minutes estimate. It is noticeably weaker than the lineup path. - Nothing here is compared to a market price. Until the margin RMSE is clearly below the closing spread's on the same games, assume the line knows more.