EuroLeague Ratings

How it works

Rating

Every team gets a net rating: points per 100 possessions better than an average EuroLeague team on a neutral floor. A team at +6.0 would beat an average opponent by about 4.4 points in a 73-possession game.

The rating comes from a ridge regression over every game of the season, refit after each run. A win over a team that later turns out to be good counts for more on the next run. Every game of the season counts the same, a win counts for a little more than its margin, and each team starts from a share of last season's final rating.

Net rating and win %

Net rating has no ceiling and differences between teams turn into predicted margins. Win % is the same rating on a 0 to 100 scale: the chance of beating an average team on a neutral floor.

Win % does not pin the leader at 100, so a team's number does not move because another team had a good week.

Prediction

Expected margin is the rating difference scaled by the pace of the game, plus home court, missing players and a small matchup term. Recent form is shown on the ratings page but does not enter the prediction: in testing it added nothing the rating did not already know. The win probability is the normal distribution of that margin, using the spread of past prediction errors.

Predictions are updated until tip-off and then stay as they were, so the results table compares the score with what the model said beforehand.

Mid-season signings

The ratings only know a player through the games already played. Predictions add back half the value of players signed after those games were played, weighted by how many of those games they missed, and take out departed players the same way. Half was picked by cross-validation in both seasons; the gain is small, log-loss 0.6207 to 0.6197.

Absences

A player's value is his efficiency (PIR) per minute, blended with last season when he has few minutes. When he is out, his minutes go to a replacement-level player and the gap, in points, is taken off the team.

Availability is inferred from box scores: a rostered player missing from the last two games counts as out. The BasketNews injury report overrides the inference, and a hand-edited file overrides both.

Market comparison

The bookmaker line is the consensus of the bookmakers' moneylines with their margin removed, taken as the median across bookmakers. It is the last line seen before tip-off, taken 45 to 60 minutes before the game. The scorecard compares it with the model on the same games.

Season simulation

The odds come from 10,000 simulated seasons. Each run draws a strength for every team from its rating and uncertainty, plays the remaining regular-season games, ranks the table with EuroLeague tiebreakers, then plays the play-in, the best-of-five playoffs and the Final Four.

Backtest

Each round of 2023-24 to 2025-26 is predicted using only the games before it.

Backtest results
MeasureValue
accuracy0.6380
brier0.2162
games732
home win rate0.6284
log loss0.6197
margin mae9.0634
margin rmse11.5237