‹ ›

1949-50 Luxembourg National Division Season

132 games

Final

Champion

Stade Dudelange

35 points

Relegated

No relegation

Biggest Overachiever

Stade Dudelange

6.90 points above expected

35 points · 28.10 expected points

Biggest Disappointment

Grevenmacher

6.53 points below expected

9 points · 15.53 expected points

League Table

The final standings for the season. vsSim shows actual points minus the simulation's mean — positive means the team overachieved against the model, negative means they underperformed.

# Team GP W D L Pts GF GA GD SimPts vsSim
1 Stade Dudelange 22 15 5 2 35 62 21 +41 28.10 +6.90
2 FC Schifflange 95 22 15 4 3 34 46 21 +25 27.27 +6.73
3 Spora Luxembourg 22 10 5 7 25 50 38 +12 27.13 -2.13
4 Differdange 03 22 9 5 8 23 36 33 +3 24.81 -1.81
5 Racing FC Union Luxembourg 22 8 6 8 22 36 38 -2 22.89 -0.89
6 Jeunesse Esch 22 8 6 8 22 27 29 -2 20.35 +1.65
7 US Dudelange 22 9 4 9 22 46 56 -10 19.12 +2.88
8 Progres Niedercorn 22 7 6 9 20 47 45 +2 19.45 +0.55
9 SC Tetange 22 8 4 10 20 34 36 -2 21.19 -1.19
10 Fola Esch 22 6 7 9 19 32 42 -10 21.84 -2.84
11 Rumelange 22 4 5 13 13 21 49 -28 16.32 -3.32
12 Grevenmacher 22 3 3 16 9 24 53 -29 15.53 -6.53

Top Overachievers & Disappointments

Teams that most beat — or most fell short of — their simulated point projections. A positive vsSim means the team accumulated more points than the model expected on average; a negative one means fewer.

Biggest Overachievers

# Team Actual Sim vsSim
1 Stade Dudelange 35 28.10 +6.90
2 FC Schifflange 95 34 27.27 +6.73
3 US Dudelange 22 19.12 +2.88
4 Jeunesse Esch 22 20.35 +1.65
5 Progres Niedercorn 20 19.45 +0.55

Biggest Disappointments

# Team Actual Sim vsSim
1 Grevenmacher 9 15.53 -6.53
2 Rumelange 13 16.32 -3.32
3 Fola Esch 19 21.84 -2.84
4 Spora Luxembourg 25 27.13 -2.13
5 Differdange 03 23 24.81 -1.81

Top Streaks

Ranked by model unlikelihood — the product of pregame W/D/L probabilities over the games in each team's streak. A short streak by a poor team can outrank a longer one by a strong team since the poor team's per-game probabilities were lower going in. Unbeaten counts consecutive wins or ties; Winless counts consecutive losses or ties.

Most Unlikely Winning Streaks

# Team Games Dates Probability
1 FC Schifflange 95 10 Jan 15 – May 7 1 in 658
2 SC Tetange 5 Aug 21 – Sep 25 1 in 137
3 US Dudelange 3 Jan 8 – Jan 23 1 in 76
4 Fola Esch 2 Oct 30 – Nov 13 1 in 20
5 Stade Dudelange 5 Nov 20 – Jan 15 1 in 17

Most Unlikely Losing Streaks

# Team Games Dates Probability
1 SC Tetange 6 Oct 16 – Dec 4 1 in 741
2 Rumelange 6 Jan 23 – Apr 23 1 in 36
3 Differdange 03 3 Dec 11 – Jan 15 1 in 32
4 US Dudelange 4 Sep 4 – Oct 2 1 in 19
5 Fola Esch 3 Sep 25 – Oct 16 1 in 18

Most Unlikely Unbeaten Streaks

# Team Games Dates Probability
1 US Dudelange 7 Nov 27 – Jan 29 1 in 118
2 Stade Dudelange 16 Oct 30 – May 18 1 in 52
3 Fola Esch 6 Oct 30 – Jan 8 1 in 43
4 Progres Niedercorn 5 Sep 4 – Oct 16 1 in 18
5 FC Schifflange 95 10 Jan 15 – May 7 1 in 14

Most Unlikely Winless Streaks

# Team Games Dates Probability
1 Rumelange 11 Nov 20 – Apr 23 1 in 29
2 Grevenmacher 13 Nov 27 – May 18 1 in 19
3 FC Schifflange 95 4 Nov 20 – Jan 8 1 in 18
4 Fola Esch 6 Aug 21 – Oct 16 1 in 16
5 Differdange 03 5 Dec 11 – Jan 29 1 in 14

Position Race

Each team’s league position across the whole season. Colored teams are the season’s headline finishers — champion, promoted, and relegated; everyone else is gray as context.

Recent Form

Each team’s last 5 games, hottest first. Form shows the results (navy win, gray draw, red loss, newest on the right); the bars show Elo change over the window, points taken, points expected from the odds, and actual minus expected. Beside each team: current Elo and season points.

Team Elo Season Pts Form Elo Δ (5) Points (5) Expected (5) Actual − Exp
Stade Dudelange 1230 35 +46 9 7.1 +1.9
FC Schifflange 95 1145 34 +21 8 6.9 +1.1
Spora Luxembourg 1046 25 -21 5 6.1 -1.1
Differdange 03 973 23 +23 7 6.1 +0.9
Jeunesse Esch 873 22 +14 6 4.6 +1.4
US Dudelange 880 22 -40 5 4.9 +0.1
Racing FC Union Luxembourg 880 22 -8 4 5.3 -1.3
Progres Niedercorn 998 20 +144 7 3.6 +3.4
SC Tetange 908 20 +22 3 3.5 -0.5
Fola Esch 877 19 -135 2 6.3 -4.3
Rumelange 697 13 +8 4 3.5 +0.5
Grevenmacher 662 9 -30 1 2.7 -1.7

Head-to-Head

Each cell shows a team's record in that matchup (row vs column, formatted W-D-L) with the model's expected points on the line below. Navy-tinted cells mean the team beat the model's expectations by more than one point in that matchup; gold-tinted cells mean they fell short by the same margin.

Beat expectations Fell short Within expectations
Team D0 FS9 FE GRE JE PN RFUL RUM ST SL SD UD
Differdange 03 —
0-1-1
2.60
1-1-0
2.86
2-0-0
4.05
1-1-0
3.06
1-0-1
3.32
1-0-1
2.95
1-0-1
3.96
0-0-2
3.52
1-0-1
2.28
0-1-1
2.41
1-1-0
3.79
FC Schifflange 95
1-1-0
2.92
—
1-1-0
4.09
2-0-0
3.89
1-0-1
4.19
2-0-0
3.92
1-1-0
2.93
1-1-0
3.83
2-0-0
3.55
2-0-0
2.81
0-0-2
2.60
2-0-0
3.77
Fola Esch
0-1-1
2.66
0-1-1
1.44
—
1-1-0
3.93
1-1-0
2.55
0-0-2
3.27
1-1-0
2.58
1-0-1
3.92
2-0-0
2.62
0-1-1
1.98
0-0-2
2.15
0-1-1
3.44
Grevenmacher
0-0-2
1.48
0-0-2
1.63
0-1-1
1.60
—
0-1-1
2.44
1-0-1
2.54
1-0-1
1.81
1-0-1
2.48
0-1-1
2.62
0-0-2
1.29
0-0-2
1.01
0-0-2
2.08
Jeunesse Esch
0-1-1
2.46
1-0-1
1.34
0-1-1
2.98
1-1-0
3.09
—
1-1-0
2.54
0-0-2
2.25
2-0-0
3.29
1-1-0
2.53
1-1-0
1.47
1-0-1
1.94
0-0-2
2.71
Progres Niedercorn
1-0-1
2.21
0-0-2
1.60
2-0-0
2.25
1-0-1
2.97
0-1-1
2.98
—
1-0-1
2.62
0-2-0
3.30
1-1-0
2.23
0-1-1
1.67
0-1-1
1.56
1-0-1
2.57
Racing FC Union Luxembourg
1-0-1
2.57
0-1-1
2.59
0-1-1
2.94
1-0-1
3.72
2-0-0
3.27
1-0-1
2.90
—
1-1-0
3.51
1-0-1
3.27
0-1-1
2.21
0-2-0
2.16
1-0-1
3.49
Rumelange
1-0-1
1.58
0-1-1
1.71
1-0-1
1.61
1-0-1
3.03
0-0-2
2.23
0-2-0
2.23
0-1-1
2.01
—
0-0-2
2.31
0-0-2
1.82
1-0-1
1.59
0-1-1
2.50
SC Tetange
2-0-0
2.01
0-0-2
1.98
0-0-2
2.91
1-1-0
2.91
0-1-1
2.99
0-1-1
3.29
1-0-1
2.25
2-0-0
3.21
—
1-0-1
2.13
0-0-2
1.50
1-1-0
3.10
Spora Luxembourg
1-0-1
3.24
0-0-2
2.71
1-1-0
3.54
2-0-0
4.26
0-1-1
4.07
1-1-0
3.86
1-1-0
3.31
2-0-0
3.71
1-0-1
3.40
—
0-1-1
2.51
1-0-1
4.00
Stade Dudelange
1-1-0
3.12
2-0-0
2.92
2-0-0
3.37
2-0-0
4.54
1-0-1
3.58
1-1-0
3.97
0-2-0
3.36
1-0-1
3.96
2-0-0
4.05
1-1-0
3.02
—
2-0-0
3.91
US Dudelange
0-1-1
1.74
0-0-2
1.76
1-1-0
2.08
2-0-0
3.44
2-0-0
2.81
1-0-1
2.95
1-0-1
2.03
1-1-0
3.03
0-1-1
2.42
1-0-1
1.53
0-0-2
1.61
—

Points vs. Goals Scored, Allowed, and Differential

Points plotted against goals scored, allowed, and differential. Use the buttons to switch views; hover a team for exact values. The table gives each fit's R² and slope (the change in points per 10 goals).

Fit Metrics

R² Slope
Scored 0.66 +4.9
Allowed 0.66 -5.3
Differential 0.92 +3.6

Scoreline Distribution

Percentage of games ending with each combination of team-goals (rows) and opponent-goals (columns). The diagonal shows draws; cells below the diagonal are wins from the row team's perspective, cells above are losses. Marginal totals on the right and bottom show how often each goal count occurred regardless of opponent. Use the picker to switch between the league-wide view and any individual team.

↓ Scored | Allowed →012345+Total
06.82%5.30%4.17%4.17%1.52%1.14%23.11%
15.30%6.06%8.33%3.41%0.76%1.14%25.00%
24.17%8.33%6.82%3.41%1.89%1.89%26.52%
34.17%3.41%3.41%2.27%0.76%0.38%14.39%
41.52%0.76%1.89%0.76%0.76%0.38%6.06%
5+1.14%1.14%1.89%0.38%0.38%—4.92%
Total23.11%25.00%26.52%14.39%6.06%4.92%100%

Summary Statistics

Scored Allowed Difference
Mean 1.75 1.75 +0.00
SD 1.53 1.53 2.16
CV 0.88 0.88 —
Max 9 9 +7
Min 0 0 -7

Games Played: 132

↓ Scored | Allowed →012345+Total
018.18%4.55%—9.09%——31.82%
14.55%4.55%4.55%—4.55%—18.18%
24.55%9.09%—4.55%—4.55%22.73%
34.55%4.55%————9.09%
49.09%—4.55%——4.55%18.18%
5+———————
Total40.91%22.73%9.09%13.64%4.55%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.64 1.50 +0.14
SD 1.50 1.79 2.21
CV 0.92 1.20 —
Max 4 6 +4
Min 0 0 -4

Games Played: 22

↓ Scored | Allowed →012345+Total
09.09%9.09%————18.18%
19.09%4.55%4.55%———18.18%
29.09%18.18%4.55%———31.82%
34.55%4.55%13.64%———22.73%
4———————
5+4.55%——4.55%——9.09%
Total36.36%36.36%22.73%4.55%——100%

Summary Statistics

Scored Allowed Difference
Mean 2.09 0.95 +1.14
SD 1.77 0.90 1.73
CV 0.85 0.94 —
Max 7 3 +7
Min 0 0 -1

Games Played: 22

↓ Scored | Allowed →012345+Total
09.09%9.09%4.55%4.55%4.55%—31.82%
1—13.64%4.55%4.55%—4.55%27.27%
2—4.55%4.55%——4.55%13.64%
313.64%4.55%————18.18%
4——4.55%—4.55%—9.09%
5+———————
Total22.73%31.82%18.18%9.09%9.09%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.45 1.91 -0.45
SD 1.37 1.97 2.39
CV 0.94 1.03 —
Max 4 8 +3
Min 0 0 -6

Games Played: 22

↓ Scored | Allowed →012345+Total
0—13.64%9.09%—4.55%4.55%31.82%
14.55%9.09%18.18%4.55%4.55%—40.91%
2—4.55%——4.55%4.55%13.64%
3—4.55%—4.55%4.55%—13.64%
4———————
5+———————
Total4.55%31.82%27.27%9.09%18.18%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.09 2.41 -1.32
SD 1.02 1.68 1.89
CV 0.93 0.70 —
Max 3 7 +2
Min 0 0 -7

Games Played: 22

↓ Scored | Allowed →012345+Total
09.09%9.09%—13.64%——31.82%
14.55%13.64%9.09%4.55%——31.82%
24.55%18.18%4.55%———27.27%
3——4.55%———4.55%
4———————
5+4.55%—————4.55%
Total22.73%40.91%18.18%18.18%——100%

Summary Statistics

Scored Allowed Difference
Mean 1.23 1.32 -0.09
SD 1.23 1.04 1.82
CV 1.00 0.79 —
Max 5 3 +5
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%4.55%4.55%———13.64%
1—4.55%4.55%4.55%—4.55%18.18%
24.55%4.55%13.64%9.09%9.09%—40.91%
3—9.09%—4.55%——13.64%
4———————
5+—4.55%9.09%———13.64%
Total9.09%27.27%31.82%18.18%9.09%4.55%100%

Summary Statistics

Scored Allowed Difference
Mean 2.14 2.05 +0.09
SD 1.58 1.29 2.07
CV 0.74 0.63 —
Max 6 5 +4
Min 0 0 -4

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%——9.09%——13.64%
113.64%9.09%9.09%9.09%——40.91%
2—4.55%9.09%4.55%——18.18%
3—4.55%9.09%4.55%4.55%—22.73%
44.55%—————4.55%
5+———————
Total22.73%18.18%27.27%27.27%4.55%—100%

Summary Statistics

Scored Allowed Difference
Mean 1.64 1.73 -0.09
SD 1.14 1.24 1.63
CV 0.69 0.72 —
Max 4 4 +4
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%9.09%18.18%4.55%9.09%4.55%50.00%
14.55%—4.55%4.55%——13.64%
2—9.09%13.64%—4.55%—27.27%
3——4.55%4.55%——9.09%
4———————
5+———————
Total9.09%18.18%40.91%13.64%13.64%4.55%100%

Summary Statistics

Scored Allowed Difference
Mean 0.95 2.23 -1.27
SD 1.09 1.41 1.86
CV 1.14 0.63 —
Max 3 6 +1
Min 0 0 -6

Games Played: 22

↓ Scored | Allowed →012345+Total
09.09%4.55%4.55%——4.55%22.73%
14.55%4.55%13.64%4.55%—4.55%31.82%
29.09%4.55%—9.09%——22.73%
34.55%4.55%—4.55%——13.64%
4—9.09%————9.09%
5+———————
Total27.27%27.27%18.18%18.18%—9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.55 1.64 -0.09
SD 1.26 1.53 2.14
CV 0.82 0.93 —
Max 4 5 +3
Min 0 0 -5

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%—4.55%4.55%——13.64%
1——18.18%———18.18%
24.55%4.55%18.18%—4.55%—31.82%
34.55%4.55%4.55%———13.64%
44.55%—4.55%———9.09%
5+—4.55%4.55%—4.55%—13.64%
Total18.18%13.64%54.55%4.55%9.09%—100%

Summary Statistics

Scored Allowed Difference
Mean 2.27 1.73 +0.55
SD 1.58 1.12 1.95
CV 0.69 0.65 —
Max 5 4 +4
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%—————4.55%
118.18%4.55%4.55%———27.27%
24.55%4.55%9.09%4.55%——22.73%
318.18%—4.55%4.55%——27.27%
4———————
5+4.55%4.55%9.09%———18.18%
Total50.00%13.64%27.27%9.09%——100%

Summary Statistics

Scored Allowed Difference
Mean 2.82 0.95 +1.86
SD 2.30 1.09 2.27
CV 0.82 1.14 —
Max 9 3 +7
Min 0 0 -1

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%—4.55%4.55%——13.64%
1—4.55%4.55%4.55%——13.64%
29.09%13.64%4.55%9.09%—9.09%45.45%
3—————4.55%4.55%
4——9.09%9.09%4.55%—22.73%
5+———————
Total13.64%18.18%22.73%27.27%4.55%13.64%100%

Summary Statistics

Scored Allowed Difference
Mean 2.09 2.55 -0.45
SD 1.31 2.11 2.22
CV 0.62 0.83 —
Max 4 9 +2
Min 0 0 -7

Games Played: 22

Season Summary

Every team's regular-season finish compared against 100,000 simulations. Click any column header to sort. Luck is the team's actual points minus the sim's mean — positive means the team beat the model. Percentile is where the actual result fell in the team's sim distribution (e.g. 90% = the team did this well or better in only 10% of sims).

Team Elo Points Avg Luck Percentile Min 5th Q1 Median Q3 95th Max
Stade Dudelange 1230 35 28.10 +6.90 99.0% 20 22 26 28 31 34 36
FC Schifflange 95 1145 34 27.27 +6.73 99.0% 19 22 25 27 30 32 35
Spora Luxembourg 1046 25 27.13 -2.13 30.0% 20 21 25 27 29 33 36
Progres Niedercorn 998 20 19.45 +0.55 62.0% 12 14 17 19 22 26 29
Differdange 03 973 23 24.81 -1.81 38.0% 17 19 22 24 27 30 34
SC Tetange 908 20 21.19 -1.19 45.0% 11 15 19 21 23 27 33
Racing FC Union Luxembourg 880 22 22.89 -0.89 45.0% 13 17 20 23 25 29 32
US Dudelange 880 22 19.12 +2.88 84.0% 10 13 17 19 21 24 28
Fola Esch 877 19 21.84 -2.84 18.0% 12 15 20 22 24 28 32
Jeunesse Esch 873 22 20.35 +1.65 72.0% 10 14 18 20 23 26 32
Rumelange 697 13 16.32 -3.32 28.0% 8 11 13 16 19 23 26
Grevenmacher 662 9 15.53 -6.53 4.0% 7 10 13 15 18 22 24

Point Totals in Context

How did each team's actual results compare to their simulated points, Elo rating, average opponent Elo, and percentile within simulated outcomes? Use the buttons to switch between views. In each chart, dashed crosshairs at the league means split the plot into four quadrants: pastel green (team did well, model agreed), pastel red (team did poorly, model agreed), and pastel yellow (model and reality disagreed).

Home-Field Advantage Edge

The simulation applies the same home-field boost to every game across the league, so the per-game home win probabilities bake in the model's idea of HFA. For each team, we sum expected points at home and compare to actual home points, and the same on the road. The bar shows (home points above expected) minus (away points above expected). A tall positive bar means the team's home/road split exceeded what the model predicted — a real fortress effect. A tall negative bar means the reverse: they played worse at home or better on the road than expected.

Season Trends

How each metric evolved across the season - Elo rating, actual and projected points, title/promotion probability, and relegation probability - day by day.

Edges & Scoring

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Home Edge
Share of matches won by the home team minus the share won by the away team.
No Edge: under 7% * Slight Edge: 7% to 11.5% * Clear Edge: 11.5% to 16.5% * Strong Edge: 16.5% and up.
Elo Value
Number of Elo rating points one goal is worth. A team this many Elo points better than another is expected to win by one goal on a neutral field.
Scoring Tilt
Average home goals minus average away goals per match. The gold line is the home goals edge implied by the scoring value of an Elo point and the home-field Elo bonus.
Road-Tilted: under -0.2 * Neutral: -0.2 to 0.5 * Home-Tilted: 0.5 to 1.2 * Strong Home: 1.2 and up.
Home Edge
HomeDrawAway
+19.70%
Strong Edge
48.48%22.73%28.79%
Elo Value
Home Edge
182 Elo
0.005 goals per Elo point
069.34500
Scoring Tilt
Expected
+0.43 goals
Neutral
-2+0.38+2

Title Race

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Title-Race Openness
Effective number of teams with a live shot at finishing 1st, from the simulation. 1 means the favorite is a near-lock; larger means a wide-open race. Equal to 1 divided by the sum of squared title odds.
One-Team Race: under 2 * Top-Heavy: 2 to 3 * Open: 3 to 4 * Wide Open: 4 and up.
Champion Preseason Odds
Preseason probability that the eventual champion would finish 1st, from the simulation. The dot marks their rank across all teams, from longshot to favorite.
Preseason Favorite: 1st * Among the Favorites: 2nd * Middle of the Pack: 3rd to 6th * Longshot: 7th or lower.
Title Margin
Points-per-game gap between the champion and the runner-up. Shown per game so it reads the same across long and short seasons. The gold line is the winning margin the model expected, so a dot to the right means a more one-sided race than projected. A title won on goal difference shows 0.00.
Photo Finish: under 0.05 * Tight Race: 0.05 to 0.17 * Comfortable: 0.17 to 0.27 * Runaway: 0.27 and up.
Title-Race Openness
3.9
Open
123410
Champion Preseason Odds
39%
Stade Dudelange, 1st of 12
LongshotFavorite
Title Margin
Expected
0.05/gm
Photo Finish
00.110.5/gm

Simulation-Based Surprises

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Luck Spread
Standard deviation of the gap between each team's actual points and their simulated average points. The gold line is the spread the model expected from chance alone.
As Expected: under 2.92 * Some Luck: 2.92 to 4.38 * Lucky: 4.38 to 5.84 * Wild Swing: 5.84 and up.
Average Finish Error
Average gap between where each team was projected to finish and where they actually finished in the table.
Pinpoint: under 1.49 * Close: 1.49 to 2.24 * Off: 2.24 to 2.98 * Way Off: 2.98 and up.
Biggest Overachiever
The team that finished highest inside its own range of simulated outcomes. The gold line is where the top team in a league of 12 typically lands.
Biggest Underachiever
The team that finished lowest inside its own range of simulated outcomes. The gold line is where the bottom team in a league of 12 typically lands.
Season Outliers
Number of teams that finished above the 95th or below the 5th percentile of their own simulated range. Even a well-calibrated model expects about 10% of teams in the extremes.
Minimal Outliers: under 12 * As Expected: 12 to 19.2 * Several Outliers: 19.2 to 26.4 * Many Outliers: 26.4 and up.
Luck Spread
Expected
3.83 points
Some Luck
03.659
Average Finish Error
Expected
1.00
Pinpoint
01.874
Biggest Overachiever
Expected 95.83%
99.00%
Stade Dudelange
50100
Biggest Underachiever
Expected 4.17%
4.00%
Grevenmacher
050
Season Outliers
Expected
3 of 12
Minimal Outliers
01.26

Parity

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Gini Index
How evenly points were spread across the league. Lower means a tight, balanced table; higher means a few teams ran off with most of the points.
Balanced: under 0.17 * Even: 0.17 to 0.19 * Top-Heavy: 0.19 to 0.21 * Lopsided: 0.21 and up.
Noll-Scully
Take a league where every match is a coin flip and nobody is better than anybody. You would still get a table, with a leader and a bottom club, purely by luck, and you can work out how far apart that table would be. This is the real table measured against it. At 1.00 the season was no more spread out than pure chance; at 2.00 it was twice as spread out, which takes genuine differences in quality. Dividing by the luck figure is what makes seasons of different lengths comparable, because a short season spreads a table by luck alone far more than a long one does. Elo SD in the corner is the same question in rating points: how far apart the teams finished on the ratings.
Coin-Flip Parity: under 1.65 * Moderate Separation: 1.65 to 1.85 * Strong Separation: 1.85 to 2.05 * Wide Separation: 2.05 and up.
Interquartile Edge
Chance the team at the 75th percentile of Elo would beat the team at the 25th percentile on a neutral field. Higher means a bigger gap between the upper and lower half of the table.
Even: under 68% * Slight Edge: 68% to 72.5% * Clear Edge: 72.5% to 78% * Wide Edge: 78% and up.
Best vs. Worst
Chance the top-rated team would beat the bottom-rated team on a neutral field. The gold line is how large that gap tends to be in a league of this size; a dot to the right flags an unusually dominant or unusually weak team.
Even: under 89.5% * Clear Edge: 89.5% to 92% * Strong Edge: 92% to 95% * Dominant: 95% and up.
Close Games
Share of matches decided by 1 goal or fewer, draws included. The gold line is how many close games the matchups and the scoring value of an Elo point predict.
Few: under 49% * Some Drama: 49% to 53% * Frequent: 53% to 56% * Very Frequent: 56% and up.
Blowouts
Share of matches decided by 3 goals or more. The gold line is how many routs the matchups and the scoring model predict.
Rare: under 23% * Occasional: 23% to 26% * Frequent: 26% to 28% * Very Frequent: 28% and up.
Gini Index
0.17
Balanced
00.170.5
Noll-Scully
Elo SD: 163.48
1.78
Moderate Separation
11.651.852.052.5
Interquartile Edge
68%
Slight Edge
50%68%78%100%
Best vs. Worst
Baseline 96%
96%
Dominant
50%100%
Close Games
Expected
59%
Very Frequent
0%51%100%
Blowouts
Expected
22%
Rare
0%25%100%

Predictability

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Brier Score
How close the pregame probabilities landed to the actual result, averaged over the season. Confident, correct calls are rewarded most; confident misses are punished most. Lower is better; since draws are possible, a score under 0.66 beats guessing the base rate.
Highly Predictable: under 0.56 * Predictable: 0.56 to 0.62 * Hard to Predict: 0.62 to 0.66 * Coin-Flip: 0.66 and up.
Matchup Imbalance
How lopsided the matchups were on paper, averaging the gap between the two win probabilities over their sum. 0 means every match was a toss-up; 1 means every match was a heavy favorite against a big underdog.
Very Even: under 0.35 * Slight Separation: 0.35 to 0.39 * Notable Separation: 0.39 to 0.44 * Lopsided: 0.44 and up.
Strangeness
How wild the final table was versus what the model expected. A value of 1 means teams landed about one standard deviation from their projections on average. Above 1 is a stranger season; below 1 hugged the projections.
Very Predictable: under 0.8 * As Expected: 0.8 to 1.1 * Wilder Than Modeled: 1.1 to 1.4 * Chaotic: 1.4 and up.
Repeatability
How closely the final table order matched the preseason Elo order, by Spearman rank correlation. Higher means last season's ratings strongly predicted this season's finish. Shows N/A for an inaugural season.
Weak Carryover: under 0.43 * Some Carryover: 0.43 to 0.62 * Strong Carryover: 0.62 to 0.73 * Near-Lock: 0.73 and up.
Upset Rate
Share of matches the underdog won. The gold line is how often the model expected underdogs to win; a dot to the right means upsets ran hotter than expected.
Chalky: under 21.5% * As Expected: 21.5% to 24% * Upset-Prone: 24% to 26.5% * Very Upset-Prone: 26.5% and up.
Clear Favorite Upset Rate
Share of matches the underdog won, counting only games with a clear favorite (at least 60% likely to win once a draw is set aside). The gold line is how often the model expected these favorites to slip.
Solid Favorites: under 18% * As Expected: 18% to 20.5% * Shaky Favorites: 20.5% to 23.5% * Very Shaky: 23.5% and up.
Brier Score
Expected
0.58
Predictable
00.582
Matchup Imbalance
0.42
Notable Separation
00.350.5
Strangeness
Expected
1.18
Wilder Than Modeled
01.002
Repeatability
0.37
Weak Carryover
00.430.621
Upset Rate
Expected
23%
As Expected
0%22%50%
Clear Favorite Upset Rate
Expected
17%
Solid Favorites
0%18%50%

Calibration

How these are measured

The navy dot is the actual value, the gold line and key are the model's reference where one applies, and the slate ticks are the cutoffs between read labels listed under each metric.

Probability calibration
An all-in-one chi-square test of the model's probabilities. Matches are grouped by how confident the model was, and within each group the predicted and actual counts of home wins, draws, and away wins are compared. The p-value is plotted; above 0.05 means well-calibrated.
Miscalibrated: under 0.05 * Borderline: 0.05 to 0.1 * Well Calibrated: 0.1 to 0.5 * Excellent: 0.5 and up.
Calibration slope
Checks whether the spread of the probabilities is right. Each probability is turned into log-odds and a line is fit predicting the actual results. A slope of 1.00 is perfect; below 1 is overconfidence (favorites lost more than their odds implied); above 1 is under-confidence.
Overconfident: under 0.85 * Calibrated: 0.85 to 1.15 * Underconfident: 1.15 to 1.3 * Very Underconfident: 1.3 and up.
Calibration error (ECE)
The average gap between the model's stated chances and how often the predicted result actually happened. Smaller is better. The gold line is the noise ceiling, the error luck alone can produce even with perfect probabilities; below it, the model's error is no larger than chance.
Well Within Noise: under 0.14 * Near Noise Ceiling: 0.14 to 0.21 * Above Noise: 0.21 to 0.28 * Well Above Noise: 0.28 and up.
Probability calibration
0.51
Excellent
0.010.050.10.51
Calibration slope
Ideal
1.00
Calibrated
0.51.001.5
Calibration error (ECE)
Noise ceiling
0.066
Well Within Noise
00.1390.4

Final Table Odds

Each cell is the probability — across 100,000 simulations — that the team (row) finished at that position (column). Rows are sorted by actual finish (champion at top, bottom of the table at the bottom).

Team123456789101112
Stade Dudelange39.00%19.00%18.00%10.00%5.00%5.00%3.00%—1.00%———
FC Schifflange 9524.00%27.00%15.00%19.00%9.00%3.00%—2.00%1.00%———
Spora Luxembourg20.00%22.00%24.00%10.00%9.00%7.00%5.00%3.00%————
Differdange 038.00%14.00%12.00%19.00%18.00%12.00%4.00%5.00%5.00%2.00%1.00%—
Racing FC Union Luxembourg4.00%5.00%13.00%14.00%12.00%6.00%13.00%8.00%13.00%8.00%3.00%1.00%
Jeunesse Esch—3.00%1.00%8.00%11.00%14.00%9.00%14.00%15.00%13.00%8.00%4.00%
US Dudelange—1.00%2.00%—6.00%9.00%9.00%15.00%17.00%20.00%15.00%6.00%
Progres Niedercorn—2.00%6.00%2.00%6.00%12.00%10.00%13.00%13.00%13.00%18.00%5.00%
SC Tetange1.00%3.00%6.00%6.00%11.00%10.00%12.00%22.00%10.00%12.00%4.00%3.00%
Fola Esch4.00%4.00%3.00%10.00%8.00%14.00%24.00%11.00%7.00%7.00%5.00%3.00%
Rumelange———1.00%3.00%4.00%7.00%5.00%9.00%16.00%20.00%35.00%
Grevenmacher———1.00%2.00%4.00%4.00%2.00%9.00%9.00%26.00%43.00%

Points Required Per Position

The empirical CDF of simulated point totals per finishing position. Each curve shows, for one position (1st, 2nd, ..., last), the spread of point totals teams accumulated across simulations. Reading the curve at the 50% mark gives the median points typically needed to finish at that position. Steep curves mean the position is tightly clustered around a particular point range; shallow curves mean the position came with a wide variety of point totals.

Next-Season Status

Across 100,000 regular-season simulations, the probability of each team's next-season status. Columns appear in best-to-worst outcome order: promotion-positive on the left, relegation-positive on the right. Cells with darker shading indicate higher likelihood.

Team Same level Direct relegation
FC Schifflange 95 100% —
Spora Luxembourg 100% —
Stade Dudelange 100% —
Differdange 03 97.00% 3.00%
Racing FC Union Luxembourg 88.00% 12.00%
Fola Esch 85.00% 15.00%
SC Tetange 81.00% 19.00%
Jeunesse Esch 75.00% 25.00%
Progres Niedercorn 64.00% 36.00%
US Dudelange 59.00% 41.00%
Rumelange 29.00% 71.00%
Grevenmacher 22.00% 78.00%

Overall Game Log

Summary of every completed game this season. Sort any column by clicking its header.

Date Opponent ScoreExcitement Pre Elo Opp Elo Win % Tie % Loss %Proj. Margin Elo Δ Points
1949-08-21 Racing FC Union Luxembourg W 3-246.5 929 947 49.40% 24.06% 26.54%+0.28 +12.5 2
1949-08-21 @ FC Schifflange 95 L 2-346.5 947 929 26.54% 24.06% 49.40%-0.28 -12.5 0
1949-08-21 Stade Dudelange W 3-249.5 880 974 39.48% 24.10% 36.42%-0.13 +15.9 2
1949-08-21 @ Jeunesse Esch L 2-349.5 974 880 36.42% 24.10% 39.48%+0.13 -15.9 0
1949-08-21 Grevenmacher L 1-346.0 898 919 49.02% 24.07% 26.91%+0.27 -37.1 0
1949-08-21 @ Progres Niedercorn W 3-146.0 919 898 26.91% 24.07% 49.02%-0.27 +37.1 2
1949-08-21 Differdange 03 W 4-139.2 864 943 41.44% 24.10% 34.45%-0.05 +39.4 2
1949-08-21 @ SC Tetange L 1-439.2 943 864 34.45% 24.10% 41.44%+0.05 -39.4 0
1949-08-21 Rumelange W 4-239.4 1034 919 62.50% 23.56% 13.94%+1.01 +11.8 2
1949-08-21 @ Spora Luxembourg L 2-439.4 919 1034 13.94% 23.56% 62.50%-1.01 -11.8 0
1949-08-21 Fola Esch W 2-038.2 879 984 37.93% 24.09% 37.98%-0.19 +34.7 2
1949-08-21 @ US Dudelange L 0-238.2 984 879 37.98% 24.09% 37.93%+0.19 -34.7 0
1949-08-28 FC Schifflange 95 D 0-048.5 904 941 46.95% 24.09% 28.96%+0.17 -2.0 1
1949-08-28 @ Differdange 03 D 0-048.5 941 904 28.96% 24.09% 46.95%-0.17 +2.0 3
1949-08-28 SC Tetange L 1-445.9 956 903 57.03% 23.87% 19.10%+0.67 -60.4 2
1949-08-28 @ Grevenmacher W 4-145.9 903 956 19.10% 23.87% 57.03%-0.67 +60.4 4
1949-09-04 Grevenmacher W 7-030.4 943 895 56.63% 23.88% 19.48%+0.65 +65.5 5
1949-09-04 @ FC Schifflange 95 L 0-730.4 895 943 19.48% 23.88% 56.63%-0.65 -65.5 2
1949-09-04 Differdange 03 L 0-339.6 896 902 50.89% 24.04% 25.08%+0.35 -64.3 2
1949-09-04 @ Jeunesse Esch W 3-039.6 902 896 25.08% 24.04% 50.89%-0.35 +64.3 3
1949-09-04 US Dudelange W 5-241.5 860 914 44.91% 24.10% 30.99%+0.09 +31.5 2
1949-09-04 @ Progres Niedercorn L 2-541.5 914 860 30.99% 24.10% 44.91%-0.09 -31.5 2
1949-09-04 Rumelange W 3-136.8 964 907 57.48% 23.85% 18.67%+0.69 +17.0 6
1949-09-04 @ SC Tetange L 1-336.8 907 964 18.67% 23.85% 57.48%-0.69 -17.0 0
1949-09-04 Fola Esch W 3-028.8 1046 949 61.04% 23.67% 15.30%+0.91 +24.1 4
1949-09-04 @ Spora Luxembourg L 0-328.8 949 1046 15.30% 23.67% 61.04%-0.91 -24.1 0
1949-09-04 Racing FC Union Luxembourg D 3-360.4 958 934 54.08% 23.97% 21.95%+0.51 -2.1 1
1949-09-04 @ Stade Dudelange D 3-360.4 934 958 21.95% 23.97% 54.08%-0.51 +2.1 1
1949-09-11 Stade Dudelange D 0-048.5 966 956 52.67% 24.00% 23.33%+0.44 -3.4 4
1949-09-11 @ Differdange 03 D 0-048.5 956 966 23.33% 24.00% 52.67%-0.44 +3.4 2
1949-09-11 Racing FC Union Luxembourg D 0-048.5 925 937 50.14% 24.05% 25.81%+0.32 -2.8 1
1949-09-11 @ Fola Esch D 0-048.5 937 925 25.81% 24.05% 50.14%-0.32 +2.8 2
1949-09-11 Jeunesse Esch D 1-151.9 830 832 51.24% 24.03% 24.73%+0.37 -2.7 3
1949-09-11 @ Grevenmacher D 1-151.9 832 830 24.73% 24.03% 51.24%-0.37 +2.7 3
1949-09-11 FC Schifflange 95 D 0-048.5 890 1009 35.79% 24.07% 40.14%-0.27 +0.5 1
1949-09-11 @ Rumelange D 0-048.5 1009 890 40.14% 24.07% 35.79%+0.27 -0.5 6
1949-09-11 Progres Niedercorn D 2-256.6 1070 892 66.75% 23.15% 10.10%+1.36 -4.8 5
1949-09-11 @ Spora Luxembourg D 2-256.6 892 1070 10.10% 23.15% 66.75%-1.36 +4.8 3
1949-09-11 SC Tetange L 1-245.7 883 981 38.78% 24.09% 37.12%-0.16 -17.6 2
1949-09-11 @ US Dudelange W 2-145.7 981 883 37.12% 24.09% 38.78%+0.16 +17.6 8
1949-09-25 US Dudelange W 3-241.9 1009 865 64.54% 23.39% 12.07%+1.17 +6.4 8
1949-09-25 @ FC Schifflange 95 L 2-341.9 865 1009 12.07% 23.39% 64.54%-1.17 -6.4 2
1949-09-25 Rumelange W 2-036.2 835 890 44.66% 24.10% 31.24%+0.08 +29.9 5
1949-09-25 @ Jeunesse Esch L 0-236.2 890 835 31.24% 24.10% 44.66%-0.08 -29.9 1
1949-09-25 Fola Esch W 3-139.5 897 922 48.50% 24.07% 27.43%+0.24 +23.3 5
1949-09-25 @ Progres Niedercorn L 1-339.5 922 897 27.43% 24.07% 48.50%-0.24 -23.3 1
1949-09-25 Differdange 03 W 2-142.2 939 963 48.74% 24.07% 27.19%+0.25 +13.4 4
1949-09-25 @ Racing FC Union Luxembourg L 1-242.2 963 939 27.19% 24.07% 48.74%-0.25 -13.4 4
1949-09-25 Spora Luxembourg W 2-036.6 998 1065 43.13% 24.11% 32.76%+0.01 +31.0 10
1949-09-25 @ SC Tetange L 0-236.6 1065 998 32.76% 24.11% 43.13%-0.01 -31.0 5
1949-09-25 Grevenmacher W 2-030.4 959 827 63.72% 23.46% 12.81%+1.11 +14.2 4
1949-09-25 @ Stade Dudelange L 0-230.4 827 959 12.81% 23.46% 63.72%-1.11 -14.2 3
1949-10-02 Stade Dudelange L 0-142.6 899 973 42.09% 24.10% 33.81%-0.03 -20.0 1
1949-10-02 @ Fola Esch W 1-042.6 973 899 33.81% 24.10% 42.09%+0.03 +19.9 6
1949-10-02 Jeunesse Esch W 1-034.7 953 865 60.28% 23.71% 16.01%+0.86 +9.1 6
1949-10-02 @ Racing FC Union Luxembourg L 0-134.7 865 953 16.01% 23.71% 60.28%-0.86 -9.1 5
1949-10-02 Progres Niedercorn D 3-360.4 860 920 44.10% 24.10% 31.80%+0.05 -0.8 2
1949-10-02 @ Rumelange D 3-360.4 920 860 31.80% 24.10% 44.10%-0.05 +0.8 6
1949-10-02 Spora Luxembourg L 2-347.0 859 1034 28.35% 23.92% 47.72%-0.58 -13.1 2
1949-10-02 @ US Dudelange W 3-247.0 1034 859 47.72% 23.92% 28.35%+0.58 +13.1 7
1949-10-16 Differdange 03 L 0-436.0 879 949 42.64% 24.11% 33.25%-0.01 -72.1 1
1949-10-16 @ Fola Esch W 4-036.0 949 879 33.25% 24.11% 42.64%+0.01 +72.1 6
1949-10-16 Racing FC Union Luxembourg W 2-147.3 813 962 31.76% 24.00% 44.23%-0.44 +19.6 5
1949-10-16 @ Grevenmacher L 1-247.3 962 813 44.23% 24.00% 31.76%+0.44 -19.6 6
1949-10-16 SC Tetange W 2-038.4 921 1029 37.30% 24.08% 38.62%-0.22 +35.1 8
1949-10-16 @ Progres Niedercorn L 0-238.4 1029 921 38.62% 24.08% 37.30%+0.22 -35.1 10
1949-10-16 Stade Dudelange W 2-146.7 860 993 33.82% 24.04% 42.14%-0.35 +18.8 4
1949-10-16 @ Rumelange L 1-246.7 993 860 42.14% 24.04% 33.82%+0.35 -18.8 6
1949-10-16 Jeunesse Esch W 2-141.7 845 855 50.34% 24.05% 25.61%+0.33 +12.8 4
1949-10-16 @ US Dudelange L 1-241.7 855 845 25.61% 24.05% 50.34%-0.33 -12.8 5
1949-10-30 Grevenmacher W 2-136.6 1021 832 67.39% 23.06% 9.54%+1.42 +5.4 8
1949-10-30 @ Differdange 03 L 1-236.6 832 1021 9.54% 23.06% 67.39%-1.42 -5.4 5
1949-10-30 Progres Niedercorn W 1-035.5 1015 956 57.67% 23.84% 18.48%+0.70 +10.3 10
1949-10-30 @ FC Schifflange 95 L 0-135.5 956 1015 18.48% 23.84% 57.67%-0.70 -10.3 8
1949-10-30 Spora Luxembourg W 2-149.3 843 1047 24.94% 23.81% 51.24%-0.74 +22.2 7
1949-10-30 @ Jeunesse Esch L 1-249.3 1047 843 51.24% 23.81% 24.94%+0.74 -22.2 7
1949-10-30 Rumelange D 2-256.4 942 878 58.13% 23.82% 18.05%+0.73 -3.2 7
1949-10-30 @ Racing FC Union Luxembourg D 2-256.4 878 942 18.05% 23.82% 58.13%-0.73 +3.2 5
1949-10-30 Fola Esch L 1-253.9 994 807 67.32% 23.07% 9.61%+1.41 -29.2 10
1949-10-30 @ SC Tetange W 2-153.9 807 994 9.61% 23.07% 67.32%-1.41 +29.2 3
1949-10-30 US Dudelange W 3-028.4 974 858 62.55% 23.56% 13.89%+1.02 +22.1 8
1949-10-30 @ Stade Dudelange L 0-328.4 858 974 13.89% 23.56% 62.55%-1.02 -22.1 4
1949-11-13 Grevenmacher W 4-242.4 836 827 52.51% 24.01% 23.49%+0.43 +18.4 5
1949-11-13 @ Fola Esch L 2-442.4 827 836 23.49% 24.01% 52.51%-0.43 -18.4 5
1949-11-13 Jeunesse Esch D 1-151.9 946 865 59.64% 23.75% 16.61%+0.82 -4.6 9
1949-11-13 @ Progres Niedercorn D 1-151.9 865 946 16.61% 23.75% 59.64%-0.82 +4.6 8
1949-11-13 Differdange 03 W 3-251.6 882 1027 32.26% 24.01% 43.73%-0.42 +18.4 7
1949-11-13 @ Rumelange L 2-351.6 1027 882 43.73% 24.01% 32.26%+0.42 -18.4 8
1949-11-13 FC Schifflange 95 L 0-143.2 965 1025 44.03% 24.10% 31.87%+0.05 -20.7 10
1949-11-13 @ SC Tetange W 1-043.2 1025 965 31.87% 24.10% 44.03%-0.05 +20.7 12
1949-11-13 Stade Dudelange D 2-256.4 1025 997 54.65% 23.95% 21.40%+0.54 -2.6 8
1949-11-13 @ Spora Luxembourg D 2-256.4 997 1025 21.40% 23.95% 54.65%-0.54 +2.6 9
1949-11-20 US Dudelange W 2-029.6 1008 836 66.40% 23.19% 10.41%+1.33 +11.7 10
1949-11-20 @ Differdange 03 L 0-229.6 836 1008 10.41% 23.19% 66.40%-1.33 -11.8 4
1949-11-20 Fola Esch D 2-256.7 1046 854 67.55% 23.04% 9.41%+1.43 -4.9 13
1949-11-20 @ FC Schifflange 95 D 2-256.7 854 1046 9.41% 23.04% 67.55%-1.43 +4.9 6
1949-11-20 Rumelange W 1-040.8 809 900 39.75% 24.10% 36.15%-0.12 +17.7 7
1949-11-20 @ Grevenmacher L 0-140.8 900 809 36.15% 24.10% 39.75%+0.12 -17.7 7
1949-11-20 SC Tetange W 5-033.4 870 944 42.06% 24.10% 33.84%-0.03 +74.3 10
1949-11-20 @ Jeunesse Esch L 0-533.4 944 870 33.84% 24.10% 42.06%+0.03 -74.3 10
1949-11-20 Spora Luxembourg D 2-256.3 939 1023 40.85% 24.10% 35.05%-0.08 -0.4 8
1949-11-20 @ Racing FC Union Luxembourg D 2-256.3 1023 939 35.05% 24.10% 40.85%+0.08 +0.4 9
1949-11-20 Progres Niedercorn W 5-132.8 999 941 57.59% 23.85% 18.56%+0.70 +30.9 11
1949-11-20 @ Stade Dudelange L 1-532.8 941 999 18.56% 23.85% 57.59%-0.70 -31.0 9
1949-11-27 Racing FC Union Luxembourg L 2-352.9 910 939 48.09% 24.08% 27.83%+0.22 -20.0 9
1949-11-27 @ Progres Niedercorn W 3-252.9 939 910 27.83% 24.08% 48.09%-0.22 +20.0 10
1949-11-27 Stade Dudelange L 2-347.6 870 1030 30.33% 23.97% 45.69%-0.50 -13.8 10
1949-11-27 @ SC Tetange W 3-247.6 1030 870 45.69% 23.97% 30.33%+0.50 +13.8 13
1949-11-27 Grevenmacher W 4-349.3 824 826 51.28% 24.03% 24.68%+0.37 +11.5 6
1949-11-27 @ US Dudelange L 3-449.3 826 824 24.68% 24.03% 51.28%-0.37 -11.5 7
1949-12-04 Progres Niedercorn W 4-239.0 1020 890 63.58% 23.48% 12.94%+1.09 +11.1 12
1949-12-04 @ Differdange 03 L 2-439.0 890 1020 12.94% 23.48% 63.58%-1.09 -11.1 9
1949-12-04 Spora Luxembourg L 1-241.3 815 1023 24.55% 23.80% 51.65%-0.76 -12.3 7
1949-12-04 @ Grevenmacher W 2-141.3 1023 815 51.65% 23.80% 24.55%+0.76 +12.3 11
1949-12-04 Fola Esch L 0-342.3 944 859 59.99% 23.73% 16.28%+0.85 -75.3 10
1949-12-04 @ Jeunesse Esch W 3-042.3 859 944 16.28% 23.73% 59.99%-0.85 +75.3 8
1949-12-04 SC Tetange W 3-242.9 959 856 61.47% 23.64% 14.90%+0.94 +7.7 12
1949-12-04 @ Racing FC Union Luxembourg L 2-342.9 856 959 14.90% 23.64% 61.47%-0.94 -7.7 10
1949-12-04 US Dudelange D 2-256.4 882 836 56.46% 23.89% 19.65%+0.64 -2.9 8
1949-12-04 @ Rumelange D 2-256.4 836 882 19.65% 23.89% 56.46%-0.64 +2.9 7
1949-12-04 FC Schifflange 95 W 1-037.2 1044 1041 51.83% 24.02% 24.15%+0.40 +12.9 15
1949-12-04 @ Stade Dudelange L 0-137.2 1041 1044 24.15% 24.02% 51.83%-0.40 -12.9 13
1949-12-11 SC Tetange L 0-149.8 1031 849 67.03% 23.11% 9.86%+1.38 -30.9 12
1949-12-11 @ Differdange 03 W 1-049.8 849 1031 9.86% 23.11% 67.03%-1.38 +30.9 12
1949-12-11 US Dudelange D 4-463.1 934 839 60.93% 23.67% 15.40%+0.91 -2.7 9
1949-12-11 @ Fola Esch D 4-463.1 839 934 15.40% 23.67% 60.93%-0.91 +2.7 8
1949-12-11 Progres Niedercorn L 1-343.8 803 879 41.83% 24.10% 34.06%-0.04 -32.4 7
1949-12-11 @ Grevenmacher W 3-143.8 879 803 34.06% 24.10% 41.83%+0.04 +32.4 11
1949-12-11 FC Schifflange 95 D 1-151.9 966 1028 43.81% 24.10% 32.09%+0.04 -1.1 13
1949-12-11 @ Racing FC Union Luxembourg D 1-151.9 1028 966 32.09% 24.10% 43.81%-0.04 +1.1 14
1949-12-11 Spora Luxembourg L 0-432.5 879 1035 30.85% 23.99% 45.16%-0.48 -56.0 8
1949-12-11 @ Rumelange W 4-032.5 1035 879 45.16% 23.99% 30.85%+0.48 +56.0 13
1949-12-11 Jeunesse Esch W 3-026.9 1057 869 67.35% 23.07% 9.58%+1.41 +15.8 17
1949-12-11 @ Stade Dudelange L 0-326.9 869 1057 9.58% 23.07% 67.35%-1.41 -15.8 10
1950-01-08 Racing FC Union Luxembourg W 4-354.1 841 965 35.17% 24.06% 40.77%-0.30 +17.0 10
1950-01-08 @ US Dudelange L 3-454.1 965 841 40.77% 24.06% 35.17%+0.30 -17.0 13
1950-01-08 Jeunesse Esch L 1-253.8 1029 853 66.66% 23.16% 10.18%+1.35 -28.9 14
1950-01-08 @ FC Schifflange 95 W 2-153.8 853 1029 10.18% 23.16% 66.66%-1.35 +28.9 12
1950-01-08 Rumelange W 3-028.6 932 823 61.95% 23.60% 14.44%+0.98 +22.9 11
1950-01-08 @ Fola Esch L 0-328.6 823 932 14.44% 23.60% 61.95%-0.98 -22.9 8
1950-01-08 Differdange 03 W 5-448.4 1091 1000 60.53% 23.70% 15.78%+0.88 +7.8 15
1950-01-08 @ Spora Luxembourg L 4-548.4 1000 1091 15.78% 23.70% 60.53%-0.88 -7.8 12
1950-01-15 Differdange 03 W 3-031.4 1000 993 52.39% 24.01% 23.60%+0.42 +34.7 16
1950-01-15 @ FC Schifflange 95 L 0-331.4 993 1000 23.60% 24.01% 52.39%-0.42 -34.7 12
1950-01-15 Racing FC Union Luxembourg L 0-142.9 882 948 43.18% 24.11% 32.71%+0.02 -20.4 12
1950-01-15 @ Jeunesse Esch W 1-042.9 948 882 32.71% 24.11% 43.18%-0.02 +20.4 15
1950-01-15 Rumelange D 2-256.5 911 800 62.15% 23.59% 14.26%+0.99 -3.9 12
1950-01-15 @ Progres Niedercorn D 2-256.5 800 911 14.26% 23.59% 62.15%-0.99 +3.9 9
1950-01-15 Grevenmacher D 3-360.5 879 770 62.01% 23.60% 14.39%+0.98 -3.2 13
1950-01-15 @ SC Tetange D 3-360.5 770 879 14.39% 23.60% 62.01%-0.98 +3.2 8
1950-01-15 US Dudelange L 2-455.9 1099 858 70.10% 22.62% 7.28%+1.70 -47.2 15
1950-01-15 @ Spora Luxembourg W 4-255.9 858 1099 7.28% 22.62% 70.10%-1.70 +47.2 12
1950-01-15 Fola Esch W 8-231.7 1073 955 62.68% 23.55% 13.77%+1.03 +28.7 19
1950-01-15 @ Stade Dudelange L 2-831.7 955 1073 13.77% 23.55% 62.68%-1.03 -28.7 11
1950-01-23 Jeunesse Esch D 0-048.6 958 861 61.00% 23.67% 15.34%+0.91 -5.5 13
1950-01-23 @ Differdange 03 D 0-048.6 861 958 15.34% 23.67% 61.00%-0.91 +5.5 13
1950-01-23 Spora Luxembourg D 0-048.5 926 1052 34.88% 24.05% 41.07%-0.31 +0.7 12
1950-01-23 @ Fola Esch D 0-048.5 1052 926 41.07% 24.05% 34.88%+0.31 -0.7 16
1950-01-23 FC Schifflange 95 L 0-232.4 773 1035 19.11% 23.52% 57.37%-1.06 -19.9 8
1950-01-23 @ Grevenmacher W 2-032.4 1035 773 57.37% 23.52% 19.11%+1.06 +19.9 18
1950-01-23 Stade Dudelange D 1-151.9 969 1101 33.94% 24.04% 42.02%-0.35 +0.8 16
1950-01-23 @ Racing FC Union Luxembourg D 1-151.9 1101 969 42.02% 24.04% 33.94%+0.35 -0.8 20
1950-01-23 SC Tetange L 0-239.5 804 876 42.46% 24.11% 33.44%-0.01 -37.9 9
1950-01-23 @ Rumelange W 2-039.5 876 804 33.44% 24.11% 42.46%+0.01 +37.9 15
1950-01-23 Progres Niedercorn W 4-242.7 906 907 51.29% 24.03% 24.68%+0.37 +19.2 14
1950-01-23 @ US Dudelange L 2-442.7 907 906 24.68% 24.03% 51.29%-0.37 -19.2 12
1950-01-29 Rumelange W 2-027.9 1055 766 72.18% 22.16% 5.66%+1.96 +6.6 20
1950-01-29 @ FC Schifflange 95 L 0-227.9 766 1055 5.66% 22.16% 72.18%-1.96 -6.6 9
1950-01-29 Grevenmacher W 1-034.0 867 753 62.34% 23.58% 14.09%+1.00 +8.2 15
1950-01-29 @ Jeunesse Esch L 0-134.0 753 867 14.09% 23.58% 62.34%-1.00 -8.2 8
1950-01-29 Spora Luxembourg L 0-235.7 888 1051 29.96% 23.97% 46.08%-0.51 -28.9 12
1950-01-29 @ Progres Niedercorn W 2-035.7 1051 888 46.08% 23.97% 29.96%+0.51 +28.8 18
1950-01-29 Fola Esch L 0-341.1 969 927 56.08% 23.90% 20.01%+0.61 -70.5 16
1950-01-29 @ Racing FC Union Luxembourg W 3-041.1 927 969 20.01% 23.90% 56.08%-0.61 +70.4 14
1950-01-29 US Dudelange D 1-151.9 914 925 50.26% 24.05% 25.69%+0.32 -2.5 16
1950-01-29 @ SC Tetange D 1-151.9 925 914 25.69% 24.05% 50.26%-0.32 +2.5 15
1950-01-29 Differdange 03 W 3-027.7 1100 952 64.84% 23.36% 11.80%+1.19 +19.1 22
1950-01-29 @ Stade Dudelange L 0-327.7 952 1100 11.80% 23.36% 64.84%-1.19 -19.1 13
1950-02-05 FC Schifflange 95 L 1-250.1 1080 1062 53.57% 23.98% 22.45%+0.48 -23.2 18
1950-02-05 @ Spora Luxembourg W 2-150.1 1062 1080 22.45% 23.98% 53.57%-0.48 +23.2 22
1950-02-12 Racing FC Union Luxembourg W 3-137.5 933 899 55.24% 23.93% 20.82%+0.57 +18.7 15
1950-02-12 @ Differdange 03 L 1-337.5 899 933 20.82% 23.93% 55.24%-0.57 -18.7 16
1950-02-12 SC Tetange W 5-130.7 1057 912 64.65% 23.38% 11.97%+1.18 +21.1 20
1950-02-12 @ Spora Luxembourg L 1-530.7 912 1057 11.97% 23.38% 64.65%-1.18 -21.1 16
1950-02-12 FC Schifflange 95 L 3-643.2 927 1085 30.65% 23.98% 45.37%-0.48 -28.9 15
1950-02-12 @ US Dudelange W 6-343.2 1085 927 45.37% 23.98% 30.65%+0.48 +28.9 24
1950-02-19 Fola Esch D 1-151.8 952 997 46.00% 24.10% 29.91%+0.13 -1.6 16
1950-02-19 @ Differdange 03 D 1-151.8 997 952 29.91% 24.10% 46.00%-0.13 +1.6 15
1950-02-19 Spora Luxembourg W 2-140.2 1114 1078 55.38% 23.93% 20.69%+0.58 +10.7 26
1950-02-19 @ FC Schifflange 95 L 1-240.2 1078 1114 20.69% 23.93% 55.38%-0.58 -10.7 20
1950-02-19 US Dudelange L 1-248.7 875 898 48.74% 24.07% 27.19%+0.25 -21.3 15
1950-02-19 @ Jeunesse Esch W 2-148.7 898 875 27.19% 24.07% 48.74%-0.25 +21.3 17
1950-02-19 Grevenmacher W 1-033.6 880 745 63.94% 23.45% 12.62%+1.12 +7.4 18
1950-02-19 @ Racing FC Union Luxembourg L 0-133.6 745 880 12.62% 23.45% 63.94%-1.12 -7.4 8
1950-02-19 Progres Niedercorn D 0-048.5 890 859 54.90% 23.94% 21.16%+0.55 -3.9 17
1950-02-19 @ SC Tetange D 0-048.5 859 890 21.16% 23.94% 54.90%-0.55 +3.9 13
1950-02-19 Rumelange W 6-024.2 1120 760 74.74% 21.37% 3.89%+2.36 +12.5 24
1950-02-19 @ Stade Dudelange L 0-624.2 760 1120 3.89% 21.37% 74.74%-2.36 -12.5 9
1950-02-26 SC Tetange W 3-135.4 999 887 62.24% 23.58% 14.18%+1.00 +13.4 17
1950-02-26 @ Fola Esch L 1-335.4 887 999 14.18% 23.58% 62.24%-1.00 -13.4 17
1950-02-26 Differdange 03 L 0-430.4 738 950 24.07% 23.78% 52.15%-0.79 -45.9 8
1950-02-26 @ Grevenmacher W 4-030.4 950 738 52.15% 23.78% 24.07%+0.79 +45.9 18
1950-02-26 FC Schifflange 95 L 2-344.1 863 1124 19.18% 23.52% 57.30%-1.05 -9.5 13
1950-02-26 @ Progres Niedercorn W 3-244.1 1124 863 57.30% 23.52% 19.18%+1.05 +9.5 28
1950-02-26 Racing FC Union Luxembourg L 0-433.1 747 888 32.92% 24.02% 43.05%-0.39 -59.0 9
1950-02-26 @ Rumelange W 4-033.1 888 747 43.05% 24.02% 32.92%+0.39 +59.0 20
1950-02-26 Jeunesse Esch D 2-256.7 1067 854 68.74% 22.86% 8.39%+1.55 -5.1 21
1950-02-26 @ Spora Luxembourg D 2-256.7 854 1067 8.39% 22.86% 68.74%-1.55 +5.1 16
1950-02-26 Stade Dudelange L 2-934.5 920 1132 24.09% 23.78% 52.13%-0.79 -52.6 17
1950-02-26 @ US Dudelange W 9-234.5 1132 920 52.13% 23.78% 24.09%+0.79 +52.6 26
1950-03-05 Stade Dudelange L 0-130.9 692 1185 5.91% 21.44% 72.66%-2.32 -3.6 8
1950-03-05 @ Grevenmacher W 1-030.9 1185 692 72.66% 21.44% 5.91%+2.32 +3.5 28
1950-03-26 Rumelange W 1-030.9 996 688 72.93% 21.96% 5.11%+2.07 +3.1 20
1950-03-26 @ Differdange 03 L 0-130.9 688 996 5.11% 21.96% 72.93%-2.07 -3.1 9
1950-03-26 SC Tetange W 2-135.5 1134 873 71.01% 22.44% 6.55%+1.81 +3.8 30
1950-03-26 @ FC Schifflange 95 L 1-235.5 873 1134 6.55% 22.44% 71.01%-1.81 -3.8 17
1950-03-26 Fola Esch D 1-152.1 688 1012 14.08% 23.09% 62.82%-1.40 +5.3 9
1950-03-26 @ Grevenmacher D 1-152.1 1012 688 62.82% 23.09% 14.08%+1.40 -5.3 18
1950-03-26 Progres Niedercorn W 2-141.2 859 854 52.07% 24.02% 23.91%+0.41 +12.1 18
1950-03-26 @ Jeunesse Esch L 1-241.2 854 859 23.91% 24.02% 52.07%-0.41 -12.1 13
1950-03-26 US Dudelange W 3-136.2 947 867 59.54% 23.75% 16.71%+0.82 +15.5 22
1950-03-26 @ Racing FC Union Luxembourg L 1-336.2 867 947 16.71% 23.75% 59.54%-0.82 -15.5 17
1950-03-26 Spora Luxembourg W 3-028.2 1188 1062 63.29% 23.50% 13.21%+1.07 +21.2 30
1950-03-26 @ Stade Dudelange L 0-328.2 1062 1188 13.21% 23.50% 63.29%-1.07 -21.2 21
1950-04-23 Progres Niedercorn L 1-546.8 1007 842 65.95% 23.24% 10.81%+1.29 -90.4 18
1950-04-23 @ Fola Esch W 5-146.8 842 1007 10.81% 23.24% 65.95%-1.29 +90.4 15
1950-04-23 Jeunesse Esch L 1-242.1 685 871 27.16% 23.89% 48.95%-0.64 -13.3 9
1950-04-23 @ Rumelange W 2-142.1 871 685 48.95% 23.89% 27.16%+0.64 +13.3 20
1950-04-30 FC Schifflange 95 L 1-240.9 916 1138 23.13% 23.74% 53.13%-0.83 -11.7 18
1950-04-30 @ Fola Esch W 2-140.9 1138 916 53.13% 23.74% 23.13%+0.83 +11.7 32
1950-04-30 Stade Dudelange D 2-256.6 932 1209 17.74% 23.42% 58.84%-1.14 +3.3 16
1950-04-30 @ Progres Niedercorn D 2-256.6 1209 932 58.84% 23.42% 17.74%+1.14 -3.3 31
1950-04-30 Grevenmacher W 2-142.1 672 694 48.94% 24.07% 26.99%+0.26 +13.3 11
1950-04-30 @ Rumelange L 1-242.1 694 672 26.99% 24.07% 48.94%-0.26 -13.3 9
1950-04-30 Jeunesse Esch D 0-048.5 869 884 49.76% 24.06% 26.18%+0.30 -2.7 18
1950-04-30 @ SC Tetange D 0-048.5 884 869 26.18% 24.06% 49.76%-0.30 +2.7 21
1950-04-30 Racing FC Union Luxembourg W 3-136.2 1041 962 59.48% 23.76% 16.76%+0.81 +15.5 23
1950-04-30 @ Spora Luxembourg L 1-336.2 962 1041 16.76% 23.76% 59.48%-0.81 -15.5 22
1950-04-30 Differdange 03 D 0-048.5 852 999 31.92% 24.01% 44.07%-0.43 +1.3 18
1950-04-30 @ US Dudelange D 0-048.5 999 852 44.07% 24.01% 31.92%+0.43 -1.3 21
1950-05-07 Spora Luxembourg W 2-143.5 998 1056 44.26% 24.10% 31.64%+0.06 +15.1 23
1950-05-07 @ Differdange 03 L 1-243.5 1056 998 31.64% 24.10% 44.26%-0.06 -15.1 23
1950-05-07 US Dudelange L 1-242.6 680 853 28.75% 23.93% 47.31%-0.57 -14.0 9
1950-05-07 @ Grevenmacher W 2-142.6 853 680 47.31% 23.93% 28.75%+0.57 +14.0 20
1950-05-07 FC Schifflange 95 L 1-336.8 887 1149 19.05% 23.52% 57.44%-1.06 -17.2 21
1950-05-07 @ Jeunesse Esch W 3-136.8 1149 887 57.44% 23.52% 19.05%+1.06 +17.2 34
1950-05-07 Progres Niedercorn L 1-249.8 947 936 52.75% 24.00% 23.25%+0.44 -22.9 22
1950-05-07 @ Racing FC Union Luxembourg W 2-149.8 936 947 23.25% 24.00% 52.75%-0.44 +22.9 18
1950-05-07 Fola Esch W 1-045.7 685 905 23.32% 23.75% 52.93%-0.82 +24.3 13
1950-05-07 @ Rumelange L 0-145.7 905 685 52.93% 23.75% 23.32%+0.82 -24.3 18
1950-05-07 SC Tetange W 2-134.6 1206 867 74.07% 21.61% 4.33%+2.24 +2.5 33
1950-05-07 @ Stade Dudelange L 1-234.6 867 1206 4.33% 21.61% 74.07%-2.24 -2.5 18
1950-05-18 Stade Dudelange L 0-144.1 1167 1209 46.40% 24.09% 29.51%+0.15 -21.6 34
1950-05-18 @ FC Schifflange 95 W 1-044.1 1209 1167 29.51% 24.09% 46.40%-0.15 +21.6 35
1950-05-18 Jeunesse Esch D 1-151.9 880 870 52.72% 24.00% 23.28%+0.44 -3.0 19
1950-05-18 @ Fola Esch D 1-151.9 870 880 23.28% 24.00% 52.72%-0.44 +3.0 22
1950-05-18 Differdange 03 W 6-239.2 958 1013 44.76% 24.10% 31.14%+0.08 +40.0 20
1950-05-18 @ Progres Niedercorn L 2-639.2 1013 958 31.14% 24.10% 44.76%-0.08 -40.0 23
1950-05-18 Racing FC Union Luxembourg W 3-033.9 864 924 44.12% 24.10% 31.78%+0.05 +44.0 20
1950-05-18 @ SC Tetange L 0-333.9 924 864 31.78% 24.10% 44.12%-0.05 -44.0 22
1950-05-18 Grevenmacher W 5-232.4 1041 666 75.22% 21.19% 3.59%+2.44 +4.4 25
1950-05-18 @ Spora Luxembourg L 2-532.4 666 1041 3.59% 21.19% 75.22%-2.44 -4.4 9
1950-05-18 Rumelange W 2-029.9 867 710 65.46% 23.30% 11.25%+1.24 +12.6 22
1950-05-18 @ US Dudelange L 0-229.9 710 867 11.25% 23.30% 65.46%-1.24 -12.6 13

Biggest Upsets

The 25 games where the underdog won despite the lowest pregame win probability. Underdog Win % is the winner's pregame chance of winning the game (lower = bigger upset). @ before a team name indicates the away side. An asterisk (*) after the date marks a playoff game.

# Date Underdog Win % Winning Team Losing Team
Team Elo Score Team Elo Score
1 1950-01-15 7.28% US Dudelange 858 4 @ Spora Luxembourg 1099 2
2 1949-10-30 9.61% Fola Esch 807 2 @ SC Tetange 994 1
3 1949-12-11 9.86% SC Tetange 849 1 @ Differdange 03 1031 0
4 1950-01-08 10.18% Jeunesse Esch 853 2 @ FC Schifflange 95 1029 1
5 1950-04-23 10.81% Progres Niedercorn 842 5 @ Fola Esch 1007 1
6 1949-12-04 16.28% Fola Esch 859 3 @ Jeunesse Esch 944 0
7 1949-08-28 19.10% SC Tetange 903 4 @ Grevenmacher 956 1
8 1950-01-29 20.01% Fola Esch 927 3 @ Racing FC Union Luxembourg 969 0
9 1950-02-05 22.45% FC Schifflange 95 1062 2 @ Spora Luxembourg 1080 1
10 1950-05-07 23.25% Progres Niedercorn 936 2 @ Racing FC Union Luxembourg 947 1
11 1950-05-07 23.32% @ Rumelange 685 1 Fola Esch 905 0
12 1949-10-30 24.94% @ Jeunesse Esch 843 2 Spora Luxembourg 1047 1
13 1949-09-04 25.08% Differdange 03 902 3 @ Jeunesse Esch 896 0
14 1949-08-21 26.91% Grevenmacher 919 3 @ Progres Niedercorn 898 1
15 1950-02-19 27.19% US Dudelange 898 2 @ Jeunesse Esch 875 1
16 1949-11-27 27.83% Racing FC Union Luxembourg 939 3 @ Progres Niedercorn 910 2
17 1950-05-18 29.51% Stade Dudelange 1209 1 @ FC Schifflange 95 1167 0
18 1949-10-16 31.76% @ Grevenmacher 813 2 Racing FC Union Luxembourg 962 1
19 1949-11-13 31.87% FC Schifflange 95 1025 1 @ SC Tetange 965 0
20 1949-11-13 32.26% @ Rumelange 882 3 Differdange 03 1027 2
21 1950-01-15 32.71% Racing FC Union Luxembourg 948 1 @ Jeunesse Esch 882 0
22 1949-10-16 33.25% Differdange 03 949 4 @ Fola Esch 879 0
23 1950-01-23 33.44% SC Tetange 876 2 @ Rumelange 804 0
24 1949-10-02 33.81% Stade Dudelange 973 1 @ Fola Esch 899 0
25 1949-10-16 33.82% @ Rumelange 860 2 Stade Dudelange 993 1

Biggest Elo Changes

The 25 games that resulted in the largest shift in Elo rating.

# Date Elo Δ Winning Team Losing Team Tie %
Team Score Elo Win % Team Score Elo Win %
1 1950-04-23 90.43 Progres Niedercorn 5 842 10.81% @ Fola Esch 1 1007 65.95% 23.24%
2 1949-12-04 75.30 Fola Esch 3 859 16.28% @ Jeunesse Esch 0 944 59.99% 23.73%
3 1949-11-20 74.28 @ Jeunesse Esch 5 870 42.06% SC Tetange 0 944 33.84% 24.10%
4 1949-10-16 72.12 Differdange 03 4 949 33.25% @ Fola Esch 0 879 42.64% 24.11%
5 1950-01-29 70.45 Fola Esch 3 927 20.01% @ Racing FC Union Luxembourg 0 969 56.08% 23.90%
6 1949-09-04 65.55 @ FC Schifflange 95 7 943 56.63% Grevenmacher 0 895 19.48% 23.88%
7 1949-09-04 64.29 Differdange 03 3 902 25.08% @ Jeunesse Esch 0 896 50.89% 24.04%
8 1949-08-28 60.39 SC Tetange 4 903 19.10% @ Grevenmacher 1 956 57.03% 23.87%
9 1950-02-26 58.96 Racing FC Union Luxembourg 4 888 43.05% @ Rumelange 0 747 32.92% 24.02%
10 1949-12-11 56.03 Spora Luxembourg 4 1035 45.16% @ Rumelange 0 879 30.85% 23.99%
11 1950-02-26 52.60 Stade Dudelange 9 1132 52.13% @ US Dudelange 2 920 24.09% 23.78%
12 1950-01-15 47.23 US Dudelange 4 858 7.28% @ Spora Luxembourg 2 1099 70.10% 22.62%
13 1950-02-26 45.89 Differdange 03 4 950 52.15% @ Grevenmacher 0 738 24.07% 23.78%
14 1950-05-18 43.95 @ SC Tetange 3 864 44.12% Racing FC Union Luxembourg 0 924 31.78% 24.10%
15 1950-05-18 39.97 @ Progres Niedercorn 6 958 44.76% Differdange 03 2 1013 31.14% 24.10%
16 1949-08-21 39.44 @ SC Tetange 4 864 41.44% Differdange 03 1 943 34.45% 24.10%
17 1950-01-23 37.87 SC Tetange 2 876 33.44% @ Rumelange 0 804 42.46% 24.11%
18 1949-08-21 37.06 Grevenmacher 3 919 26.91% @ Progres Niedercorn 1 898 49.02% 24.07%
19 1949-10-16 35.14 @ Progres Niedercorn 2 921 37.30% SC Tetange 0 1029 38.62% 24.08%
20 1949-08-21 34.70 @ US Dudelange 2 879 37.93% Fola Esch 0 984 37.98% 24.09%
21 1950-01-15 34.69 @ FC Schifflange 95 3 1000 52.39% Differdange 03 0 993 23.60% 24.01%
22 1949-12-11 32.41 Progres Niedercorn 3 879 34.06% @ Grevenmacher 1 803 41.83% 24.10%
23 1949-09-04 31.48 @ Progres Niedercorn 5 860 44.91% US Dudelange 2 914 30.99% 24.10%
24 1949-09-25 30.99 @ SC Tetange 2 998 43.13% Spora Luxembourg 0 1065 32.76% 24.11%
25 1949-11-20 30.95 @ Stade Dudelange 5 999 57.59% Progres Niedercorn 1 941 18.56% 23.85%

Most & Least Exciting Games

The season’s games ranked by excitement rating (0–100) — a blend of closeness, upset, team quality, and scoring. An asterisk (*) after the date indicates a playoff game.

# Date Excitement Winning Team Losing Team Tie %
Team Score Elo Win % Team Score Elo Win %
1 1949-12-11 63.1 @ Fola Esch 4 934 60.93% US Dudelange 4 839 15.40% 23.67%
2 1950-01-15 60.5 @ SC Tetange 3 879 62.01% Grevenmacher 3 770 14.39% 23.60%
3 1949-09-04 60.4 @ Stade Dudelange 3 958 54.08% Racing FC Union Luxembourg 3 934 21.95% 23.97%
4 1949-10-02 60.4 @ Rumelange 3 860 44.10% Progres Niedercorn 3 920 31.80% 24.10%
5 1949-11-20 56.7 @ FC Schifflange 95 2 1046 67.55% Fola Esch 2 854 9.41% 23.04%
6 1950-02-26 56.7 @ Spora Luxembourg 2 1067 68.74% Jeunesse Esch 2 854 8.39% 22.86%
7 1949-09-11 56.6 @ Spora Luxembourg 2 1070 66.75% Progres Niedercorn 2 892 10.10% 23.15%
8 1950-04-30 56.6 @ Progres Niedercorn 2 932 17.74% Stade Dudelange 2 1209 58.84% 23.42%
9 1950-01-15 56.5 @ Progres Niedercorn 2 911 62.15% Rumelange 2 800 14.26% 23.59%
10 1949-10-30 56.4 @ Racing FC Union Luxembourg 2 942 58.13% Rumelange 2 878 18.05% 23.82%
11 1949-11-13 56.4 @ Spora Luxembourg 2 1025 54.65% Stade Dudelange 2 997 21.40% 23.95%
12 1949-12-04 56.4 @ Rumelange 2 882 56.46% US Dudelange 2 836 19.65% 23.89%
13 1949-11-20 56.3 @ Racing FC Union Luxembourg 2 939 40.85% Spora Luxembourg 2 1023 35.05% 24.10%
14 1950-01-15 55.9 US Dudelange 4 858 7.28% @ Spora Luxembourg 2 1099 70.10% 22.62%
15 1950-01-08 54.1 @ US Dudelange 4 841 35.17% Racing FC Union Luxembourg 3 965 40.77% 24.06%
16 1949-10-30 53.9 Fola Esch 2 807 9.61% @ SC Tetange 1 994 67.32% 23.07%
17 1950-01-08 53.8 Jeunesse Esch 2 853 10.18% @ FC Schifflange 95 1 1029 66.66% 23.16%
18 1949-11-27 52.9 Racing FC Union Luxembourg 3 939 27.83% @ Progres Niedercorn 2 910 48.09% 24.08%
19 1950-03-26 52.1 @ Grevenmacher 1 688 14.08% Fola Esch 1 1012 62.82% 23.09%
20 1949-09-11 51.9 @ Grevenmacher 1 830 51.24% Jeunesse Esch 1 832 24.73% 24.03%
21 1949-11-13 51.9 @ Progres Niedercorn 1 946 59.64% Jeunesse Esch 1 865 16.61% 23.75%
22 1949-12-11 51.9 @ Racing FC Union Luxembourg 1 966 43.81% FC Schifflange 95 1 1028 32.09% 24.10%
23 1950-01-23 51.9 @ Racing FC Union Luxembourg 1 969 33.94% Stade Dudelange 1 1101 42.02% 24.04%
24 1950-01-29 51.9 @ SC Tetange 1 914 50.26% US Dudelange 1 925 25.69% 24.05%
25 1950-05-18 51.9 @ Fola Esch 1 880 52.72% Jeunesse Esch 1 870 23.28% 24.00%
# Date Excitement Winning Team Losing Team Tie %
Team Score Elo Win % Team Score Elo Win %
1 1950-02-19 24.2 @ Stade Dudelange 6 1120 74.74% Rumelange 0 760 3.89% 21.37%
2 1949-12-11 26.9 @ Stade Dudelange 3 1057 67.35% Jeunesse Esch 0 869 9.58% 23.07%
3 1950-01-29 27.7 @ Stade Dudelange 3 1100 64.84% Differdange 03 0 952 11.80% 23.36%
4 1950-01-29 27.9 @ FC Schifflange 95 2 1055 72.18% Rumelange 0 766 5.66% 22.16%
5 1950-03-26 28.2 @ Stade Dudelange 3 1188 63.29% Spora Luxembourg 0 1062 13.21% 23.50%
6 1949-10-30 28.4 @ Stade Dudelange 3 974 62.55% US Dudelange 0 858 13.89% 23.56%
7 1950-01-08 28.6 @ Fola Esch 3 932 61.95% Rumelange 0 823 14.44% 23.60%
8 1949-09-04 28.8 @ Spora Luxembourg 3 1046 61.04% Fola Esch 0 949 15.30% 23.67%
9 1949-11-20 29.6 @ Differdange 03 2 1008 66.40% US Dudelange 0 836 10.41% 23.19%
10 1950-05-18 29.9 @ US Dudelange 2 867 65.46% Rumelange 0 710 11.25% 23.30%
11 1949-09-04 30.4 @ FC Schifflange 95 7 943 56.63% Grevenmacher 0 895 19.48% 23.88%
12 1949-09-25 30.4 @ Stade Dudelange 2 959 63.72% Grevenmacher 0 827 12.81% 23.46%
13 1950-02-26 30.4 Differdange 03 4 950 52.15% @ Grevenmacher 0 738 24.07% 23.78%
14 1950-02-12 30.7 @ Spora Luxembourg 5 1057 64.65% SC Tetange 1 912 11.97% 23.38%
15 1950-03-05 30.9 Stade Dudelange 1 1185 72.66% @ Grevenmacher 0 692 5.91% 21.44%
16 1950-03-26 30.9 @ Differdange 03 1 996 72.93% Rumelange 0 688 5.11% 21.96%
17 1950-01-15 31.4 @ FC Schifflange 95 3 1000 52.39% Differdange 03 0 993 23.60% 24.01%
18 1950-01-15 31.7 @ Stade Dudelange 8 1073 62.68% Fola Esch 2 955 13.77% 23.55%
19 1950-01-23 32.4 FC Schifflange 95 2 1035 57.37% @ Grevenmacher 0 773 19.11% 23.52%
20 1950-05-18 32.4 @ Spora Luxembourg 5 1041 75.22% Grevenmacher 2 666 3.59% 21.19%
21 1949-12-11 32.5 Spora Luxembourg 4 1035 45.16% @ Rumelange 0 879 30.85% 23.99%
22 1949-11-20 32.8 @ Stade Dudelange 5 999 57.59% Progres Niedercorn 1 941 18.56% 23.85%
23 1950-02-26 33.1 Racing FC Union Luxembourg 4 888 43.05% @ Rumelange 0 747 32.92% 24.02%
24 1949-11-20 33.4 @ Jeunesse Esch 5 870 42.06% SC Tetange 0 944 33.84% 24.10%
25 1950-02-19 33.6 @ Racing FC Union Luxembourg 1 880 63.94% Grevenmacher 0 745 12.62% 23.45%