Football
Cesena
Catanzaro
44%
2.25
25%
3.93
30%
3.33
56%xG 2.9
59%1.70
11-07
Juve Stabia
Arezzo
55%
1.81
25%
4.08
20%
4.97
51%xG 2.7
52%1.92
11-07
Padova
Empoli
42%
2.40
27%
3.73
32%
3.17
51%xG 2.7
55%1.81
11-07
Pisa
Sudtirol
65%
1.54
21%
4.73
14%
7.18
55%xG 2.9
50%2.01
11-07
Mantova
Verona
39%
2.54
26%
3.80
34%
2.92
54%xG 2.8
58%1.73
11-07
Benevento
Avellino
42%
2.40
27%
3.64
31%
3.25
48%xG 2.6
53%1.89
11-08
Virtus Entella
Modena
37%
2.73
28%
3.56
35%
2.84
46%xG 2.5
52%1.92
11-08
Carrarese
Sampdoria
43%
2.31
28%
3.57
29%
3.49
45%xG 2.5
50%1.98
11-08
Vicenza
Cremonese
30%
3.36
26%
3.79
44%
2.28
52%xG 2.8
56%1.79
11-20
Verona
Cesena
64%
1.55
21%
4.75
15%
6.89
56%xG 2.9
52%1.94
11-21
Ascoli
Vicenza
58%
1.72
24%
4.18
18%
5.54
51%xG 2.7
50%1.98
11-21
Carrarese
Virtus Entella
41%
2.46
28%
3.55
31%
3.20
45%xG 2.5
51%1.96
11-21
Modena
Juve Stabia
50%
1.99
26%
3.81
24%
4.25
48%xG 2.6
51%1.95
11-21
Sampdoria
Benevento
43%
2.35
28%
3.56
29%
3.40
45%xG 2.5
51%1.97
11-21
Sudtirol
Cremonese
30%
3.32
28%
3.59
42%
2.38
46%xG 2.5
52%1.94
11-21
Catanzaro
Palermo
27%
3.75
24%
4.19
49%
2.02
61%xG 3.1
62%1.62
11-21
Empoli
Pisa
27%
3.71
26%
3.92
48%
2.10
54%xG 2.8
57%1.76
11-22
Avellino
Mantova
40%
2.48
26%
3.79
33%
3.00
53%xG 2.8
57%1.75
11-22
Arezzo
Padova
47%
2.14
26%
3.84
27%
3.67
52%xG 2.8
55%1.81
11-24
Juve Stabia
Catanzaro
54%
1.86
24%
4.12
22%
4.54
55%xG 2.9
55%1.80
11-24
Benevento
Empoli
51%
1.96
26%
3.90
23%
4.27
51%xG 2.7
53%1.89
11-24
Cesena
Ascoli
33%
3.02
28%
3.55
39%
2.58
46%xG 2.5
52%1.94
11-24
Palermo
Sudtirol
67%
1.48
20%
5.05
13%
7.81
58%xG 3.0
51%1.96
11-24
Vicenza
Carrarese
37%
2.68
27%
3.67
35%
2.83
50%xG 2.7
55%1.83
11-24
Virtus Entella
Verona
33%
2.99
28%
3.60
39%
2.58
47%xG 2.6
53%1.89
11-25
Cremonese
Avellino
49%
2.05
26%
3.84
25%
3.99
50%xG 2.7
53%1.87
11-25
Mantova
Arezzo
61%
1.63
22%
4.63
17%
5.87
59%xG 3.1
56%1.80
11-25
Padova
Sampdoria
36%
2.78
28%
3.57
36%
2.78
47%xG 2.5
52%1.91
11-25
Pisa
Modena
48%
2.08
26%
3.89
26%
3.83
52%xG 2.8
55%1.81
11-28
Ascoli
Virtus Entella
46%
2.15
28%
3.58
26%
3.90
44%xG 2.4
49%2.06
11-28
Carrarese
Juve Stabia
39%
2.54
28%
3.54
32%
3.09
45%xG 2.5
51%1.95
11-28
Empoli
Verona
26%
3.78
26%
3.86
48%
2.10
52%xG 2.8
55%1.81
11-28
Vicenza
Cesena
42%
2.35
26%
3.79
31%
3.21
52%xG 2.8
56%1.77
11-28
Palermo
Benevento
60%
1.67
22%
4.47
18%
5.68
57%xG 3.0
54%1.84
Nothing matches this filter. Pick another day or clear the search.
Premier League
| # | Team | Pts | Title | Top 4 | Relegated |
|---|---|---|---|---|---|
| 1 | Arsenal |
24 | 53% | 98% | – |
| 2 | Man City |
21 | 32% | 95% | – |
| 3 | Brighton |
19 | 12% | 85% | – |
| 4 | Bournemouth |
12 | 1% | 40% | – |
| 5 | Liverpool |
15 | 1% | 36% | – |
| 6 | Aston Villa |
12 | <1% | 21% | <1% |
| 7 | Chelsea |
16 | <1% | 9% | <1% |
| 8 | Brentford |
14 | – | 5% | 1% |
| 9 | Tottenham |
12 | – | 5% | 2% |
| 10 | Everton |
13 | – | 2% | 3% |
| 11 | Leeds |
11 | – | 2% | 4% |
| 12 | Fulham |
9 | – | <1% | 8% |
| 13 | Man United |
7 | – | <1% | 12% |
| 14 | Nott'm Forest |
6 | – | <1% | 14% |
| 15 | Newcastle |
11 | – | – | 22% |
| 16 | Ipswich |
11 | – | <1% | 26% |
| 17 | Coventry |
9 | – | – | 42% |
| 18 | Crystal Palace |
7 | – | – | 49% |
| 19 | Hull |
11 | – | – | 52% |
| 20 | Sunderland |
5 | – | – | 65% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Championship
| # | Team | Pts | Title | Promoted | Relegated |
|---|---|---|---|---|---|
| 1 | Middlesbrough |
28 | 40% | 63% | – |
| 2 | Southampton |
28 | 21% | 44% | – |
| 3 | West Ham |
23 | 21% | 44% | – |
| 4 | Birmingham |
26 | 10% | 26% | – |
| 5 | Wolves |
27 | 4% | 11% | – |
| 6 | Swansea |
26 | 2% | 6% | – |
| 7 | West Brom |
25 | <1% | 4% | – |
| 8 | Norwich |
18 | <1% | <1% | – |
| 9 | QPR |
21 | <1% | <1% | – |
| 10 | Portsmouth |
22 | <1% | <1% | – |
| 11 | Stoke |
26 | <1% | <1% | – |
| 12 | Millwall |
18 | – | <1% | <1% |
| 13 | Sheffield United |
22 | – | <1% | <1% |
| 14 | Wrexham |
17 | – | – | <1% |
| 15 | Bristol City |
18 | – | – | 1% |
| 16 | Cardiff |
15 | – | – | 2% |
| 17 | Blackburn |
18 | – | – | 3% |
| 18 | Bolton |
17 | – | – | 5% |
| 19 | Burnley |
10 | – | – | 15% |
| 20 | Lincoln |
15 | – | – | 19% |
| 21 | Watford |
14 | – | – | 24% |
| 22 | Charlton |
14 | – | – | 52% |
| 23 | Derby |
7 | – | – | 81% |
| 24 | Preston |
5 | – | – | 97% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
La Liga
| # | Team | Pts | Title | Top 4 | Relegated |
|---|---|---|---|---|---|
| 1 | Barcelona |
30 | 89% | >99% | – |
| 2 | Real Madrid |
27 | 11% | >99% | – |
| 3 | Ath Madrid |
28 | <1% | 97% | – |
| 4 | Betis |
23 | – | 57% | – |
| 5 | Sociedad |
19 | – | 30% | – |
| 6 | Ath Bilbao |
15 | – | 7% | <1% |
| 7 | Sevilla |
17 | – | 5% | <1% |
| 8 | Vallecano |
12 | – | 2% | 3% |
| 9 | Villarreal |
12 | – | <1% | 4% |
| 10 | Alaves |
12 | – | <1% | 5% |
| 11 | Elche |
10 | – | <1% | 6% |
| 12 | Levante |
10 | – | <1% | 7% |
| 13 | La Coruna |
14 | – | <1% | 8% |
| 14 | Celta |
12 | – | – | 13% |
| 15 | Espanol |
11 | – | – | 20% |
| 16 | Valencia |
9 | – | – | 28% |
| 17 | Osasuna |
11 | – | – | 30% |
| 18 | Getafe |
12 | – | – | 36% |
| 19 | Santander | 11 | – | – | 52% |
| 20 | Malaga |
5 | – | – | 86% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Bundesliga
| # | Team | Pts | Title | Top 4 | Relegated |
|---|---|---|---|---|---|
| 1 | Bayern Munich |
18 | 98% | >99% | – |
| 2 | Dortmund |
18 | 2% | 87% | – |
| 3 | RB Leipzig |
15 | <1% | 55% | – |
| 4 | Freiburg |
16 | <1% | 50% | – |
| 5 | Leverkusen |
13 | <1% | 48% | – |
| 6 | Werder Bremen |
15 | – | 22% | – |
| 7 | Stuttgart |
9 | – | 22% | – |
| 8 | Hoffenheim |
9 | – | 7% | <1% |
| 9 | Augsburg |
9 | – | 3% | 2% |
| 10 | Ein Frankfurt |
11 | – | 3% | 2% |
| 11 | Mainz |
10 | – | 2% | 2% |
| 12 | Elversberg |
13 | – | 1% | 3% |
| 13 | FC Koln |
9 | – | <1% | 9% |
| 14 | Hamburg |
9 | – | – | 22% |
| 15 | Paderborn |
9 | – | – | 26% |
| 16 | Union Berlin |
7 | – | – | 27% |
| 17 | M'gladbach |
4 | – | – | 53% |
| 18 | Schalke 04 |
6 | – | – | 54% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Serie A
| # | Team | Pts | Title | Top 4 | Relegated |
|---|---|---|---|---|---|
| 1 | Como |
23 | 71% | >99% | – |
| 2 | Inter |
25 | 21% | 97% | – |
| 3 | Roma |
24 | 6% | 87% | – |
| 4 | Lazio |
28 | 2% | 63% | – |
| 5 | Juventus |
17 | <1% | 36% | – |
| 6 | Milan |
21 | – | 7% | – |
| 7 | Napoli |
14 | – | 5% | – |
| 8 | Frosinone |
20 | – | 4% | – |
| 9 | Bologna |
14 | – | <1% | <1% |
| 10 | Cagliari |
13 | – | – | 4% |
| 11 | Torino |
13 | – | – | 4% |
| 12 | Genoa |
13 | – | – | 6% |
| 13 | Atalanta |
11 | – | – | 10% |
| 14 | Fiorentina |
8 | – | – | 11% |
| 15 | Parma |
8 | – | – | 29% |
| 16 | Lecce |
9 | – | – | 36% |
| 17 | Sassuolo |
8 | – | – | 41% |
| 18 | Monza |
7 | – | – | 42% |
| 19 | Udinese |
5 | – | – | 44% |
| 20 | Venezia |
3 | – | – | 73% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Ligue 1
| # | Team | Pts | Title | Top 3 | Relegated |
|---|---|---|---|---|---|
| 1 | Paris SG |
20 | >99% | >99% | – |
| 2 | Paris FC |
17 | – | 48% | – |
| 3 | Monaco |
15 | – | 44% | – |
| 4 | Lyon |
17 | – | 36% | – |
| 5 | Lille |
18 | – | 22% | – |
| 6 | Rennes |
16 | – | 20% | – |
| 7 | Marseille |
15 | – | 15% | <1% |
| 8 | Brest |
12 | – | 7% | <1% |
| 9 | Strasbourg |
10 | – | 4% | <1% |
| 10 | Toulouse |
10 | – | 3% | <1% |
| 11 | Nice |
14 | – | 2% | 1% |
| 12 | Lorient |
12 | – | <1% | 3% |
| 13 | Lens |
13 | – | <1% | 3% |
| 14 | Auxerre |
10 | – | – | 12% |
| 15 | Troyes |
8 | – | – | 34% |
| 16 | Le Havre |
2 | – | – | 39% |
| 17 | Le Mans |
7 | – | – | 43% |
| 18 | Angers |
8 | – | – | 62% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Eredivisie
| # | Team | Pts | Title | Top 2 | Relegated |
|---|---|---|---|---|---|
| 1 | Twente |
23 | 41% | 67% | – |
| 2 | Ajax |
24 | 30% | 58% | – |
| 3 | PSV Eindhoven |
23 | 17% | 39% | – |
| 4 | Feyenoord |
25 | 10% | 27% | – |
| 5 | AZ Alkmaar |
20 | 2% | 8% | – |
| 6 | Heerenveen |
18 | – | <1% | – |
| 7 | For Sittard |
19 | – | – | – |
| 8 | Groningen |
15 | – | – | <1% |
| 9 | Cambuur |
15 | – | – | <1% |
| 10 | Nijmegen |
11 | – | – | <1% |
| 11 | Go Ahead Eagles |
14 | – | – | 4% |
| 12 | Utrecht |
12 | – | – | 5% |
| 13 | Sparta Rotterdam |
12 | – | – | 8% |
| 14 | Telstar |
9 | – | – | 12% |
| 15 | Den Haag |
6 | – | – | 18% |
| 16 | Zwolle |
11 | – | – | 20% |
| 17 | Excelsior |
11 | – | – | 32% |
| 18 | Willem II |
2 | – | – | >99% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
Primeira Liga
| # | Team | Pts | Title | Top 2 | Relegated |
|---|---|---|---|---|---|
| 1 | Porto |
30 | 49% | 91% | – |
| 2 | Benfica |
25 | 47% | 90% | – |
| 3 | Sp Lisbon |
21 | 4% | 17% | – |
| 4 | Santa Clara |
21 | – | <1% | – |
| 5 | Arouca |
20 | – | <1% | – |
| 6 | Academico Viseu |
20 | – | – | – |
| 7 | Sp Braga |
14 | – | – | – |
| 8 | Gil Vicente |
15 | – | – | – |
| 9 | Alverca |
11 | – | – | <1% |
| 10 | Famalicao |
10 | – | – | – |
| 11 | Moreirense |
14 | – | – | <1% |
| 12 | Estrela |
10 | – | – | 3% |
| 13 | Maritimo |
8 | – | – | 15% |
| 14 | Nacional |
7 | – | – | 18% |
| 15 | Rio Ave |
7 | – | – | 25% |
| 16 | Casa Pia |
7 | – | – | 29% |
| 17 | Estoril |
2 | – | – | 31% |
| 18 | Vitoria |
9 | – | – | 79% |
Each remaining match is played out with the goals model's expected goals, then the season is repeated 10,000 times. Rows are ordered by average finishing position. Team strengths stay as they are today, and points deductions aren't included.
| # | Team | League | Rating |
|---|---|---|---|
| 1 | Palermo |
Serie B | |
| 2 | Modena |
Serie B | |
| 3 | Cremonese |
Serie B | |
| 4 | Verona |
Serie B | |
| 5 | Ascoli |
Serie B | |
| 6 | Pisa |
Serie B | |
| 7 | Mantova |
Serie B | |
| 8 | Juve Stabia |
Serie B | |
| 9 | Avellino |
Serie B | |
| 10 | Benevento |
Serie B | |
| 11 | Catanzaro |
Serie B | |
| 12 | Padova |
Serie B | |
| 13 | Sudtirol |
Serie B | |
| 14 | Carrarese |
Serie B | |
| 15 | Virtus Entella |
Serie B | |
| 16 | Spezia | Serie B | |
| 17 | Cesena |
Serie B | |
| 18 | Arezzo |
Serie B | |
| 19 | Pescara | Serie B | |
| 20 | Empoli |
Serie B | |
| 21 | Bari | Serie B | |
| 22 | Sampdoria |
Serie B | |
| 23 | Vicenza |
Serie B | |
| 24 | Reggiana | Serie B |
Who wins
| Called right | Log loss | Brier | |
|---|---|---|---|
| Goals model | 49% | 1.0211 | 0.612 |
| Elo model | 49% | 1.0233 | 0.6135 |
| Bookmakers, early odds (same matches) | 51% | 0.9976 | 0.5961 |
| Bookmakers, closing odds (same matches) | 51% | 0.999 | 0.5971 |
When the model disagreed with the early odds by more than 3 points, the price moved its way by kick-off 53% of the time (48,985 cases; an average shift of 0.2 points). That's about what chance gives: the model doesn't spot things the market hasn't already priced in. Use it as an independent second opinion, and treat a "generous" price as a reason to look closer, not as an edge.
Goals markets
| Market | Goals model | Naive guess | Bookmakers |
|---|---|---|---|
| Over/under 2.5 goals | 0.679 | 0.693 | 0.676 |
| Both teams score | 0.686 | 0.691 | — |
| Half-time result | 1.053 | 1.081 | — |
| First-half goal | 0.601 | 0.605 | — |
| Half-time / full-time | 1.907 | 1.962 | — |
"Naive guess" always predicts how often each outcome has happened so far. Beating it means the model knows something about the teams.
Compare any two teams
Prediction, goals markets, form, rating trend and past meetings.


























































































































































