La Liga is usually framed as a two-horse race, but the numbers tell a subtler story: Real Madrid and Barcelona set the pace, Atlético hover in between, and a tactical, low-scoring mid-table makes goal totals and margins tighter than in England or Germany. Our Poisson goal model is built for exactly that scoring environment; combined with Elo ratings updated after every match, it re-simulates the remaining fixtures 10,000 times to put honest percentages on the title race, the top four and the relegation battle.
| Pos | Team | Pld | Pts | Proj Pts | Title % | Top 4 % | Europe % | Releg. % |
|---|---|---|---|---|---|---|---|---|
| 1.04 | FC Barcelona | 8 | 24 | 98 | 96.7% | 100.0% | 100.0% | 0% |
| 2.54 | Real Madrid CF | 8 | 18 | 81 | 2.0% | 98.7% | >99.9% | 0% |
| 2.81 | Club Atlético de Madrid | 8 | 19 | 79 | 1.3% | 97.7% | 99.9% | 0% |
| 4.05 | Real Betis Balompié | 8 | 19 | 71 | 0.1% | 77.8% | 96.7% | 0% |
| 6.54 | Sevilla FC | 8 | 14 | 60 | 0% | 9.8% | 59.1% | 0% |
| 6.66 | Deportivo Alavés | 8 | 11 | 59 | 0% | 9.5% | 56.9% | <0.1% |
| 7.97 | Athletic Club | 6 | 8 | 55 | 0% | 3.2% | 32.1% | 0.1% |
| 9.17 | Real Sociedad de Fútbol | 8 | 13 | 52 | 0% | 1.3% | 18.1% | 0.5% |
| 9.56 | RC Deportivo La Coruña | 8 | 10 | 51 | 0% | 0.9% | 14.3% | 0.6% |
| 10.29 | Villarreal CF | 8 | 8 | 49 | 0% | 0.5% | 10.0% | 1.0% |
| 11.27 | RCD Espanyol de Barcelona | 8 | 8 | 47 | 0% | 0.3% | 5.3% | 2.6% |
| 11.42 | RC Celta de Vigo | 8 | 8 | 47 | 0% | 0.2% | 4.9% | 2.7% |
| 13.96 | CA Osasuna | 8 | 8 | 42 | 0% | 0.1% | 0.9% | 12.3% |
| 14.17 | Levante UD | 7 | 6 | 41 | 0% | <0.1% | 0.8% | 14.1% |
| 14.2 | Rayo Vallecano de Madrid | 7 | 8 | 41 | 0% | <0.1% | 0.5% | 14.1% |
| 15.43 | Elche CF | 8 | 6 | 38 | 0% | <0.1% | 0.2% | 26.2% |
| 15.55 | Real Racing Club de Santander | 8 | 8 | 38 | 0% | 0% | 0.2% | 27.6% |
| 15.87 | Getafe CF | 8 | 8 | 37 | 0% | 0% | 0.1% | 30.8% |
| 18.36 | Valencia CF | 8 | 5 | 30 | 0% | 0% | <0.1% | 77.1% |
| 19.15 | Málaga CF | 8 | 4 | 27 | 0% | 0% | 0% | 90.1% |
The frozen projection from before matchday 1 — kept unchanged all season so you can judge how the model's pre-season read held up.
| Pos | Team | Pld | Pts | Proj Pts | Title % | Top 4 % | Europe % | Releg. % |
|---|---|---|---|---|---|---|---|---|
| 1.57 | FC Barcelona | 8 | 24 | 78 | 60.7% | 98.7% | 99.8% | 0% |
| 2.18 | Real Madrid CF | 8 | 18 | 74 | 31.6% | 94.9% | 98.5% | 0% |
| 4.47 | Valencia CF | 8 | 5 | 64 | 4.8% | 63.8% | 82.2% | 0.1% |
| 6.06 | Club Atlético de Madrid | 8 | 19 | 60 | 1.5% | 40.8% | 65.0% | 0.5% |
| 7.62 | Villarreal CF | 8 | 8 | 56 | 0.5% | 23.7% | 47.0% | 1.6% |
| 8.21 | Getafe CF | 8 | 8 | 55 | 0.4% | 19.5% | 40.8% | 2.1% |
| 9.3 | Rayo Vallecano de Madrid | 7 | 8 | 53 | 0.2% | 12.9% | 30.7% | 3.9% |
| 9.78 | Levante UD | 7 | 6 | 52 | 0.1% | 10.3% | 26.4% | 5.0% |
| 10.33 | RC Celta de Vigo | 8 | 8 | 51 | 0.1% | 8.5% | 22.3% | 6.6% |
| 10.55 | Real Betis Balompié | 8 | 19 | 51 | 0.1% | 8.2% | 21.6% | 7.2% |
| 12.33 | Real Sociedad de Fútbol | 8 | 13 | 48 | 0% | 3.3% | 10.9% | 14.2% |
| 12.48 | Deportivo Alavés | 8 | 11 | 48 | 0.1% | 3.5% | 10.8% | 15.1% |
| 12.79 | Elche CF | 8 | 6 | 47 | <0.1% | 2.9% | 9.3% | 16.3% |
| 13.36 | Málaga CF | 8 | 4 | 46 | <0.1% | 2.0% | 7.5% | 20.4% |
| 13.39 | Real Racing Club de Santander | 8 | 8 | 46 | <0.1% | 2.1% | 7.6% | 21.2% |
| 13.39 | RC Deportivo La Coruña | 8 | 10 | 46 | <0.1% | 1.8% | 7.3% | 20.5% |
| 14.11 | Athletic Club | 6 | 8 | 45 | 0% | 1.6% | 5.3% | 26.0% |
| 14.24 | Sevilla FC | 8 | 14 | 45 | <0.1% | 1.0% | 4.7% | 26.3% |
| 15.96 | RCD Espanyol de Barcelona | 8 | 8 | 41 | 0% | 0.5% | 2.0% | 43.8% |
| 17.86 | CA Osasuna | 8 | 8 | 37 | 0% | 0.1% | 0.4% | 69.1% |
Every club's current Elo — the same rating our model reads at predict time; higher = stronger, and it moves only with results.
| Rank | Club | Elo | Trend |
|---|---|---|---|
| 1 | FC Barcelona | 1837 | 36 |
| 2 | Barcelona | 1812 | 19 |
| 3 | Real Madrid | 1800 | 15 |
| 4 | Real Madrid CF | 1795 | 31 |
| 5 | Ath Madrid | 1708 | 10 |
| 6 | Villarreal | 1706 | 75 |
| 7 | Real Betis Balompié | 1696 | 67 |
| 8 | Ath Bilbao | 1693 | 17 |
| 9 | Club Atlético de Madrid | 1689 | 65 |
| 10 | Betis | 1636 | 11 |
| 11 | Villarreal CF | 1597 | 16 |
| 12 | Osasuna | 1593 | 39 |
| 13 | Celta | 1589 | 34 |
| 14 | Vallecano | 1573 | 38 |
| 15 | Valencia | 1573 | 5 |
| 16 | Rayo Vallecano de Madrid | 1557 | 9 |
| 17 | Real Sociedad de Fútbol | 1546 | 52 |
| 18 | Alaves | 1543 | 48 |
| 19 | Sevilla FC | 1533 | 15 |
| 20 | Getafe CF | 1533 | 22 |
| 21 | RC Celta de Vigo | 1530 | 8 |
| 22 | Sociedad | 1528 | 24 |
| 23 | Valencia CF | 1527 | 46 |
| 24 | Leganes | 1515 | 33 |
| 25 | Espanol | 1515 | 48 |
| 26 | Levante | 1515 | 46 |
| 27 | Deportivo Alavés | 1514 | 13 |
| 28 | Compostela | 1513 | 36 |
| 29 | RC Deportivo La Coruña | 1512 | 13 |
| 30 | Mallorca | 1510 | 37 |
| 31 | Levante UD | 1509 | 2 |
| 32 | Athletic Club | 1498 | 24 |
| 33 | Girona | 1496 | 9 |
| 34 | Real Racing Club de Santander | 1493 | 2 |
| 35 | Extremadura | 1492 | 6 |
| 36 | Sevilla | 1491 | 26 |
| 37 | RCD Mallorca | 1490 | 7 |
| 38 | Getafe | 1487 | 35 |
| 39 | Huesca | 1483 | 7 |
| 40 | Xerez | 1483 | 25 |
| 41 | Elche CF | 1480 | 14 |
| 42 | Girona FC | 1477 | 36 |
| 43 | Oviedo | 1476 | 19 |
| 44 | Cadiz | 1470 | 15 |
| 45 | Málaga CF | 1462 | 28 |
| 46 | RCD Espanyol de Barcelona | 1460 | 28 |
| 47 | Sp Gijon | 1457 | 41 |
| 48 | Merida | 1452 | 16 |
| 49 | Tenerife | 1450 | 16 |
| 50 | Elche | 1448 | 55 |
| 51 | CA Osasuna | 1446 | 20 |
| 52 | Eibar | 1440 | 20 |
| 53 | La Coruna | 1440 | 6 |
| 54 | Gimnastic | 1430 | 17 |
| 55 | Numancia | 1427 | 11 |
| 56 | Zaragoza | 1426 | 5 |
| 57 | Real Oviedo | 1420 | 53 |
| 58 | Almeria | 1420 | 25 |
| 59 | Lerida | 1419 | 60 |
| 60 | Recreativo | 1416 | 51 |
| 61 | Las Palmas | 1412 | 72 |
| 62 | Hercules | 1409 | 6 |
| 63 | Albacete | 1398 | 8 |
| 64 | Santander | 1383 | 33 |
| 65 | Murcia | 1381 | 38 |
| 66 | Malaga | 1381 | 23 |
| 67 | Granada | 1375 | 18 |
| 68 | Salamanca | 1364 | 27 |
| 69 | Cordoba | 1339 | 57 |
| 70 | Logrones | 1325 | 11 |
| 71 | Valladolid | 1310 | 39 |
71 clubs
The last completed season, for context while the new campaign is thin on games.
| Pos | Team | Pld | Pts | GD |
|---|---|---|---|---|
| 1 | FC Barcelona | 38 | 94 | +59 |
| 2 | Real Madrid CF | 38 | 86 | +42 |
| 3 | Villarreal CF | 38 | 72 | +26 |
| 4 | Club Atlético de Madrid | 38 | 69 | +18 |
| 5 | Real Betis Balompié | 38 | 60 | +11 |
| 6 | RC Celta de Vigo | 38 | 54 | +5 |
| 7 | Getafe CF | 38 | 51 | -6 |
| 8 | Rayo Vallecano de Madrid | 38 | 50 | -3 |
| 9 | Valencia CF | 38 | 49 | -9 |
| 10 | Real Sociedad de Fútbol | 38 | 46 | -2 |
| 11 | RCD Espanyol de Barcelona | 38 | 46 | -12 |
| 12 | Athletic Club | 38 | 45 | -15 |
| 13 | Elche CF | 38 | 43 | -8 |
| 14 | Deportivo Alavés | 38 | 43 | -12 |
| 15 | Sevilla FC | 38 | 43 | -14 |
| 16 | CA Osasuna | 38 | 42 | -6 |
| 17 | RCD Mallorca | 38 | 42 | -10 |
| 18 | Levante UD | 38 | 42 | -14 |
| 19 | Girona FC | 38 | 41 | -16 |
| 20 | Real Oviedo | 38 | 29 | -34 |
Every club carries an Elo rating that moves only with results — beat a stronger side and it rises, drop points to a weaker one and it falls. A Poisson goal model (the same engine behind our football totals and handicap predictions, with a shots-on-target-based xG proxy) turns the two teams' ratings into a full scoreline distribution for each remaining fixture.
We then play out the rest of the season 10,000 times, drawing a result for every fixture from those distributions and re-building the table each time. The percentages above are simple counts across those simulated seasons: how often a club finished first, in the top four, in a European spot, or in the relegation places.
The model only knows results and shot data — it cannot see transfers, injuries, managerial changes or squad depth until they show up in performances, so early-season projections lean heavily on last season's level. Probabilities are estimates, not promises: a 5% relegation chance still happens one season in twenty. We publish the projections in full; the value bets our model finds on individual matches are part of the paid plans and are never shown here.
3 settled value bets on La Liga matches so far.
Every club carries a results-driven Elo rating; a Poisson goal model turns both teams' ratings into a scoreline distribution for each remaining fixture. We play out the rest of the season 10,000 times and count how often each club wins the title, finishes in Europe, or gets relegated.
The pre-season projection is frozen shortly before matchday 1 and kept unchanged all season as a reference point. The live projection re-simulates nightly as results come in.
No — the model only knows results and shot data. Squad depth, managerial changes and injuries only show up once they show up in results, so early-season projections lean heavily on last season's level.
Yes — the same Elo and Poisson engine also powers our value bets on individual matches. This table projection is entirely free; the value bets on individual matches are part of the paid plans.