Football Club Profiles
ELO rating trajectories, Monte Carlo season forecasts and model predictability for 246 clubs across 12 European leagues.
| Club | League | ELO ▾ | ELO pos | Predictability | Winner acc |
|---|---|---|---|---|---|
| Roma | Serie A | 1596 | #1 | On script | 74.2% (31) |
| Lazio | Serie A | 1595 | #2 | Chaos club | 48.4% (31) |
| Inter | Serie A | 1595 | #3 | On script | 77.4% (31) |
| Milan | Serie A | 1566 | #4 | Chaos club | 48.3% (29) |
| Cagliari | Serie A | 1566 | #5 | Chaos club | 41.9% (31) |
| Como | Serie A | 1546 | #6 | On script | 63.3% (30) |
| Juventus | Serie A | 1542 | #7 | In line | 48.4% (31) |
| Napoli | Serie A | 1529 | #8 | In line | 56.7% (30) |
| Frosinone | Serie A | 1518 | #9 | - | - |
| Sassuolo | Serie A | 1496 | #10 | In line | 50.0% (30) |
| Atalanta | Serie A | 1484 | #11 | Chaos club | 43.3% (30) |
| Torino | Serie A | 1478 | #12 | In line | 61.3% (31) |
| Bologna | Serie A | 1471 | #13 | Chaos club | 51.6% (31) |
| Monza | Serie A | 1451 | #14 | - | - |
| Parma | Serie A | 1447 | #15 | Chaos club | 35.5% (31) |
| Lecce | Serie A | 1446 | #16 | On script | 56.7% (30) |
| Udinese | Serie A | 1442 | #17 | Chaos club | 32.3% (31) |
| Genoa | Serie A | 1432 | #18 | In line | 51.6% (31) |
| Fiorentina | Serie A | 1428 | #19 | Chaos club | 38.7% (31) |
| Venezia | Serie A | 1372 | #20 | - | - |
| Dortmund | Bundesliga | 1579 | #1 | On script | 57.7% (26) |
| Freiburg | Bundesliga | 1578 | #2 | In line | 57.7% (26) |
| Bayern Munich | Bundesliga | 1568 | #3 | On script | 77.8% (27) |
| Leverkusen | Bundesliga | 1559 | #4 | In line | 53.8% (26) |
| Werder Bremen | Bundesliga | 1531 | #5 | In line | 64.0% (25) |
| Augsburg | Bundesliga | 1528 | #6 | Chaos club | 50.0% (26) |
| RB Leipzig | Bundesliga | 1520 | #7 | On script | 73.1% (26) |
| Stuttgart | Bundesliga | 1495 | #8 | In line | 57.7% (26) |
| Schalke 04 | Bundesliga | 1494 | #9 | - | - |
| Elversberg | Bundesliga | 1489 | #10 | - | - |
| Mainz | Bundesliga | 1488 | #11 | Chaos club | 46.2% (26) |
| Eintracht Frankfurt | Bundesliga | 1483 | #12 | In line | 57.7% (26) |
| Hamburg | Bundesliga | 1481 | #13 | In line | 53.8% (26) |
| FC Köln | Bundesliga | 1481 | #14 | - | 50.0% (2) |
| Union Berlin | Bundesliga | 1453 | #15 | Chaos club | 32.0% (25) |
| Paderborn | Bundesliga | 1446 | #16 | - | - |
| Hoffenheim | Bundesliga | 1427 | #17 | In line | 64.0% (25) |
| Borussia Mönchengladbach | Bundesliga | 1400 | #18 | In line | 52.0% (25) |
| Manchester City | Premier League | 1627 | #1 | On script | 66.7% (27) |
| Brighton | Premier League | 1585 | #2 | In line | 42.9% (28) |
| Arsenal | Premier League | 1580 | #3 | On script | 71.4% (28) |
| Brentford | Premier League | 1544 | #4 | In line | 53.6% (28) |
| Everton | Premier League | 1536 | #5 | In line | 42.9% (28) |
| Leeds | Premier League | 1527 | #6 | In line | 35.7% (28) |
| Chelsea | Premier League | 1523 | #7 | In line | 44.4% (27) |
| Liverpool | Premier League | 1520 | #8 | Chaos club | 53.6% (28) |
| Hull | Premier League | 1519 | #9 | - | - |
| Newcastle | Premier League | 1494 | #10 | Chaos club | 46.4% (28) |
| Ipswich | Premier League | 1489 | #11 | - | - |
| Manchester United | Premier League | 1480 | #12 | In line | 46.4% (28) |
| Coventry | Premier League | 1479 | #13 | - | - |
| Crystal Palace | Premier League | 1475 | #14 | On script | 50.0% (28) |
| Aston Villa | Premier League | 1462 | #15 | In line | 39.3% (28) |
| Nottingham Forest | Premier League | 1441 | #16 | In line | 46.4% (28) |
| Bournemouth | Premier League | 1441 | #17 | Chaos club | 26.9% (26) |
| Sunderland | Premier League | 1440 | #18 | Chaos club | 42.9% (28) |
| Tottenham | Premier League | 1424 | #19 | Chaos club | 44.4% (27) |
| Fulham | Premier League | 1416 | #20 | On script | 63.0% (27) |
| Barcelona | La Liga | 1663 | #1 | On script | 83.3% (30) |
| Atlético Madrid | La Liga | 1612 | #2 | On script | 66.7% (30) |
| Real Betis | La Liga | 1586 | #3 | Chaos club | 50.0% (30) |
| Real Madrid | La Liga | 1572 | #4 | In line | 66.7% (30) |
| Sevilla | La Liga | 1530 | #5 | In line | 55.2% (29) |
| Real Sociedad | La Liga | 1520 | #6 | Chaos club | 40.0% (30) |
| Athletic Bilbao | La Liga | 1509 | #7 | In line | 46.7% (30) |
| La Coruna | La Liga | 1494 | #8 | - | - |
| Rayo Vallecano | La Liga | 1492 | #9 | Chaos club | 43.3% (30) |
| Villarreal | La Liga | 1483 | #10 | On script | 55.2% (29) |
| Alaves | La Liga | 1479 | #11 | Chaos club | 40.0% (30) |
| Celta Vigo | La Liga | 1473 | #12 | Chaos club | 43.3% (30) |
| Getafe | La Liga | 1472 | #13 | In line | 48.3% (29) |
| Levante | La Liga | 1464 | #14 | In line | 58.6% (29) |
| Santander | La Liga | 1457 | #15 | - | - |
| Osasuna | La Liga | 1452 | #16 | In line | 51.7% (29) |
| Elche | La Liga | 1451 | #17 | On script | 56.7% (30) |
| Espanyol | La Liga | 1448 | #18 | In line | 46.7% (30) |
| Valencia | La Liga | 1431 | #19 | In line | 46.7% (30) |
| Malaga | La Liga | 1412 | #20 | - | - |
| Monaco | Ligue 1 | 1579 | #1 | Chaos club | 33.3% (24) |
| Paris Saint-Germain | Ligue 1 | 1555 | #2 | On script | 66.7% (24) |
| Lille | Ligue 1 | 1551 | #3 | In line | 45.8% (24) |
| Rennes | Ligue 1 | 1549 | #4 | Chaos club | 40.0% (25) |
| Lyon | Ligue 1 | 1542 | #5 | On script | 58.3% (24) |
| Paris FC | Ligue 1 | 1540 | #6 | - | 30.0% (10) |
| Lorient | Ligue 1 | 1505 | #7 | Chaos club | 21.7% (23) |
| Nice | Ligue 1 | 1501 | #8 | Chaos club | 37.5% (24) |
| Brest | Ligue 1 | 1497 | #9 | In line | 52.2% (23) |
| Strasbourg | Ligue 1 | 1497 | #10 | In line | 39.1% (23) |
| Lens | Ligue 1 | 1488 | #11 | On script | 62.5% (24) |
| Le Mans | Ligue 1 | 1482 | #12 | - | - |
| Toulouse | Ligue 1 | 1476 | #13 | In line | 48.0% (25) |
| Marseille | Ligue 1 | 1473 | #14 | In line | 54.2% (24) |
| Angers | Ligue 1 | 1469 | #15 | On script | 62.5% (24) |
| Auxerre | Ligue 1 | 1457 | #16 | On script | 50.0% (24) |
| Troyes | Ligue 1 | 1420 | #17 | - | - |
| Le Havre | Ligue 1 | 1419 | #18 | In line | 41.7% (24) |
| Southampton | Championship | 1665 | #1 | - | 75.0% (4) |
| Swansea | Championship | 1656 | #2 | - | 50.0% (4) |
| West Ham | Championship | 1651 | #3 | - | 50.0% (4) |
| Middlesbrough | Championship | 1638 | #4 | - | 60.0% (5) |
| Burnley | Championship | 1587 | #5 | - | 50.0% (4) |
| Birmingham | Championship | 1585 | #6 | - | 25.0% (4) |
| Wolves | Championship | 1577 | #7 | - | 75.0% (4) |
| West Brom | Championship | 1551 | #8 | - | 25.0% (4) |
| Millwall | Championship | 1539 | #9 | - | 0.0% (5) |
| Wrexham | Championship | 1525 | #10 | - | 25.0% (4) |
| QPR | Championship | 1517 | #11 | - | 25.0% (4) |
| Blackburn | Championship | 1514 | #12 | - | 0.0% (4) |
| Stoke | Championship | 1487 | #13 | - | 75.0% (4) |
| Bristol City | Championship | 1482 | #14 | - | 40.0% (5) |
| Portsmouth | Championship | 1482 | #15 | - | 50.0% (4) |
| Norwich | Championship | 1481 | #16 | - | 75.0% (4) |
| Sheffield United | Championship | 1472 | #17 | - | 100.0% (4) |
| Lincoln | Championship | 1457 | #18 | - | 40.0% (5) |
| Charlton | Championship | 1455 | #19 | - | 25.0% (4) |
| Derby | Championship | 1432 | #20 | - | 25.0% (4) |
| Bolton | Championship | 1410 | #21 | - | 25.0% (4) |
| Cardiff | Championship | 1409 | #22 | - | 50.0% (4) |
| Watford | Championship | 1368 | #23 | - | 75.0% (4) |
| Preston | Championship | 1350 | #24 | - | 25.0% (4) |
| Sheffield Wednesday | League One | 1635 | #1 | - | - |
| Oxford | League One | 1609 | #2 | - | - |
| Plymouth | League One | 1599 | #3 | In line | 41.5% (41) |
| Bradford | League One | 1565 | #4 | In line | 48.8% (41) |
| Huddersfield | League One | 1559 | #5 | In line | 48.8% (41) |
| Luton | League One | 1558 | #6 | In line | 42.5% (40) |
| Stockport | League One | 1551 | #7 | In line | 43.9% (41) |
| Leicester | League One | 1551 | #8 | - | - |
| Stevenage | League One | 1540 | #9 | In line | 53.7% (41) |
| Reading | League One | 1532 | #10 | In line | 39.0% (41) |
| Mansfield | League One | 1529 | #11 | Chaos club | 29.3% (41) |
| Cambridge | League One | 1499 | #12 | - | - |
| Doncaster | League One | 1480 | #13 | In line | 52.5% (40) |
| Burton | League One | 1463 | #14 | Chaos club | 31.7% (41) |
| Blackpool | League One | 1462 | #15 | In line | 53.7% (41) |
| Wycombe | League One | 1459 | #16 | In line | 48.8% (41) |
| Leyton Orient | League One | 1443 | #17 | In line | 43.9% (41) |
| Bromley | League One | 1442 | #18 | - | - |
| AFC Wimbledon | League One | 1432 | #19 | In line | 46.3% (41) |
| Barnsley | League One | 1425 | #20 | In line | 43.9% (41) |
| Peterboro | League One | 1411 | #21 | In line | 53.7% (41) |
| Milton Keynes Dons | League One | 1405 | #22 | - | - |
| Notts County | League One | 1399 | #23 | - | - |
| Wigan | League One | 1363 | #24 | In line | 46.3% (41) |
| Barnet | League Two | 1671 | #1 | - | 66.7% (3) |
| Salford | League Two | 1613 | #2 | - | 60.0% (5) |
| Chesterfield | League Two | 1574 | #3 | - | 20.0% (5) |
| Crewe | League Two | 1572 | #4 | - | 20.0% (5) |
| Exeter | League Two | 1554 | #5 | - | 60.0% (5) |
| Grimsby | League Two | 1522 | #6 | - | 40.0% (5) |
| Bristol Rvs | League Two | 1520 | #7 | - | 40.0% (5) |
| Walsall | League Two | 1508 | #8 | - | 25.0% (4) |
| Port Vale | League Two | 1507 | #9 | - | 66.7% (3) |
| Rotherham | League Two | 1507 | #10 | - | 20.0% (5) |
| Gillingham | League Two | 1506 | #11 | - | 40.0% (5) |
| Northampton | League Two | 1496 | #12 | - | 0.0% (3) |
| York | League Two | 1493 | #13 | - | 50.0% (4) |
| Newport County | League Two | 1485 | #14 | - | 20.0% (5) |
| Cheltenham | League Two | 1477 | #15 | - | 40.0% (5) |
| Fleetwood Town | League Two | 1470 | #16 | - | 40.0% (5) |
| Colchester | League Two | 1469 | #17 | - | 25.0% (4) |
| Rochdale | League Two | 1468 | #18 | - | 20.0% (5) |
| Shrewsbury | League Two | 1452 | #19 | - | 0.0% (5) |
| Accrington | League Two | 1440 | #20 | - | 40.0% (5) |
| Swindon | League Two | 1439 | #21 | - | 80.0% (5) |
| Oldham | League Two | 1420 | #22 | - | 0.0% (4) |
| Tranmere | League Two | 1418 | #23 | - | 40.0% (5) |
| Crawley Town | League Two | 1372 | #24 | - | 33.3% (3) |
| Castellon | Segunda División | 1642 | #1 | In line | 51.3% (37) |
| Almeria | Segunda División | 1637 | #2 | On script | 59.5% (37) |
| Eibar | Segunda División | 1629 | #3 | In line | 54.0% (37) |
| Mallorca | Segunda División | 1611 | #4 | - | - |
| Girona | Segunda División | 1590 | #5 | - | - |
| Real Oviedo | Segunda División | 1585 | #6 | - | - |
| Burgos | Segunda División | 1578 | #7 | In line | 46.0% (37) |
| Sabadell | Segunda División | 1575 | #8 | - | - |
| Las Palmas | Segunda División | 1547 | #9 | In line | 51.3% (37) |
| Sp Gijon | Segunda División | 1547 | #10 | In line | 51.3% (37) |
| Granada | Segunda División | 1522 | #11 | In line | 48.6% (37) |
| Celta B | Segunda División | 1489 | #12 | - | - |
| Andorra | Segunda División | 1489 | #13 | In line | 48.6% (37) |
| Eldense | Segunda División | 1485 | #14 | - | - |
| Valladolid | Segunda División | 1474 | #15 | In line | 43.2% (37) |
| Tenerife | Segunda División | 1473 | #16 | - | - |
| Cordoba | Segunda División | 1457 | #17 | In line | 48.6% (37) |
| Ceuta | Segunda División | 1452 | #18 | In line | 54.0% (37) |
| Leganes | Segunda División | 1445 | #19 | In line | 40.5% (37) |
| Sociedad B | Segunda División | 1416 | #20 | In line | 51.3% (37) |
| Albacete | Segunda División | 1401 | #21 | In line | 37.8% (37) |
| Cadiz | Segunda División | 1379 | #22 | In line | 51.3% (37) |
| Reims | Ligue 2 | 1632 | #1 | In line | 48.3% (29) |
| Red Star | Ligue 2 | 1615 | #2 | In line | 42.9% (28) |
| Saint-Étienne | Ligue 2 | 1610 | #3 | In line | 51.7% (29) |
| Metz | Ligue 2 | 1588 | #4 | - | - |
| Montpellier | Ligue 2 | 1579 | #5 | In line | 44.8% (29) |
| Annecy | Ligue 2 | 1552 | #6 | In line | 44.8% (29) |
| Dijon | Ligue 2 | 1529 | #7 | - | - |
| Rodez | Ligue 2 | 1509 | #8 | Chaos club | 17.2% (29) |
| Nancy | Ligue 2 | 1500 | #9 | In line | 34.5% (29) |
| Grenoble | Ligue 2 | 1498 | #10 | In line | 34.5% (29) |
| Nantes | Ligue 2 | 1471 | #11 | - | - |
| Pau FC | Ligue 2 | 1468 | #12 | In line | 37.9% (29) |
| Sochaux | Ligue 2 | 1443 | #13 | - | - |
| Clermont | Ligue 2 | 1436 | #14 | In line | 41.4% (29) |
| Dunkerque | Ligue 2 | 1427 | #15 | In line | 41.4% (29) |
| Guingamp | Ligue 2 | 1421 | #16 | In line | 31.0% (29) |
| Boulogne | Ligue 2 | 1404 | #17 | In line | 34.5% (29) |
| Laval | Ligue 2 | 1396 | #18 | In line | 44.8% (29) |
| Hertha | 2. Bundesliga | 1644 | #1 | In line | 48.3% (29) |
| Heidenheim | 2. Bundesliga | 1627 | #2 | - | - |
| Nurnberg | 2. Bundesliga | 1622 | #3 | In line | 37.9% (29) |
| St Pauli | 2. Bundesliga | 1592 | #4 | - | - |
| Wolfsburg | 2. Bundesliga | 1561 | #5 | - | - |
| Magdeburg | 2. Bundesliga | 1555 | #6 | In line | 58.6% (29) |
| Kaiserslautern | 2. Bundesliga | 1552 | #7 | In line | 51.7% (29) |
| Hannover | 2. Bundesliga | 1528 | #8 | Chaos club | 34.5% (29) |
| Bielefeld | 2. Bundesliga | 1495 | #9 | In line | 31.0% (29) |
| Cottbus | 2. Bundesliga | 1482 | #10 | - | - |
| Greuther Furth | 2. Bundesliga | 1469 | #11 | In line | 55.2% (29) |
| Bochum | 2. Bundesliga | 1462 | #12 | In line | 44.8% (29) |
| Darmstadt | 2. Bundesliga | 1460 | #13 | In line | 41.4% (29) |
| Dresden | 2. Bundesliga | 1450 | #14 | In line | 51.7% (29) |
| Holstein Kiel | 2. Bundesliga | 1449 | #15 | In line | 41.4% (29) |
| Braunschweig | 2. Bundesliga | 1444 | #16 | In line | 48.3% (29) |
| Osnabruck | 2. Bundesliga | 1435 | #17 | - | - |
| Karlsruhe | 2. Bundesliga | 1417 | #18 | In line | 58.6% (29) |
| Palermo | Serie B | 1668 | #1 | On script | 60.6% (33) |
| Mantova | Serie B | 1588 | #2 | In line | 51.5% (33) |
| Pisa | Serie B | 1583 | #3 | - | - |
| Modena | Serie B | 1540 | #4 | In line | 33.3% (33) |
| Cremonese | Serie B | 1534 | #5 | - | - |
| Avellino | Serie B | 1525 | #6 | In line | 42.4% (33) |
| Ascoli | Serie B | 1524 | #7 | - | - |
| Sudtirol | Serie B | 1505 | #8 | Chaos club | 30.3% (33) |
| Juve Stabia | Serie B | 1488 | #9 | In line | 51.5% (33) |
| Arezzo | Serie B | 1473 | #10 | - | - |
| Verona | Serie B | 1463 | #11 | - | - |
| Benevento | Serie B | 1462 | #12 | - | - |
| Padova | Serie B | 1460 | #13 | In line | 51.5% (33) |
| Virtus Entella | Serie B | 1460 | #14 | In line | 45.5% (33) |
| Vicenza | Serie B | 1445 | #15 | - | - |
| Empoli | Serie B | 1440 | #16 | In line | 42.4% (33) |
| Catanzaro | Serie B | 1435 | #17 | In line | 51.5% (33) |
| Cesena | Serie B | 1434 | #18 | In line | 42.4% (33) |
| Sampdoria | Serie B | 1430 | #19 | In line | 51.5% (33) |
| Carrarese | Serie B | 1414 | #20 | In line | 60.6% (33) |
ELO and league position come from the latest computed matchday. The predictability tier grades how easy a club's results are to forecast: we score every as-published match prediction like a weather forecast (confident and right earns the best grade, confident and wrong the worst) and compare the club's season average with its league's. "On script" clubs beat the league average clearly, "Chaos clubs" defy it. The tier needs at least 15 predicted matches. Winner accuracy is the share of predicted matches called correctly (sample in brackets). Full methodology.