Methodology
We rate college basketball players and teams on an indexed 0–100 style scale that’s designed to be predictive, not just descriptive. Players are evaluated across offense and defense using tempo-free, opponent-aware statistics and then mapped through a non-linear scale into interpretable “skill ratings.” Team ratings are lineup-weighted so the units that actually play decide how strong a team is, spot-minute players don’t overly move team strength. Throughout the season we re‑calibrate the model to track form and keep the numbers aligned with on‑court reality. A coming layer of game grades (per-game evaluations) will feed back into player ratings so recent performance and context matter.
How Our Ratings Work
What we measure
- Players: An overall rating built from separate Offense and Defense indices. Each side is informed by tempo-free, opponent-adjusted indicators (shooting efficiency, usage, creation, glass, events, on-ball stops, etc.).
- Teams: A lineup-weighted team strength that emphasizes the combinations a coach actually plays. If you don’t play, you don’t move the needle much.
Data foundation
We aggregate public college hoops data from trusted sources and convert everything to a per-possession, pace-neutral basis. Player and team outputs are normalized for schedule strength and the lineup on the floor, so similar box lines can be scored differently when the context is tougher.
From raw stats to ratings (players)
Counting stats are adjusted for opportunity so early hot streaks or low‑minute bursts don’t swamp the model.
Each core indicator is converted into a percentile within Division I, establishing where a player sits relative to peers.
Percentiles are passed through a banded interpolation (think smooth buckets) that maps performance into a 0–100 style score. This produces stable, readable sub‑ratings without letting single outliers dominate.
Sub‑ratings roll up into Offense and Defense composites. We keep exact weights private; high‑level: shot quality/efficiency, creation/usage, on‑ball events, and finishing on offense; possession ending, event creation, and team defensive context on defense.
A single number summarizes a player’s total impact profile; offense/defense sub‑ratings stay visible for nuance.
How we build team ratings
- Lineup‑weighted aggregation: Team strength is computed from combinations that actually play. High‑frequency lineups carry most of the weight; fringe minutes are capped.
- Opponent adjustment: Performance is interpreted through who you faced and who you played with.
- Availability & recency: Numbers reflect who is expected to play now and give modest weight to recent form. If rotations tighten or injuries hit, ratings shift accordingly.
- Pace neutrality: Everything is per‑possession so fast teams aren’t penalized and slow teams aren’t inflated.
Continuous calibration (why numbers move)
We routinely back‑test the model against out‑of‑sample games and re‑tune scaling bands and internal weights to keep things predictive. When evidence shows the model is too optimistic/pessimistic about a certain profile (e.g., ultra‑high‑usage guards, switch‑big rim deterrence), we nudge parameters. Think of it as a living metric that stays anchored but learns.
Upcoming: Game Grades (human + model feedback loop)
During the season we add per‑game grades for players, a layer that captures things box scores and simple play‑by‑play can miss (decision quality, rotations, advantage creation, match‑up difficulty, role changes). Grades feed into ratings via a conservative decay curve: recent games move you more than old ones, but no single night rewrites a season.
What this is (and isn’t)
Is
- Transparent-to-use, predictive index blending skill indicators, usage/role, and context
- Lineup-aware at the team level
- Robust to small-sample noise
Isn’t
- A pure box score sum
- A vibes score
- A static season‑end trophy, ratings can move with lineups and roles
How to read it (quick tips)
- Check Offense and Defense separately, two players with the same overall can help in very different ways.
- For teams, remember it’s lineup‑weighted: rotations matter. A star returning or a bench unit getting cut can change the number.
- Use the numbers to confirm what you see, or to flag what you might have missed. They’re a decision aid, not a verdict.