Club soccer · Methodology

Model ledger

Model scoreboard

Served calibration rows for soccer_prop_lgbm. This is what the props board and player reads actually use. 3,037 player profiles across 8,406 archived matches · mode: in-season.

Model ledger

Held-out calibration · soccer_prop_lgbm

Temporal holdout with isotonic calibration. Skill is log-loss improvement vs per-player base rates (73,406 prop rows). Lower log-loss and Brier are better. ECE targets stay under 8%.

Updated Jul 17, 2026, UTC · deploy gate: validate_soccer_hubs.py fail-closed before publish

Market Rows Log loss Brier ECE Skill
Shots 2.5+shots_o25 73,406 0.232 0.068 1.00% +23.0 pp
SOT 0.5+sot_o05 73,406 0.413 0.133 0.66% +21.1 pp
Anytime goalanytime_goal 73,406 0.228 0.063 0.44% +20.1 pp
Shots 1.5+shots_o15 73,406 0.405 0.130 1.12% +20.0 pp
SOT 1.5+sot_o15 73,406 0.167 0.044 0.98% +17.6 pp
assists o05assists_o05 73,406 0.198 0.051 0.91% +16.1 pp
Tackles 1.5+tackles_o15 73,406 0.513 0.174 2.75% +12.8 pp
Fouls 0.5+fouls_o05 73,406 0.605 0.210 2.89% +12.6 pp

These metrics describe out-of-sample fit, not forward betting ROI. A calibrated model can still lose to the closing line. See methodology for how numbers reach the site.

Hub coverage

LeaguePlayersMatchesProp marketsFixtures hub
Premier League 636 1845 13 50
La Liga 636 1637 13 70
Bundesliga 535 1849 13 36
Serie A 640 1674 13 50
Ligue 1 590 1401 13 45

Forward-graded receipts: report card. Full process and limitations: methodology.