Soccer Update
Run date 2026-09-20 · fixtures for the next 7 days, the past week's grades, and rest-of-season forecasts for the top 5 leagues.
📅 Games this week
Bundesliga
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | Bayer 04 Leverkusen v RB Leipzig | 54% / 22% / 24% | Bayer 04 Leverkusen | 2–1 (9%) |
| 2026-09-20 | FC Schalke 04 v SV 07 Elversberg | 39% / 33% / 28% | FC Schalke 04 | 2–1 (8%) |
| 2026-09-20 | SC Paderborn 07 v TSG 1899 Hoffenheim | 21% / 23% / 56% | TSG 1899 Hoffenheim | 1–2 (8%) |
Championship
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | Norwich City FC v Bolton Wanderers FC | 57% / 23% / 20% | Norwich City FC | 1–0 (12%) |
| 2026-09-20 | Wolverhampton Wanderers FC v West Bromwich Albion FC | 62% / 23% / 15% | Wolverhampton Wanderers FC | 1–0 (12%) |
Premier League
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | AFC Bournemouth v Liverpool FC | 40% / 28% / 32% | AFC Bournemouth | 1–0 (8%) |
| 2026-09-20 | Fulham FC v Manchester United FC | 28% / 25% / 48% | Manchester United FC | 0–1 (9%) |
| 2026-09-20 | Leeds United FC v Crystal Palace FC | 46% / 28% / 26% | Leeds United FC | 1–0 (11%) |
| 2026-09-20 | Manchester City FC v Sunderland AFC | 79% / 13% / 9% | Manchester City FC | 2–0 (14%) |
La Liga
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | Club Atlético de Madrid v Real Madrid CF | 26% / 22% / 52% | Real Madrid CF | 0–1 (9%) |
| 2026-09-20 | Getafe CF v Málaga CF | 57% / 25% / 18% | Getafe CF | 1–0 (12%) |
| 2026-09-20 | RC Deportivo La Coruña v Real Betis Balompié | 26% / 26% / 47% | Real Betis Balompié | 0–1 (10%) |
| 2026-09-20 | Valencia CF v Real Sociedad de Fútbol | 40% / 30% / 30% | Valencia CF | 1–0 (10%) |
| 2026-09-20 | Villarreal CF v Levante UD | 59% / 23% / 18% | Villarreal CF | 1–0 (12%) |
Ligue 1
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | AJ Auxerre v Stade Brestois 29 | 32% / 34% / 34% | Stade Brestois 29 | 0–1 (8%) |
| 2026-09-20 | OGC Nice v Lille OSC | 25% / 29% / 46% | Lille OSC | 0–1 (10%) |
| 2026-09-20 | Olympique de Marseille v Paris Saint-Germain FC | 28% / 28% / 44% | Paris Saint-Germain FC | 0–1 (11%) |
Serie A
| Date | Match | H / D / A | Pick | Proj score |
|---|
| 2026-09-20 | AC Milan v US Lecce | 69% / 19% / 12% | AC Milan | 1–0 (16%) |
| 2026-09-20 | ACF Fiorentina v SSC Napoli | 30% / 27% / 42% | SSC Napoli | 0–1 (13%) |
| 2026-09-20 | Frosinone Calcio v Como 1907 | 17% / 21% / 62% | Como 1907 | 0–1 (13%) |
| 2026-09-20 | Juventus FC v Atalanta BC | 63% / 22% / 16% | Juventus FC | 1–0 (12%) |
| 2026-09-20 | Parma Calcio 1913 v Genoa CFC | 35% / 33% / 32% | Parma Calcio 1913 | 1–0 (11%) |
📊 This week against trend
22 fixtures · 39 clubs with enough history to compare. Each club is measured against its own mean in completed seasons before 2026-27, not against a league average.
The slate as a whole
| Metric | This week | Club norm | Diff | Direction |
|---|
| npxG conceded | 1.51 | 1.24 | +0.27 | ↑ worse |
| xG conceded | 1.61 | 1.36 | +0.25 | ↑ worse |
| Deep completions allowed | 6.83 | 5.88 | +0.94 | ↑ worse |
| PPDA (pressing) | 12.85 | 11.35 | +1.51 | ↑ worse |
| npxG created | 1.53 | 1.34 | +0.19 | ↑ better |
| Deep completions | 7.49 | 6.47 | +1.01 | ↑ better |
| xG created | 1.63 | 1.47 | +0.16 | ↑ better |
| xG per shot | 0.118 | 0.115 | +0.003 | ↑ better |
| Expected points | 1.41 | 1.46 | -0.05 | ↓ worse |
| Deep share | 0.519 | 0.524 | -0.004 | ↓ worse |
Furthest from their own norm
| Club | Metric | Now | Norm | Direction | Fixture |
|---|
| FC Schalke 04 | npxG conceded | 2.31 | 1.40 | ↑ worse | FC Schalke 04 v SV 07 Elversberg |
| Málaga CF | Deep completions allowed | 9.95 | 5.45 | ↑ worse | Getafe CF v Málaga CF |
| FC Schalke 04 | xG conceded | 2.40 | 1.53 | ↑ worse | FC Schalke 04 v SV 07 Elversberg |
| FC Schalke 04 | Deep completions allowed | 10.38 | 6.22 | ↑ worse | FC Schalke 04 v SV 07 Elversberg |
| Villarreal CF | xG per shot | 0.177 | 0.132 | ↑ better | Villarreal CF v Levante UD |
| US Lecce | xG per shot | 0.146 | 0.103 | ↑ better | AC Milan v US Lecce |
| Bayer 04 Leverkusen | Deep completions | 13.61 | 8.11 | ↑ better | Bayer 04 Leverkusen v RB Leipzig |
| US Lecce | npxG conceded | 2.28 | 1.57 | ↑ worse | AC Milan v US Lecce |
"Now" is the exponentially weighted form the model actually used, which early in a season still carries the back end of the last one. Rows are ranked by how large the gap is relative to how much clubs differ on that metric at all, so an xG swing and a PPDA swing are comparable. A club with fewer than 20 prior-season matches has no norm and is left out rather than compared against someone else's.
📈 Model performance
Rolling tracker
| Window | Graded | Pick accuracy | Log loss |
|---|
| Last 7 days | 29 | 69.0% | 0.8489 |
| Last 30 days | 246 | 49.2% | 1.0085 |
| Season to date | 246 | 49.2% | 1.0085 |
Season record by league
| League | Graded | Pick accuracy | Log loss |
|---|
| Bundesliga | 27 | 48.1% | 0.9547 |
| Championship | 70 | 44.3% | 1.0626 |
| Premier League | 39 | 43.6% | 1.0574 |
| La Liga | 48 | 52.1% | 0.9341 |
| Ligue 1 | 26 | 42.3% | 1.1321 |
| Serie A | 36 | 66.7% | 0.9008 |
Past week: 20/29 picks correct
| Date | League | Result | Pick | Log loss |
|---|
| ✅ | 2026-09-13 | Bundesliga | RB Leipzig 5–0 Hamburger SV | H | 0.36 |
| ✅ | 2026-09-13 | Bundesliga | SV 07 Elversberg 1–2 FC Bayern München | A | 0.49 |
| ✅ | 2026-09-13 | Championship | Sheffield United FC 0–1 Wolverhampton Wanderers FC | A | 0.97 |
| ✅ | 2026-09-13 | Premier League | Coventry City FC 0–5 Brighton & Hove Albion FC | A | 0.99 |
| ✅ | 2026-09-13 | Premier League | Manchester United FC 0–1 Manchester City FC | A | 0.80 |
| ❌ | 2026-09-13 | La Liga | Getafe CF 1–1 RC Deportivo La Coruña | H | 1.26 |
| ✅ | 2026-09-13 | La Liga | Levante UD 2–4 FC Barcelona | A | 0.40 |
| ❌ | 2026-09-13 | La Liga | RC Celta de Vigo 1–1 Málaga CF | H | 1.43 |
| ✅ | 2026-09-13 | La Liga | Real Sociedad de Fútbol 0–3 Club Atlético de Madrid | A | 0.82 |
| ❌ | 2026-09-13 | Ligue 1 | Le Mans FC 2–2 Racing Club de Lens | A | 1.26 |
| ✅ | 2026-09-13 | Ligue 1 | Stade Brestois 29 0–1 Paris Saint-Germain FC | A | 0.38 |
| ✅ | 2026-09-13 | Serie A | SSC Napoli 1–0 Bologna FC 1909 | H | 0.58 |
| ✅ | 2026-09-13 | Serie A | US Lecce 3–2 AC Monza | H | 0.89 |
| ❌ | 2026-09-13 | Serie A | US Sassuolo Calcio 3–2 Juventus FC | A | 1.63 |
| ✅ | 2026-09-14 | Premier League | Leeds United FC 4–1 Newcastle United FC | H | 0.85 |
| ❌ | 2026-09-14 | La Liga | Villarreal CF 1–2 Real Betis Balompié | H | 1.49 |
| ✅ | 2026-09-14 | Serie A | Como 1907 2–1 Parma Calcio 1913 | H | 0.31 |
| ✅ | 2026-09-14 | Serie A | FC Internazionale Milano 5–3 Udinese Calcio | H | 0.28 |
| ✅ | 2026-09-14 | Serie A | Torino FC 0–2 AS Roma | A | 0.47 |
| ❌ | 2026-09-15 | Championship | Bristol City FC 0–1 Lincoln City FC | H | 2.12 |
| ❌ | 2026-09-15 | Championship | Middlesbrough FC 2–2 Millwall FC | H | 1.28 |
| ❌ | 2026-09-15 | La Liga | Deportivo Alavés 0–1 Valencia CF | H | 1.46 |
| ✅ | 2026-09-15 | La Liga | Elche CF 2–3 Real Madrid CF | A | 0.39 |
| ✅ | 2026-09-15 | La Liga | Rayo Vallecano de Madrid 2–1 RCD Espanyol de Barcelona | H | 0.67 |
| ✅ | 2026-09-16 | La Liga | Club Atlético de Madrid 4–0 CA Osasuna | H | 0.49 |
| ✅ | 2026-09-16 | La Liga | FC Barcelona 7–2 Real Racing Club de Santander | H | 0.26 |
| ❌ | 2026-09-16 | La Liga | RC Deportivo La Coruña 0–1 Sevilla FC | H | 1.16 |
| ✅ | 2026-09-17 | La Liga | Málaga CF 1–3 Villarreal CF | A | 0.63 |
| ✅ | 2026-09-17 | La Liga | Real Betis Balompié 1–0 Getafe CF | H | 0.52 |
🔮 Final-table forecasts
Premier League — Arsenal FC 57% for the title
| Proj | Team | Pts | xPts | xPos | Title | UCL | UEL | Rel |
|---|
| 1 | Arsenal FC | 12 | 84.0 | 1.6 | 57% | 98% | 1% | <1% |
| 2 | Manchester City FC | 12 | 80.4 | 2.1 | 36% | 95% | 4% | <1% |
| 3 | Liverpool FC | 6 | 64.7 | 5.4 | 3% | 51% | 21% | <1% |
| 4 | Brighton & Hove Albion FC | 7 | 57.3 | 8.0 | 1% | 23% | 20% | 2% |
| 5 | Manchester United FC | 4 | 57.0 | 8.1 | 1% | 23% | 20% | 2% |
| 6 | Leeds United FC | 8 | 56.4 | 8.3 | 1% | 21% | 19% | 2% |
| 7 | Chelsea FC | 7 | 56.0 | 8.5 | 1% | 20% | 19% | 3% |
| 8 | Brentford FC | 6 | 53.2 | 9.6 | <1% | 13% | 15% | 5% |
| 9 | AFC Bournemouth | 3 | 53.1 | 9.7 | <1% | 13% | 15% | 5% |
| 10 | Newcastle United FC | 5 | 51.9 | 10.2 | <1% | 11% | 14% | 6% |
| 11 | Aston Villa FC | 1 | 50.4 | 10.8 | <1% | 9% | 12% | 9% |
| 12 | Nottingham Forest FC | 5 | 50.2 | 10.9 | <1% | 8% | 11% | 9% |
| 13 | Everton FC | 6 | 49.6 | 11.2 | <1% | 7% | 11% | 10% |
| 14 | Crystal Palace FC | 3 | 43.0 | 14.0 | <1% | 2% | 4% | 25% |
| 15 | Fulham FC | 1 | 41.9 | 14.4 | <1% | 2% | 3% | 29% |
| 16 | Sunderland AFC | 4 | 41.3 | 14.7 | <1% | 1% | 3% | 31% |
| 17 | Ipswich Town FC | 6 | 40.9 | 14.9 | <1% | 1% | 3% | 32% |
| 18 | Tottenham Hotspur FC | 2 | 39.6 | 15.3 | <1% | 1% | 2% | 37% |
| 19 | Hull City AFC | 8 | 38.6 | 15.8 | <1% | <1% | 1% | 41% |
| 20 | Coventry City FC | 0 | 36.2 | 16.5 | <1% | <1% | 1% | 51% |
Bundesliga — FC Bayern München 65% for the title
| Proj | Team | Pts | xPts | xPos | Title | UCL | UEL | Rel |
|---|
| 1 | FC Bayern München | 7 | 73.3 | 1.6 | 65% | 97% | 2% | <1% |
| 2 | Borussia Dortmund | 9 | 65.1 | 3.1 | 20% | 81% | 11% | <1% |
| 3 | Bayer 04 Leverkusen | 4 | 56.6 | 5.5 | 5% | 47% | 22% | 1% |
| 4 | RB Leipzig | 6 | 54.9 | 6.1 | 3% | 40% | 22% | 2% |
| 5 | VfB Stuttgart | 3 | 53.3 | 6.8 | 2% | 33% | 22% | 2% |
| 6 | SC Freiburg | 9 | 52.3 | 7.2 | 2% | 29% | 20% | 3% |
| 7 | SV 07 Elversberg | 6 | 47.1 | 9.3 | 1% | 14% | 15% | 8% |
| 8 | FC Augsburg | 7 | 46.8 | 9.5 | <1% | 13% | 15% | 9% |
| 9 | TSG 1899 Hoffenheim | 3 | 46.4 | 9.6 | <1% | 12% | 14% | 10% |
| 10 | 1. FSV Mainz 05 | 4 | 45.2 | 10.1 | <1% | 10% | 13% | 12% |
| 11 | Eintracht Frankfurt | 4 | 44.4 | 10.5 | <1% | 8% | 11% | 14% |
| 12 | SC Paderborn 07 | 1 | 41.2 | 11.8 | <1% | 5% | 8% | 23% |
| 13 | SV Werder Bremen | 4 | 40.2 | 12.3 | <1% | 3% | 6% | 26% |
| 14 | FC Schalke 04 | 4 | 39.5 | 12.6 | <1% | 3% | 6% | 28% |
| 15 | 1. FC Köln | 4 | 38.5 | 13.0 | <1% | 2% | 5% | 32% |
| 16 | Hamburger SV | 0 | 37.3 | 13.4 | <1% | 2% | 4% | 38% |
| 17 | Borussia Mönchengladbach | 0 | 35.7 | 14.1 | <1% | 1% | 3% | 44% |
| 18 | 1. FC Union Berlin | 1 | 34.7 | 14.4 | <1% | 1% | 2% | 49% |
La Liga — FC Barcelona 64% for the title
| Proj | Team | Pts | xPts | xPos | Title | UCL | UEL | Rel |
|---|
| 1 | FC Barcelona | 18 | 88.6 | 1.5 | 64% | 100% | <1% | <1% |
| 2 | Real Madrid CF | 15 | 83.6 | 2.0 | 30% | 99% | 1% | <1% |
| 3 | Club Atlético de Madrid | 13 | 72.9 | 3.5 | 4% | 83% | 13% | <1% |
| 4 | Real Betis Balompié | 15 | 68.4 | 4.4 | 1% | 64% | 24% | <1% |
| 5 | Villarreal CF | 5 | 57.9 | 7.4 | <1% | 17% | 32% | 1% |
| 6 | Athletic Club | 7 | 54.6 | 8.8 | <1% | 11% | 24% | 3% |
| 7 | Sevilla FC | 13 | 53.2 | 9.3 | <1% | 7% | 21% | 3% |
| 8 | Real Sociedad de Fútbol | 7 | 50.5 | 10.5 | <1% | 4% | 15% | 6% |
| 9 | Rayo Vallecano de Madrid | 7 | 49.5 | 11.0 | <1% | 4% | 13% | 8% |
| 10 | Deportivo Alavés | 10 | 47.5 | 11.9 | <1% | 2% | 9% | 10% |
| 11 | Real Racing Club de Santander | 7 | 46.5 | 12.4 | <1% | 2% | 8% | 13% |
| 12 | Valencia CF | 4 | 45.7 | 12.7 | <1% | 1% | 7% | 15% |
| 13 | RC Celta de Vigo | 4 | 45.6 | 12.7 | <1% | 1% | 7% | 15% |
| 14 | Levante UD | 5 | 45.6 | 12.7 | <1% | 1% | 7% | 15% |
| 15 | RCD Espanyol de Barcelona | 7 | 45.6 | 12.8 | <1% | 1% | 6% | 15% |
| 16 | CA Osasuna | 7 | 45.4 | 12.8 | <1% | 1% | 6% | 15% |
| 17 | Getafe CF | 5 | 42.9 | 14.0 | <1% | 1% | 4% | 23% |
| 18 | RC Deportivo La Coruña | 9 | 41.6 | 14.6 | <1% | <1% | 2% | 28% |
| 19 | Elche CF | 2 | 37.9 | 16.1 | <1% | <1% | 1% | 45% |
| 20 | Málaga CF | 3 | 28.6 | 18.9 | <1% | <1% | <1% | 85% |
Serie A — FC Internazionale Milano 66% for the title
| Proj | Team | Pts | xPts | xPos | Title | UCL | UEL | Rel |
|---|
| 1 | FC Internazionale Milano | 12 | 86.3 | 1.6 | 66% | 97% | 3% | <1% |
| 2 | AS Roma | 12 | 76.8 | 3.2 | 17% | 78% | 15% | <1% |
| 3 | SSC Napoli | 6 | 69.4 | 5.0 | 4% | 48% | 26% | <1% |
| 4 | AC Milan | 8 | 68.3 | 5.3 | 4% | 43% | 27% | <1% |
| 5 | Juventus FC | 7 | 68.2 | 5.3 | 4% | 42% | 28% | <1% |
| 6 | Como 1907 | 10 | 65.9 | 5.9 | 2% | 33% | 27% | <1% |
| 7 | Atalanta BC | 6 | 64.7 | 6.3 | 2% | 29% | 27% | <1% |
| 8 | SS Lazio | 10 | 63.6 | 6.6 | 1% | 25% | 25% | <1% |
| 9 | US Sassuolo Calcio | 7 | 48.9 | 11.3 | <1% | 2% | 5% | 5% |
| 10 | Bologna FC 1909 | 1 | 48.8 | 11.4 | <1% | 2% | 5% | 5% |
| 11 | ACF Fiorentina | 3 | 46.5 | 12.2 | <1% | 1% | 3% | 8% |
| 12 | Udinese Calcio | 4 | 44.9 | 12.8 | <1% | 1% | 2% | 10% |
| 13 | Cagliari Calcio | 9 | 44.9 | 12.8 | <1% | 1% | 2% | 9% |
| 14 | Torino FC | 3 | 42.1 | 13.8 | <1% | <1% | 1% | 16% |
| 15 | Frosinone Calcio | 7 | 40.8 | 14.2 | <1% | <1% | 1% | 19% |
| 16 | Genoa CFC | 1 | 36.7 | 15.7 | <1% | <1% | <1% | 35% |
| 17 | US Lecce | 6 | 36.5 | 15.8 | <1% | <1% | <1% | 35% |
| 18 | Parma Calcio 1913 | 1 | 33.8 | 16.6 | <1% | <1% | <1% | 47% |
| 19 | Venezia FC | 0 | 32.5 | 17.0 | <1% | <1% | <1% | 53% |
| 20 | AC Monza | 1 | 31.5 | 17.3 | <1% | <1% | <1% | 58% |
Ligue 1 — Paris Saint-Germain FC 55% for the title
| Proj | Team | Pts | xPts | xPos | Title | UCL | UEL | Rel |
|---|
| 1 | Paris Saint-Germain FC | 5 | 70.9 | 1.9 | 55% | 94% | 5% | <1% |
| 2 | Lille OSC | 10 | 62.1 | 4.1 | 14% | 65% | 18% | <1% |
| 3 | AS Monaco FC | 10 | 61.2 | 4.3 | 13% | 61% | 19% | <1% |
| 4 | Stade Rennais FC 1901 | 10 | 57.4 | 5.5 | 6% | 44% | 23% | <1% |
| 5 | Olympique Lyonnais | 8 | 56.4 | 5.8 | 5% | 39% | 24% | <1% |
| 6 | Racing Club de Lens | 4 | 53.1 | 6.9 | 2% | 27% | 22% | 1% |
| 7 | RC Strasbourg Alsace | 7 | 52.9 | 7.0 | 2% | 25% | 23% | 1% |
| 8 | Olympique de Marseille | 3 | 49.6 | 8.3 | 1% | 15% | 18% | 3% |
| 9 | Paris FC | 8 | 49.5 | 8.3 | 1% | 15% | 17% | 3% |
| 10 | FC Lorient | 5 | 44.6 | 10.2 | <1% | 6% | 10% | 8% |
| 11 | Stade Brestois 29 | 5 | 41.5 | 11.4 | <1% | 3% | 7% | 14% |
| 12 | Toulouse FC | 2 | 40.2 | 11.9 | <1% | 2% | 5% | 17% |
| 13 | OGC Nice | 2 | 36.7 | 13.2 | <1% | 1% | 3% | 28% |
| 14 | ESTAC Troyes | 4 | 36.5 | 13.3 | <1% | 1% | 2% | 30% |
| 15 | AJ Auxerre | 3 | 35.5 | 13.7 | <1% | 1% | 2% | 34% |
| 16 | Angers SCO | 4 | 32.7 | 14.7 | <1% | <1% | 1% | 47% |
| 17 | Havre AC | 2 | 31.7 | 15.0 | <1% | <1% | 1% | 52% |
| 18 | Le Mans FC | 3 | 29.8 | 15.5 | <1% | <1% | <1% | 61% |
Rest-of-season Monte Carlo (30,000 replays of the remaining fixtures with live in-sim Elo). Proj = projected finish ordered by expected position; xPts / xPos = expected points and position; UCL = top 4, UEL = 5th–6th, Rel = bottom 3.
🇺🇸 MLS — Shield, playoffs and MLS Cup
Eastern Conference — Inter Miami CF 28% to reach MLS Cup
| Seed | Team | Pts | xPts | Playoffs | 1 seed | Conf | Cup | Shield |
|---|
| 1.1 | Nashville SC | 53 | 69.7 | 100% | 88% | 26% | 16% | 72% |
| 2.2 | Inter Miami CF | 44 | 62.4 | 100% | 11% | 28% | 16% | 8% |
| 4.0 | Chicago Fire FC | 39 | 55.1 | 100% | 1% | 10% | 5% | <1% |
| 4.6 | Charlotte FC | 39 | 53.2 | 99% | <1% | 10% | 5% | <1% |
| 4.7 | New England Revolution | 40 | 52.5 | 99% | <1% | 6% | 2% | <1% |
| 6.8 | FC Cincinnati | 31 | 48.0 | 89% | <1% | 6% | 3% | <1% |
| 7.7 | Orlando City SC | 31 | 45.7 | 78% | <1% | 4% | 2% | <1% |
| 8.0 | Philadelphia Union | 30 | 45.0 | 75% | <1% | 5% | 2% | <1% |
| 8.8 | New York City FC | 29 | 43.7 | 63% | <1% | 3% | 1% | <1% |
| 10.7 | Toronto FC | 29 | 40.5 | 30% | <1% | 1% | <1% | <1% |
| 11.0 | D.C. United | 28 | 39.8 | 25% | <1% | <1% | <1% | <1% |
| 11.1 | New York Red Bulls | 27 | 39.3 | 24% | <1% | 1% | <1% | <1% |
| 11.9 | Columbus Crew | 23 | 37.1 | 14% | <1% | 1% | <1% | <1% |
| 13.5 | Atlanta United FC | 22 | 33.2 | 3% | <1% | <1% | <1% | <1% |
| 14.1 | CF Montréal | 21 | 31.7 | 1% | <1% | <1% | <1% | <1% |
Western Conference — Vancouver Whitecaps FC 30% to reach MLS Cup
| Seed | Team | Pts | xPts | Playoffs | 1 seed | Conf | Cup | Shield |
|---|
| 1.4 | Vancouver Whitecaps FC | 46 | 64.2 | 100% | 76% | 30% | 17% | 19% |
| 3.1 | Houston Dynamo FC | 43 | 57.7 | 100% | 12% | 13% | 6% | 1% |
| 3.7 | FC Dallas | 40 | 56.4 | 99% | 7% | 13% | 6% | <1% |
| 4.1 | Los Angeles FC | 40 | 55.0 | 99% | 4% | 18% | 9% | <1% |
| 5.6 | St. Louis City SC | 38 | 52.1 | 94% | 1% | 7% | 3% | <1% |
| 5.7 | San Jose Earthquakes | 38 | 51.5 | 93% | 1% | 5% | 2% | <1% |
| 8.8 | Portland Timbers | 32 | 45.7 | 61% | <1% | 3% | 1% | <1% |
| 9.0 | Colorado Rapids | 32 | 45.0 | 56% | <1% | 2% | 1% | <1% |
| 9.5 | Real Salt Lake | 29 | 44.4 | 48% | <1% | 2% | 1% | <1% |
| 9.8 | San Diego FC | 30 | 44.0 | 45% | <1% | 2% | 1% | <1% |
| 9.9 | Seattle Sounders FC | 27 | 44.0 | 43% | <1% | 2% | 1% | <1% |
| 10.2 | Minnesota United FC | 29 | 43.5 | 37% | <1% | 2% | 1% | <1% |
| 11.6 | LA Galaxy | 29 | 40.7 | 17% | <1% | 1% | <1% | <1% |
| 12.9 | Austin FC | 26 | 37.8 | 6% | <1% | <1% | <1% | <1% |
| 14.9 | Sporting Kansas City | 15 | 25.5 | <1% | <1% | <1% | <1% | <1% |
153 regular-season matches left, replayed 20,000 times with live in-sim Elo, then the full playoff bracket each time. Seed = expected conference finish; 1 seed = finishing top of the conference; Conf = reaching MLS Cup; Shield = best record in the league. MLS publishes no machine-readable fixture list, so the run-in is reconstructed from the league's format: 128 conference fixtures are exact, and the 25 cross-conference ones are known only as per-club home/away counts, so every replay draws its own pairing of them.
Glued club Elo (top-5 leagues + UEFA cross-play) with a squad-economics outcome model · Can Tre Beat Vegas · whosyurgoat.app/vegas/soccer