Projected vs actual profile
Season averages, axes scaled to an elite Euroleague starter level.
Model vs naive baseline
The naive forecaster projects the average of season and last-5 games. We publish the comparison for every stat, whichever side wins.
| Stat | Skill | Avg | Model MAE | Naive MAE |
|---|---|---|---|---|
| Points • | +11.1% | 6.39 | 3.98 | 4.06 |
| Rebounds • | +5.4% | 3.68 | 2.05 | 2.1 |
| Assists | -2.0% | 0.93 | 1.15 | 1.1 |
| 3PM | +2.0% | 0.79 | 0.61 | 0.66 |
| PIR • | +7.7% | 8.57 | 6.45 | 6.63 |
Skill = CRPS improvement of the full probability distribution over a naive rolling average, per game, measured on the same games. The dotted stats (points, rebounds, PIR) drive the headline score; assists and threes are shown for transparency.
Game by game: predicted vs actual
The shaded band is the model's 10th to 90th percentile before tip-off. Dots are what he actually did.
Every game he started
| Date | Opponent | Points | Rebounds | Assists | 3PM | PIR |
|---|---|---|---|---|---|---|
| 2026-04-29 | @ Real Madrid | 0 (6.6) | 1 (4.0) | 0 (1.1) | 0 (0.9) | -4 (8.4) |
| 2026-04-17 | @ AS Monaco | 13 (7.2) | 5 (3.7) | 2 (1.3) | 1 (1.1) | 18 (9.2) |
| 2026-04-09 | vs Olympiacos Piraeus | 11 (6.7) | 6 (3.1) | 1 (1.0) | 1 (1.0) | 12 (9.0) |
| 2026-04-07 | vs Fenerbahce Istanbul | 4 (7.2) | 2 (3.6) | 0 (1.1) | 0 (0.9) | 3 (9.7) |
| 2026-04-02 | vs Panathinaikos Athens | 10 (7.2) | 6 (3.4) | 0 (1.3) | 2 (1.1) | 12 (9.9) |
| 2026-03-27 | @ Baskonia Vitoria-Gasteiz | 6 (7.8) | 2 (3.6) | 0 (1.3) | 2 (1.0) | 6 (10.7) |
| 2026-03-24 | @ Real Madrid | 2 (6.6) | 2 (3.5) | 0 (0.9) | 0 (1.0) | -2 (9.5) |
| 2026-03-19 | vs Virtus Bologna | 12 (7.6) | 1 (3.7) | 0 (1.2) | 1 (1.0) | 18 (12.0) |
| 2026-03-17 | vs Paris Basketball | 11 (8.1) | 1 (4.2) | 1 (1.4) | 1 (1.2) | 8 (14.2) |
| 2026-03-13 | @ FC Barcelona | 3 (7.2) | 2 (3.9) | 0 (1.6) | 1 (1.1) | 1 (10.3) |
| 2026-02-26 | vs Olimpia Milano | 10 (8.0) | 5 (4.0) | 3 (1.4) | 2 (1.1) | 21 (11.3) |
| 2026-02-13 | @ Zalgiris Kaunas | 0 (7.6) | 4 (3.5) | 0 (1.6) | 0 (1.1) | 5 (9.8) |
| 2026-02-05 | vs Valencia Basket | 10 (7.4) | 4 (3.8) | 1 (1.4) | 1 (1.1) | 13 (10.9) |
| 2026-02-03 | @ Crvena Zvezda Belgrade | 9 (6.6) | 3 (3.5) | 4 (1.2) | 1 (1.0) | 16 (8.5) |
| 2026-01-29 | vs FC Bayern Munich | 3 (6.5) | 7 (3.6) | 3 (1.0) | 1 (0.9) | 9 (9.2) |
| 2026-01-23 | @ Partizan Belgrade | 7 (6.1) | 4 (4.0) | 0 (1.1) | 1 (1.0) | 4 (8.9) |
| 2026-01-16 | @ ASVEL Villeurbanne | 2 (7.1) | 2 (3.7) | 0 (1.0) | 0 (0.9) | 5 (9.7) |
| 2026-01-06 | vs Dubai Basketball | 2 (7.4) | 4 (3.8) | 0 (1.1) | 0 (1.2) | -1 (10.3) |
| 2025-12-30 | vs Zalgiris Kaunas | 4 (7.2) | 0 (3.7) | 0 (1.2) | 0 (1.1) | -1 (10.0) |
| 2025-12-23 | @ FC Bayern Munich | 0 (7.2) | 7 (4.0) | 0 (1.3) | 0 (1.0) | 4 (10.4) |
| 2025-12-16 | vs Crvena Zvezda Belgrade | 0 (7.3) | 11 (3.6) | 1 (1.2) | 0 (1.1) | 10 (9.4) |
| 2025-12-12 | @ Virtus Bologna | 7 (6.7) | 1 (3.5) | 0 (1.3) | 1 (0.8) | 6 (9.2) |
| 2025-12-04 | vs ASVEL Villeurbanne | 6 (7.6) | 3 (3.9) | 2 (1.1) | 0 (0.9) | 9 (10.6) |
| 2025-11-13 | @ Fenerbahce Istanbul | 2 (8.3) | 2 (4.1) | 0 (1.4) | 0 (1.1) | -1 (10.7) |
| 2025-11-11 | vs Baskonia Vitoria-Gasteiz | 11 (9.0) | 2 (4.3) | 1 (1.7) | 1 (1.2) | 11 (12.5) |
| 2025-11-06 | @ Dubai Basketball | 7 (7.7) | 8 (3.7) | 1 (1.7) | 1 (1.2) | 11 (10.6) |
| 2025-10-31 | @ Olympiacos Piraeus | 10 (7.4) | 4 (3.3) | 2 (1.4) | 1 (1.2) | 20 (9.9) |
| 2025-10-29 | vs Partizan Belgrade | 17 (7.0) | 4 (3.5) | 4 (1.4) | 3 (1.1) | 27 (9.0) |
Bold = actual, in brackets = model projection before the game. Only games he started are shown: our projections assume the starting five, so a scratch is not a model miss.
About this data
The 2025-26 season is a holdout backtest: the models were trained on Euroleague seasons up to 2022-23 and tuned on 2023-24, then predicted every 2025-26 game. The season is fully out-of-sample, with one caveat: historical features use realized lineups, while live production predicts from the expected starting five, so live accuracy can run marginally lower. PIR is the Euroleague's own performance index rating, the competition's summary number for a player's game, and the only projected stat here that can be negative. Projections and full distributions for today's games are on the Euroleague player projections page, team rating profiles on Euroleague team profiles, and the methodology behind every model on the methodology page.