‹ ›

1948-49 Luxembourg National Division Season

132 games

Final

Champion

Spora Luxembourg

38 points

Relegated

No relegation

Biggest Overachiever

Spora Luxembourg

8.13 points above expected

38 points · 29.87 expected points

Biggest Disappointment

CS Petange

9.20 points below expected

4 points · 13.20 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 Spora Luxembourg 22 18 2 2 38 65 26 +39 29.87 +8.13
2 Fola Esch 22 16 2 4 34 57 24 +33 28.18 +5.82
3 Stade Dudelange 22 12 5 5 29 45 25 +20 29.23 -0.23
4 FC Schifflange 95 22 11 2 9 24 46 35 +11 24.60 -0.60
5 Progres Niedercorn 22 7 8 7 22 35 34 +1 23.16 -1.16
6 Differdange 03 22 8 5 9 21 50 38 +12 23.62 -2.62
7 Racing FC Union Luxembourg 22 6 9 7 21 44 39 +5 19.97 +1.03
8 US Dudelange 22 8 5 9 21 40 46 -6 22.49 -1.49
9 SC Tetange 22 7 3 12 17 34 50 -16 16.68 +0.32
10 Oberkorn 22 7 3 12 17 32 63 -31 14.18 +2.82
11 Racing Rodange 22 7 2 13 16 36 46 -10 18.82 -2.82
12 CS Petange 22 1 2 19 4 23 81 -58 13.20 -9.20

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 Spora Luxembourg 38 29.87 +8.13
2 Fola Esch 34 28.18 +5.82
3 Oberkorn 17 14.18 +2.82
4 Racing FC Union Luxembourg 21 19.97 +1.03
5 SC Tetange 17 16.68 +0.32

Biggest Disappointments

# Team Actual Sim vsSim
1 CS Petange 4 13.20 -9.20
2 Racing Rodange 16 18.82 -2.82
3 Differdange 03 21 23.62 -2.62
4 US Dudelange 21 22.49 -1.49
5 Progres Niedercorn 22 23.16 -1.16

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 Spora Luxembourg 12 Dec 12 – May 1 1 in 205
2 Fola Esch 6 Aug 22 – Oct 10 1 in 174
3 FC Schifflange 95 6 Oct 31 – Dec 19 1 in 94
4 Oberkorn 2 Oct 31 – Nov 14 1 in 31
5 US Dudelange 3 Nov 14 – Dec 12 1 in 14

Most Unlikely Losing Streaks

# Team Games Dates Probability
1 CS Petange 14 Oct 31 – Apr 3 1 in 389
2 Stade Dudelange 4 Mar 6 – May 8 1 in 165
3 Progres Niedercorn 2 Oct 31 – Nov 14 1 in 32
4 FC Schifflange 95 3 Feb 6 – Feb 20 1 in 13
5 SC Tetange 4 Oct 10 – Nov 28 1 in 13

Most Unlikely Unbeaten Streaks

# Team Games Dates Probability
1 Racing FC Union Luxembourg 12 Dec 19 – May 8 1 in 1,306
2 Stade Dudelange 17 Sep 1 – Feb 20 1 in 58
3 Oberkorn 4 Mar 6 – May 8 1 in 35
4 US Dudelange 5 Oct 10 – Dec 12 1 in 19
5 Fola Esch 6 Aug 22 – Oct 10 1 in 18

Most Unlikely Winless Streaks

# Team Games Dates Probability
1 CS Petange 20 Aug 30 – Apr 3 1 in 155
2 Stade Dudelange 4 Mar 6 – May 8 1 in 17
3 Racing FC Union Luxembourg 5 Aug 22 – Oct 3 1 in 12
4 Racing Rodange 6 Nov 14 – Jan 9 1 in 11
5 Fola Esch 3 Dec 5 – Dec 19 1 in 9

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
Spora Luxembourg 1228 38 +15 9 8.0 +1.0
Fola Esch 1096 34 -16 8 7.2 +0.8
Stade Dudelange 1069 29 -105 2 6.1 -4.1
FC Schifflange 95 978 24 -54 5 6.8 -1.8
Progres Niedercorn 914 22 -9 3 4.0 -1.0
Racing FC Union Luxembourg 1012 21 +45 7 5.0 +2.0
Differdange 03 1001 21 +15 5 6.4 -1.4
US Dudelange 877 21 -45 3 4.8 -1.8
Oberkorn 811 17 +31 6 3.2 +2.8
SC Tetange 845 17 +109 6 2.7 +3.3
Racing Rodange 908 16 +39 4 4.0 +0.0
CS Petange 627 4 -25 2 1.8 +0.2

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 CP D0 FS9 FE OBE PN RFUL RR ST SL SD UD
CS Petange —
0-0-2
1.39
0-0-2
0.99
0-0-2
0.68
0-0-2
2.86
0-0-2
2.06
0-1-1
2.04
0-0-2
1.82
1-0-1
2.09
0-0-2
0.72
0-0-2
1.28
0-1-1
1.80
Differdange 03
2-0-0
4.24
—
1-0-1
2.79
0-0-2
2.20
2-0-0
3.62
0-1-1
3.43
0-1-1
3.58
1-0-1
3.79
1-1-0
3.55
0-1-1
1.79
1-0-1
1.76
0-1-1
2.99
FC Schifflange 95
2-0-0
4.64
1-0-1
2.83
—
1-0-1
1.90
1-1-0
4.14
1-1-0
2.65
0-0-2
3.57
2-0-0
3.28
1-0-1
4.22
0-0-2
1.95
1-0-1
1.99
1-0-1
2.98
Fola Esch
2-0-0
4.97
2-0-0
3.42
1-0-1
3.72
—
2-0-0
4.26
1-1-0
3.83
1-0-1
3.30
2-0-0
3.47
1-0-1
4.57
1-0-1
2.31
1-1-0
2.85
2-0-0
3.58
Oberkorn
2-0-0
2.75
0-0-2
2.00
0-1-1
1.48
0-0-2
1.37
—
1-0-1
1.44
1-1-0
1.66
1-1-0
2.12
1-0-1
2.25
0-0-2
1.53
0-0-2
0.86
1-0-1
1.72
Progres Niedercorn
2-0-0
3.56
1-1-0
2.19
0-1-1
2.96
0-1-1
1.79
1-0-1
4.18
—
1-1-0
3.18
1-1-0
3.31
1-1-0
3.62
0-0-2
1.46
0-2-0
1.98
0-0-2
3.40
Racing FC Union Luxembourg
1-1-0
3.58
1-1-0
2.03
2-0-0
2.05
1-0-1
2.32
0-1-1
3.96
0-1-1
2.43
—
1-0-1
3.08
0-1-1
3.40
0-1-1
1.25
0-1-1
1.53
0-2-0
3.02
Racing Rodange
2-0-0
3.80
1-0-1
1.83
0-0-2
2.33
0-0-2
2.15
0-1-1
3.49
0-1-1
2.30
1-0-1
2.53
—
2-0-0
2.97
0-0-2
2.09
0-0-2
1.48
1-0-1
2.29
SC Tetange
1-0-1
3.53
0-1-1
2.07
1-0-1
1.40
1-0-1
1.06
1-0-1
3.37
0-1-1
2.00
1-1-0
2.21
0-0-2
2.64
—
0-0-2
1.21
1-0-1
1.08
1-0-1
2.31
Spora Luxembourg
2-0-0
4.94
1-1-0
3.83
2-0-0
3.67
1-0-1
3.31
2-0-0
4.10
2-0-0
4.16
1-1-0
4.38
2-0-0
3.53
2-0-0
4.43
—
1-0-1
3.28
2-0-0
3.48
Stade Dudelange
2-0-0
4.35
1-0-1
3.86
1-0-1
3.62
0-1-1
2.77
2-0-0
4.77
0-2-0
3.64
1-1-0
4.09
2-0-0
4.14
1-0-1
4.55
1-0-1
2.34
—
1-1-0
4.39
US Dudelange
1-1-0
3.82
1-1-0
2.63
1-0-1
2.64
0-0-2
2.04
1-0-1
3.90
2-0-0
2.22
0-2-0
2.60
1-0-1
3.32
1-0-1
3.31
0-0-2
2.14
0-1-1
1.23
—

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.85 +7.1
Allowed 0.82 -4.8
Differential 0.91 +3.1

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
03.79%5.68%4.17%2.27%1.52%1.89%19.32%
15.68%9.09%6.06%4.92%1.89%3.03%30.68%
24.17%6.06%2.27%4.17%1.52%1.52%19.70%
32.27%4.92%4.17%3.03%1.52%0.38%16.29%
41.52%1.89%1.52%1.52%—0.38%6.82%
5+1.89%3.03%1.52%0.38%0.38%—7.20%
Total19.32%30.68%19.70%16.29%6.82%7.20%100%

Summary Statistics

Scored Allowed Difference
Mean 1.92 1.92 +0.00
SD 1.76 1.76 2.62
CV 0.92 0.92 —
Max 10 10 +10
Min 0 0 -10

Games Played: 132

↓ Scored | Allowed →012345+Total
0—9.09%—4.55%4.55%4.55%22.73%
1—9.09%18.18%9.09%9.09%4.55%50.00%
2—4.55%——4.55%18.18%27.27%
3———————
4———————
5+———————
Total—22.73%18.18%13.64%18.18%27.27%100%

Summary Statistics

Scored Allowed Difference
Mean 1.05 3.68 -2.64
SD 0.72 2.64 2.57
CV 0.69 0.72 —
Max 2 10 +1
Min 0 1 -10

Games Played: 22

↓ Scored | Allowed →012345+Total
0—4.55%9.09%4.55%——18.18%
1—18.18%4.55%4.55%——27.27%
2—4.55%—9.09%——13.64%
34.55%4.55%—4.55%—4.55%18.18%
44.55%9.09%—4.55%——18.18%
5+4.55%—————4.55%
Total13.64%40.91%13.64%27.27%—4.55%100%

Summary Statistics

Scored Allowed Difference
Mean 2.27 1.73 +0.55
SD 2.23 1.28 2.86
CV 0.98 0.74 —
Max 10 5 +10
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%9.09%13.64%———27.27%
14.55%4.55%—4.55%4.55%4.55%22.73%
24.55%13.64%—4.55%——22.73%
3——4.55%———4.55%
4——9.09%———9.09%
5+4.55%9.09%————13.64%
Total18.18%36.36%27.27%9.09%4.55%4.55%100%

Summary Statistics

Scored Allowed Difference
Mean 2.09 1.59 +0.50
SD 2.39 1.30 2.91
CV 1.14 0.82 —
Max 10 5 +9
Min 0 0 -4

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%——4.55%——9.09%
118.18%—4.55%4.55%——27.27%
24.55%4.55%4.55%4.55%——18.18%
34.55%4.55%4.55%———13.64%
44.55%4.55%—4.55%——13.64%
5+4.55%13.64%————18.18%
Total40.91%27.27%13.64%18.18%——100%

Summary Statistics

Scored Allowed Difference
Mean 2.59 1.09 +1.50
SD 1.84 1.15 2.24
CV 0.71 1.06 —
Max 6 3 +5
Min 0 0 -3

Games Played: 22

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

Summary Statistics

Scored Allowed Difference
Mean 1.45 2.86 -1.41
SD 1.22 2.44 2.92
CV 0.84 0.85 —
Max 4 10 +3
Min 0 0 -9

Games Played: 22

↓ Scored | Allowed →012345+Total
013.64%—4.55%——4.55%22.73%
14.55%13.64%13.64%——4.55%36.36%
2—9.09%4.55%4.55%——18.18%
34.55%4.55%—4.55%——13.64%
44.55%—————4.55%
5+——4.55%———4.55%
Total27.27%27.27%27.27%9.09%—9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.59 1.55 +0.05
SD 1.50 1.47 2.15
CV 0.94 0.95 —
Max 6 5 +4
Min 0 0 -5

Games Played: 22

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

Summary Statistics

Scored Allowed Difference
Mean 2.00 1.77 +0.23
SD 2.20 1.15 2.16
CV 1.10 0.65 —
Max 10 4 +8
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
0—13.64%————13.64%
19.09%4.55%4.55%4.55%4.55%4.55%31.82%
213.64%4.55%4.55%13.64%——36.36%
3—4.55%——9.09%—13.64%
4—————4.55%4.55%
5+———————
Total22.73%27.27%9.09%18.18%13.64%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.64 2.09 -0.45
SD 1.05 1.90 1.71
CV 0.64 0.91 —
Max 4 7 +2
Min 0 0 -4

Games Played: 22

↓ Scored | Allowed →012345+Total
0—4.55%9.09%4.55%—4.55%22.73%
14.55%4.55%4.55%13.64%4.55%4.55%36.36%
24.55%4.55%—4.55%——13.64%
34.55%—4.55%9.09%——18.18%
44.55%—4.55%———9.09%
5+———————
Total18.18%13.64%22.73%31.82%4.55%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.55 2.27 -0.73
SD 1.30 1.70 2.45
CV 0.84 0.75 —
Max 4 6 +4
Min 0 0 -6

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%—————4.55%
19.09%4.55%4.55%4.55%——22.73%
24.55%9.09%————13.64%
3—9.09%18.18%———27.27%
4—4.55%4.55%———9.09%
5+9.09%9.09%—4.55%——22.73%
Total27.27%36.36%27.27%9.09%——100%

Summary Statistics

Scored Allowed Difference
Mean 2.95 1.18 +1.77
SD 1.81 0.96 2.02
CV 0.61 0.81 —
Max 6 3 +6
Min 0 0 -2

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%13.64%—4.55%——22.73%
14.55%9.09%————13.64%
24.55%9.09%9.09%4.55%——27.27%
39.09%13.64%4.55%———27.27%
4———————
5+—4.55%4.55%———9.09%
Total22.73%50.00%18.18%9.09%——100%

Summary Statistics

Scored Allowed Difference
Mean 2.05 1.14 +0.91
SD 1.73 0.89 1.93
CV 0.85 0.78 —
Max 7 3 +6
Min 0 0 -3

Games Played: 22

↓ Scored | Allowed →012345+Total
04.55%4.55%4.55%——9.09%22.73%
14.55%13.64%4.55%9.09%——31.82%
29.09%4.55%——4.55%—18.18%
3—4.55%4.55%4.55%4.55%—18.18%
4———————
5+——4.55%—4.55%—9.09%
Total18.18%27.27%18.18%13.64%13.64%9.09%100%

Summary Statistics

Scored Allowed Difference
Mean 1.82 2.09 -0.27
SD 1.84 1.72 2.37
CV 1.01 0.82 —
Max 7 6 +4
Min 0 0 -6

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
Spora Luxembourg 1228 38 29.87 +8.13 100.0% 21 24 27 30 32 35 37
Fola Esch 1096 34 28.18 +5.82 97.0% 20 21 25 28 31 34 36
Stade Dudelange 1069 29 29.23 -0.23 53.0% 17 23 27 29 32 35 38
Racing FC Union Luxembourg 1012 21 19.97 +1.03 67.0% 13 14 17 20 23 26 28
Differdange 03 1001 21 23.62 -2.62 31.0% 14 17 21 23 26 30 36
FC Schifflange 95 978 24 24.60 -0.60 50.0% 16 18 22 24 27 31 33
Progres Niedercorn 914 22 23.16 -1.16 37.0% 11 15 21 24 26 29 34
Racing Rodange 908 16 18.82 -2.82 26.0% 11 13 16 18 21 25 30
US Dudelange 877 21 22.49 -1.49 40.0% 15 16 20 22 25 28 32
SC Tetange 845 17 16.68 +0.32 56.0% 8 10 14 17 20 23 29
Oberkorn 811 17 14.18 +2.82 81.0% 5 8 12 14 16 20 25
CS Petange 627 4 13.20 -9.20 1.0% 4 7 10 13 15 20 23

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
+1.52%
No Edge
41.67%18.18%40.15%
Elo Value
Home Edge: 5.26 Elo pts.
163 Elo
0.006 goals per Elo point
0500
Scoring Tilt
Expected
+0.31 goals
Neutral
-2+0.03+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.4
Open
123410
Champion Preseason Odds
42%
Spora Luxembourg, 1st of 12
LongshotFavorite
Title Margin
Expected
0.18/gm
Comfortable
00.130.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 3.08 * Some Luck: 3.08 to 4.61 * Lucky: 4.61 to 6.15 * Wild Swing: 6.15 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.25 * Close: 1.25 to 1.87 * Off: 1.87 to 2.49 * Way Off: 2.49 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
4.21 points
Some Luck
03.8410
Average Finish Error
Expected
0.83
Pinpoint
01.564
Biggest Overachiever
Expected 95.83%
100.00%
Spora Luxembourg
50100
Biggest Underachiever
Expected 4.17%
1.00%
CS Petange
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.21
Top-Heavy
00.170.5
Noll-Scully
Elo SD: 154.68
2.09
Wide Separation
11.651.852.052.5
Interquartile Edge
71%
Slight Edge
50%68%78%100%
Best vs. Worst
Baseline 96%
97%
Dominant
50%100%
Close Games
Expected
53%
Frequent
0%43%100%
Blowouts
Expected
25%
Occasional
0%34%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.56
Predictable
00.572
Matchup Imbalance
0.39
Notable Separation
00.350.5
Strangeness
Expected
1.31
Wilder Than Modeled
01.002
Repeatability
-0.10
Weak Carryover
00.430.621
Upset Rate
Expected
26%
Upset-Prone
0%25%50%
Clear Favorite Upset Rate
Expected
22%
Shaky Favorites
0%20%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.22 * Above Noise: 0.22 to 0.29 * Well Above Noise: 0.29 and up.
Probability calibration
0.97
Excellent
0.010.050.10.51
Calibration slope
Ideal
0.87
Calibrated
0.51.001.5
Calibration error (ECE)
Noise ceiling
0.080
Well Within Noise
00.1440.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
Spora Luxembourg42.00%27.00%14.00%8.00%4.00%3.00%2.00%—————
Fola Esch23.00%26.00%19.00%11.00%8.00%5.00%5.00%3.00%————
Stade Dudelange25.00%25.00%20.00%15.00%9.00%2.00%2.00%—1.00%1.00%——
FC Schifflange 954.00%8.00%13.00%19.00%21.00%10.00%12.00%8.00%4.00%1.00%——
Progres Niedercorn1.00%4.00%11.00%14.00%18.00%21.00%9.00%8.00%4.00%6.00%3.00%1.00%
Differdange 032.00%7.00%11.00%13.00%13.00%21.00%12.00%11.00%8.00%2.00%——
Racing FC Union Luxembourg—1.00%2.00%7.00%9.00%10.00%21.00%13.00%14.00%12.00%6.00%5.00%
US Dudelange2.00%1.00%9.00%10.00%13.00%15.00%15.00%16.00%6.00%12.00%—1.00%
SC Tetange1.00%———2.00%5.00%5.00%16.00%18.00%20.00%20.00%13.00%
Oberkorn———1.00%1.00%1.00%2.00%5.00%8.00%19.00%31.00%32.00%
Racing Rodange—1.00%1.00%2.00%2.00%6.00%13.00%15.00%32.00%14.00%11.00%3.00%
CS Petange—————1.00%2.00%5.00%5.00%13.00%29.00%45.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
Fola Esch 100% —
Spora Luxembourg 100% —
FC Schifflange 95 99.00% 1.00%
Stade Dudelange 99.00% 1.00%
Differdange 03 98.00% 2.00%
Progres Niedercorn 90.00% 10.00%
US Dudelange 87.00% 13.00%
Racing FC Union Luxembourg 77.00% 23.00%
Racing Rodange 72.00% 28.00%
SC Tetange 47.00% 53.00%
Oberkorn 18.00% 82.00%
CS Petange 13.00% 87.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
1948-08-15 Differdange 03 L 0-434.9 939 957 38.88% 19.28% 41.84%-0.08 -56.8 0
1948-08-15 @ Oberkorn W 4-034.9 957 939 41.84% 19.28% 38.88%+0.08 +56.8 2
1948-08-22 Racing FC Union Luxembourg W 2-041.0 905 969 32.72% 19.25% 48.03%-0.36 +35.7 2
1948-08-22 @ Fola Esch L 0-241.0 969 905 48.03% 19.25% 32.72%+0.36 -35.7 0
1948-08-22 Progres Niedercorn D 3-360.7 883 948 32.51% 19.25% 48.24%-0.36 +0.9 1
1948-08-22 @ SC Tetange D 3-360.7 948 883 48.24% 19.25% 32.51%+0.36 -0.8 1
1948-08-22 Racing Rodange W 3-249.8 926 954 37.44% 19.28% 43.28%-0.14 +15.5 2
1948-08-22 @ Spora Luxembourg L 2-349.8 954 926 43.28% 19.28% 37.44%+0.14 -15.5 0
1948-08-22 FC Schifflange 95 W 3-140.6 971 927 47.49% 19.26% 33.25%+0.30 +22.8 2
1948-08-22 @ US Dudelange L 1-340.6 927 971 33.25% 19.26% 47.49%-0.30 -22.8 0
1948-08-30 Stade Dudelange W 1-046.2 905 1047 23.33% 19.11% 57.56%-0.84 +22.4 2
1948-08-30 @ FC Schifflange 95 L 0-146.2 1047 905 57.56% 19.11% 23.33%+0.84 -22.4 0
1948-08-30 Spora Luxembourg L 1-636.2 882 941 33.25% 19.26% 47.49%-0.33 -50.9 0
1948-08-30 @ Oberkorn W 6-136.2 941 882 47.49% 19.26% 33.25%+0.33 +50.9 4
1948-08-30 CS Petange W 4-034.8 947 942 42.19% 19.28% 38.53%+0.06 +56.3 3
1948-08-30 @ Progres Niedercorn L 0-434.8 942 947 38.53% 19.28% 42.19%-0.06 -56.4 0
1948-08-30 SC Tetange L 2-449.1 933 884 48.27% 19.25% 32.48%+0.33 -27.8 0
1948-08-30 @ Racing FC Union Luxembourg W 4-249.1 884 933 32.48% 19.25% 48.27%-0.33 +27.8 3
1948-08-30 Fola Esch L 2-349.2 939 941 41.17% 19.28% 39.54%+0.02 -14.9 0
1948-08-30 @ Racing Rodange W 3-249.2 941 939 39.54% 19.28% 41.17%-0.02 +14.9 4
1948-08-30 Differdange 03 W 3-249.5 993 1014 38.57% 19.28% 42.15%-0.09 +15.1 4
1948-08-30 @ US Dudelange L 2-349.5 1014 993 42.15% 19.28% 38.57%+0.09 -15.1 2
1948-09-01 CS Petange W 3-031.1 1024 885 58.88% 19.09% 22.03%+0.88 +26.9 2
1948-09-01 @ Stade Dudelange L 0-331.1 885 1024 22.03% 19.09% 58.88%-0.88 -26.9 0
1948-09-05 FC Schifflange 95 L 0-241.9 999 927 51.17% 19.23% 29.60%+0.47 -37.8 2
1948-09-05 @ Differdange 03 W 2-041.9 927 999 29.60% 19.23% 51.17%-0.47 +37.8 4
1948-09-05 Oberkorn W 4-030.2 956 831 57.37% 19.13% 23.50%+0.80 +37.2 6
1948-09-05 @ Fola Esch L 0-430.2 831 956 23.50% 19.13% 57.37%-0.80 -37.2 0
1948-09-05 Racing Rodange L 0-238.5 911 924 39.69% 19.28% 41.03%-0.04 -30.4 3
1948-09-05 @ SC Tetange W 2-038.5 924 911 41.03% 19.28% 39.69%+0.04 +30.4 2
1948-09-05 US Dudelange W 6-035.4 992 1009 39.15% 19.28% 41.57%-0.07 +87.7 6
1948-09-05 @ Spora Luxembourg L 0-635.4 1009 992 41.57% 19.28% 39.15%+0.07 -87.7 4
1948-09-05 Progres Niedercorn D 1-152.7 1051 1003 48.13% 19.26% 32.62%+0.33 -1.4 3
1948-09-05 @ Stade Dudelange D 1-152.7 1003 1051 32.62% 19.26% 48.13%-0.33 +1.4 4
1948-09-05 Racing FC Union Luxembourg D 1-152.7 859 905 34.95% 19.27% 45.79%-0.25 +0.9 1
1948-09-05 @ CS Petange D 1-152.7 905 859 45.79% 19.27% 34.95%+0.25 -0.9 1
1948-09-12 Spora Luxembourg D 1-152.7 961 1080 25.86% 19.16% 54.97%-0.70 +2.6 3
1948-09-12 @ Differdange 03 D 1-152.7 1080 961 54.97% 19.16% 25.86%+0.70 -2.6 7
1948-09-12 Progres Niedercorn D 0-049.7 965 1004 35.88% 19.27% 44.85%-0.21 +0.9 5
1948-09-12 @ FC Schifflange 95 D 0-049.7 1004 965 44.85% 19.27% 35.88%+0.21 -0.9 5
1948-09-12 Stade Dudelange L 0-331.4 904 1050 22.95% 19.10% 57.95%-0.86 -27.9 1
1948-09-12 @ Racing FC Union Luxembourg W 3-031.4 1050 904 57.95% 19.10% 22.95%+0.86 +27.9 5
1948-09-12 CS Petange W 1-037.0 954 859 53.99% 19.19% 26.82%+0.61 +11.6 4
1948-09-12 @ Racing Rodange L 0-137.0 859 954 26.82% 19.19% 53.99%-0.61 -11.7 1
1948-09-12 Oberkorn W 4-031.5 881 794 53.04% 19.20% 27.76%+0.57 +42.9 5
1948-09-12 @ SC Tetange L 0-431.5 794 881 27.76% 19.20% 53.04%-0.57 -42.9 0
1948-09-12 Fola Esch L 0-138.5 921 993 31.56% 19.24% 49.20%-0.41 -13.4 4
1948-09-12 @ US Dudelange W 1-038.5 993 921 49.20% 19.24% 31.56%+0.41 +13.4 8
1948-10-03 Differdange 03 W 3-034.5 1006 964 47.42% 19.26% 33.32%+0.29 +38.3 10
1948-10-03 @ Fola Esch L 0-334.5 964 1006 33.32% 19.26% 47.42%-0.29 -38.3 3
1948-10-03 CS Petange W 2-148.3 751 848 28.49% 19.20% 52.31%-0.56 +19.3 2
1948-10-03 @ Oberkorn L 1-248.3 848 751 52.31% 19.20% 28.49%+0.56 -19.3 1
1948-10-03 Racing FC Union Luxembourg W 2-139.5 1004 876 57.66% 19.12% 23.22%+0.81 +9.7 7
1948-10-03 @ Progres Niedercorn L 1-239.5 876 1004 23.22% 19.12% 57.66%-0.81 -9.7 1
1948-10-03 US Dudelange W 2-037.7 924 908 43.79% 19.28% 36.93%+0.13 +28.7 7
1948-10-03 @ SC Tetange L 0-237.7 908 924 36.93% 19.28% 43.79%-0.13 -28.7 4
1948-10-03 FC Schifflange 95 W 1-036.4 1077 966 55.95% 19.16% 24.90%+0.72 +10.9 9
1948-10-03 @ Spora Luxembourg L 0-136.4 966 1077 24.90% 19.16% 55.95%-0.72 -10.9 5
1948-10-03 Racing Rodange W 3-138.1 1078 966 55.94% 19.16% 24.91%+0.72 +17.9 7
1948-10-03 @ Stade Dudelange L 1-338.1 966 1078 24.91% 19.16% 55.94%-0.72 -17.9 4
1948-10-10 SC Tetange W 3-143.6 925 953 37.61% 19.28% 43.12%-0.13 +28.2 5
1948-10-10 @ Differdange 03 L 1-343.6 953 925 43.12% 19.28% 37.61%+0.13 -28.2 7
1948-10-10 Racing FC Union Luxembourg L 0-242.5 955 867 53.18% 19.20% 27.62%+0.57 -39.1 5
1948-10-10 @ FC Schifflange 95 W 2-042.5 867 955 27.62% 19.20% 53.18%-0.57 +39.1 3
1948-10-10 Stade Dudelange L 1-235.2 770 1096 9.48% 18.36% 72.16%-1.96 -4.3 2
1948-10-10 @ Oberkorn W 2-135.2 1096 770 72.16% 18.36% 9.48%+1.96 +4.3 9
1948-10-10 Progres Niedercorn L 0-138.7 948 1013 32.47% 19.25% 48.28%-0.37 -13.7 4
1948-10-10 @ Racing Rodange W 1-038.7 1013 948 48.28% 19.25% 32.47%+0.37 +13.7 9
1948-10-10 Fola Esch L 1-344.9 1088 1045 47.52% 19.26% 33.22%+0.30 -30.6 9
1948-10-10 @ Spora Luxembourg W 3-144.9 1045 1088 33.22% 19.26% 47.52%-0.30 +30.6 12
1948-10-10 CS Petange D 1-152.7 879 829 48.41% 19.25% 32.34%+0.34 -1.4 5
1948-10-10 @ US Dudelange D 1-152.7 829 879 32.34% 19.25% 48.41%-0.34 +1.4 2
1948-10-31 FC Schifflange 95 L 1-250.9 1075 915 60.99% 19.03% 19.97%+1.01 -22.3 12
1948-10-31 @ Fola Esch W 2-150.9 915 1075 19.97% 19.03% 60.99%-1.01 +22.3 7
1948-10-31 Oberkorn L 2-357.4 1027 766 69.20% 18.64% 12.16%+1.63 -24.1 9
1948-10-31 @ Progres Niedercorn W 3-257.4 766 1027 12.16% 18.64% 69.20%-1.63 +24.1 4
1948-10-31 Racing Rodange L 0-140.2 906 934 37.39% 19.28% 43.33%-0.14 -15.4 3
1948-10-31 @ Racing FC Union Luxembourg W 1-040.2 934 906 43.33% 19.28% 37.39%+0.14 +15.4 6
1948-10-31 Spora Luxembourg L 0-630.1 924 1058 24.27% 19.13% 56.60%-0.78 -56.0 7
1948-10-31 @ SC Tetange W 6-030.1 1058 924 56.60% 19.13% 24.27%+0.78 +56.0 11
1948-10-31 US Dudelange D 1-152.8 1100 877 66.44% 18.81% 14.75%+1.40 -4.9 10
1948-10-31 @ Stade Dudelange D 1-152.8 877 1100 14.75% 18.81% 66.44%-1.40 +4.9 6
1948-10-31 Differdange 03 L 1-436.3 830 953 25.36% 19.15% 55.49%-0.72 -25.6 2
1948-10-31 @ CS Petange W 4-136.3 953 830 55.49% 19.15% 25.36%+0.72 +25.6 7
1948-11-14 Stade Dudelange L 2-344.7 979 1095 26.23% 19.17% 54.60%-0.68 -10.2 7
1948-11-14 @ Differdange 03 W 3-244.7 1095 979 54.60% 19.17% 26.23%+0.68 +10.2 12
1948-11-14 Racing Rodange W 5-139.5 938 950 39.77% 19.28% 40.95%-0.04 +49.3 9
1948-11-14 @ FC Schifflange 95 L 1-539.5 950 938 40.95% 19.28% 39.77%+0.04 -49.3 6
1948-11-14 SC Tetange W 6-131.4 1053 868 63.30% 18.95% 17.75%+1.16 +29.6 14
1948-11-14 @ Fola Esch L 1-631.4 868 1053 17.75% 18.95% 63.30%-1.16 -29.6 7
1948-11-14 Oberkorn L 0-145.3 890 790 54.60% 19.18% 26.22%+0.65 -21.3 3
1948-11-14 @ Racing FC Union Luxembourg W 1-045.3 790 890 26.22% 19.18% 54.60%-0.65 +21.3 6
1948-11-14 Spora Luxembourg L 1-431.6 804 1114 10.29% 18.45% 71.26%-1.86 -11.3 2
1948-11-14 @ CS Petange W 4-131.6 1114 804 71.26% 18.45% 10.29%+1.86 +11.3 13
1948-11-14 Progres Niedercorn W 2-043.1 882 1003 25.71% 19.16% 55.13%-0.71 +40.5 8
1948-11-14 @ US Dudelange L 0-243.1 1003 882 55.13% 19.16% 25.71%+0.71 -40.5 9
1948-11-28 Racing Rodange D 1-152.7 811 900 29.43% 19.22% 51.36%-0.51 +1.9 7
1948-11-28 @ Oberkorn D 1-152.7 900 811 51.36% 19.22% 29.43%+0.51 -1.9 7
1948-11-28 Differdange 03 W 2-144.7 962 969 40.55% 19.28% 40.17%-0.01 +15.4 11
1948-11-28 @ Progres Niedercorn L 1-244.7 969 962 40.17% 19.28% 40.55%+0.01 -15.4 7
1948-11-28 FC Schifflange 95 L 2-343.6 839 987 22.67% 19.09% 58.24%-0.88 -9.0 7
1948-11-28 @ SC Tetange W 3-243.6 987 839 58.24% 19.09% 22.67%+0.88 +9.0 11
1948-11-28 Spora Luxembourg W 2-145.3 1105 1125 38.66% 19.28% 42.06%-0.09 +15.9 14
1948-11-28 @ Stade Dudelange L 1-245.3 1125 1105 42.06% 19.28% 38.66%+0.09 -16.0 13
1948-12-05 Racing FC Union Luxembourg D 3-360.7 954 869 52.74% 19.21% 28.05%+0.55 -1.4 8
1948-12-05 @ Differdange 03 D 3-360.7 869 954 28.05% 19.21% 52.74%-0.55 +1.4 4
1948-12-05 Oberkorn W 10-130.7 996 813 63.13% 18.96% 17.91%+1.15 +51.8 13
1948-12-05 @ FC Schifflange 95 L 1-1030.7 813 996 17.91% 18.96% 63.13%-1.15 -51.8 7
1948-12-05 Stade Dudelange D 2-256.8 1083 1121 36.04% 19.27% 44.68%-0.20 +0.6 15
1948-12-05 @ Fola Esch D 2-256.8 1121 1083 44.68% 19.27% 36.04%+0.20 -0.6 15
1948-12-05 CS Petange W 2-142.9 830 793 46.60% 19.27% 34.14%+0.26 +13.4 9
1948-12-05 @ SC Tetange L 1-242.9 793 830 34.14% 19.27% 46.60%-0.26 -13.4 2
1948-12-05 Racing Rodange W 7-446.1 923 899 44.90% 19.27% 35.83%+0.18 +26.2 10
1948-12-05 @ US Dudelange L 4-746.1 899 923 35.83% 19.27% 44.90%-0.18 -26.2 7
1948-12-12 US Dudelange L 0-232.2 762 949 18.90% 18.98% 62.12%-1.12 -16.2 7
1948-12-12 @ Oberkorn W 2-032.2 949 762 62.12% 18.98% 18.90%+1.12 +16.2 12
1948-12-12 Fola Esch D 0-049.7 978 1083 27.43% 19.19% 53.38%-0.61 +2.6 12
1948-12-12 @ Progres Niedercorn D 0-049.7 1083 978 53.38% 19.19% 27.43%+0.61 -2.6 16
1948-12-12 Spora Luxembourg L 2-341.1 870 1109 14.72% 18.79% 66.49%-1.43 -6.1 4
1948-12-12 @ Racing FC Union Luxembourg W 3-241.1 1109 870 66.49% 18.79% 14.72%+1.43 +6.1 15
1948-12-12 Differdange 03 L 3-449.4 872 952 30.58% 19.23% 50.18%-0.46 -11.4 7
1948-12-12 @ Racing Rodange W 4-349.4 952 872 50.18% 19.23% 30.58%+0.46 +11.4 10
1948-12-12 SC Tetange W 3-133.8 1121 843 70.27% 18.56% 11.17%+1.73 +8.7 17
1948-12-12 @ Stade Dudelange L 1-333.8 843 1121 11.17% 18.56% 70.27%-1.73 -8.7 9
1948-12-12 FC Schifflange 95 L 1-236.2 780 1048 12.68% 18.65% 68.66%-1.61 -5.6 2
1948-12-12 @ CS Petange W 2-136.2 1048 780 68.66% 18.65% 12.68%+1.61 +5.6 15
1948-12-19 Oberkorn W 2-137.0 964 745 66.10% 18.83% 15.07%+1.37 +6.6 12
1948-12-19 @ Differdange 03 L 1-237.0 745 964 15.07% 18.83% 66.10%-1.37 -6.6 7
1948-12-19 US Dudelange W 4-242.9 1054 965 53.20% 19.20% 27.60%+0.57 +17.4 17
1948-12-19 @ FC Schifflange 95 L 2-442.9 965 1054 27.60% 19.20% 53.20%-0.57 -17.4 12
1948-12-19 SC Tetange W 3-030.9 980 834 59.59% 19.07% 21.34%+0.93 +26.2 14
1948-12-19 @ Progres Niedercorn L 0-330.9 834 980 21.34% 19.07% 59.59%-0.93 -26.2 9
1948-12-19 Fola Esch W 3-149.9 864 1081 16.43% 18.88% 64.69%-1.29 +41.0 6
1948-12-19 @ Racing FC Union Luxembourg L 1-349.9 1081 864 64.69% 18.88% 16.43%+1.29 -41.0 16
1948-12-19 Spora Luxembourg L 2-340.7 861 1115 13.63% 18.72% 67.65%-1.53 -5.7 7
1948-12-19 @ Racing Rodange W 3-240.7 1115 861 67.65% 18.72% 13.63%+1.53 +5.7 17
1948-12-19 Stade Dudelange L 2-534.3 774 1129 8.10% 18.19% 73.71%-2.15 -7.8 2
1948-12-19 @ CS Petange W 5-234.3 1129 774 73.71% 18.19% 8.10%+2.15 +7.8 19
1949-01-02 Spora Luxembourg L 1-535.1 1006 1121 26.39% 19.17% 54.44%-0.67 -34.2 14
1949-01-02 @ Progres Niedercorn W 5-135.1 1121 1006 54.44% 19.17% 26.39%+0.67 +34.2 19
1949-01-09 US Dudelange D 1-152.7 970 948 44.63% 19.27% 36.09%+0.17 -0.7 13
1949-01-09 @ Differdange 03 D 1-152.7 948 970 36.09% 19.27% 44.63%-0.17 +0.7 13
1949-01-09 Racing Rodange W 4-134.0 1040 855 63.27% 18.95% 17.78%+1.16 +18.8 18
1949-01-09 @ Fola Esch L 1-434.0 855 1040 17.78% 18.95% 63.27%-1.16 -18.8 7
1949-01-09 Racing FC Union Luxembourg D 3-360.7 808 905 28.46% 19.20% 52.34%-0.56 +1.3 10
1949-01-09 @ SC Tetange D 3-360.7 905 808 52.34% 19.20% 28.46%+0.56 -1.3 7
1949-01-09 Oberkorn W 4-235.8 1155 739 76.88% 17.73% 5.39%+2.58 +3.8 21
1949-01-09 @ Spora Luxembourg L 2-435.8 739 1155 5.39% 17.73% 76.88%-2.58 -3.8 7
1949-01-09 FC Schifflange 95 W 2-035.7 1137 1071 50.45% 19.23% 30.32%+0.44 +24.4 21
1949-01-09 @ Stade Dudelange L 0-235.7 1071 1137 30.32% 19.23% 50.45%-0.44 -24.4 17
1949-01-09 Progres Niedercorn L 2-635.1 766 972 17.27% 18.91% 63.81%-1.23 -20.0 2
1949-01-09 @ CS Petange W 6-235.1 972 766 63.81% 18.91% 17.27%+1.23 +20.0 16
1949-01-16 Fola Esch L 3-442.9 735 1058 9.57% 18.38% 72.05%-1.95 -4.0 7
1949-01-16 @ Oberkorn W 4-342.9 1058 735 72.05% 18.38% 9.57%+1.95 +4.0 20
1949-01-16 Stade Dudelange D 0-049.8 992 1161 20.59% 19.04% 60.37%-1.00 +4.1 17
1949-01-16 @ Progres Niedercorn D 0-049.8 1161 992 60.37% 19.04% 20.59%+1.00 -4.1 22
1949-01-16 CS Petange W 10-232.1 904 746 60.80% 19.04% 20.16%+1.00 +42.0 9
1949-01-16 @ Racing FC Union Luxembourg L 2-1032.1 746 904 20.16% 19.04% 60.80%-1.00 -42.0 2
1949-01-16 SC Tetange W 2-037.2 837 810 45.26% 19.27% 35.47%+0.20 +27.8 9
1949-01-16 @ Racing Rodange L 0-237.2 810 837 35.47% 19.27% 45.26%-0.20 -27.8 10
1949-01-16 Spora Luxembourg L 1-237.6 948 1159 16.91% 18.90% 64.19%-1.26 -7.3 13
1949-01-16 @ US Dudelange W 2-137.6 1159 948 64.19% 18.90% 16.91%+1.26 +7.3 23
1949-01-23 US Dudelange D 3-360.7 946 941 42.17% 19.28% 38.55%+0.06 -0.2 10
1949-01-23 @ Racing FC Union Luxembourg D 3-360.7 941 946 38.55% 19.28% 42.17%-0.06 +0.2 14
1949-01-23 Fola Esch L 0-131.1 704 1062 7.98% 18.17% 73.85%-2.16 -3.8 2
1949-01-23 @ CS Petange W 1-031.1 1062 704 73.85% 18.17% 7.98%+2.16 +3.8 22
1949-01-23 Differdange 03 L 1-444.3 1047 969 51.84% 19.22% 28.94%+0.51 -46.8 17
1949-01-23 @ FC Schifflange 95 W 4-144.3 969 1047 28.94% 19.22% 51.84%-0.51 +46.8 15
1949-01-30 US Dudelange W 5-029.8 1066 941 57.39% 19.13% 23.49%+0.80 +45.8 24
1949-01-30 @ Fola Esch L 0-529.8 941 1066 23.49% 19.13% 57.39%-0.80 -45.8 14
1949-01-30 SC Tetange W 4-142.6 731 782 34.36% 19.26% 46.37%-0.28 +42.4 9
1949-01-30 @ Oberkorn L 1-442.6 782 731 46.37% 19.26% 34.36%+0.28 -42.4 10
1949-01-30 FC Schifflange 95 L 0-535.1 996 1000 40.99% 19.28% 39.72%+0.01 -73.0 17
1949-01-30 @ Progres Niedercorn W 5-035.1 1000 996 39.72% 19.28% 40.99%-0.01 +73.0 19
1949-01-30 Differdange 03 W 5-343.6 1166 1016 60.03% 19.06% 20.91%+0.95 +13.0 25
1949-01-30 @ Spora Luxembourg L 3-543.6 1016 1166 20.91% 19.06% 60.03%-0.95 -13.0 15
1949-01-30 Racing FC Union Luxembourg D 2-256.9 1157 946 65.58% 18.85% 15.56%+1.33 -3.5 23
1949-01-30 @ Stade Dudelange D 2-256.9 946 1157 15.56% 18.85% 65.58%-1.33 +3.5 11
1949-01-30 Racing Rodange L 1-238.9 700 864 21.09% 19.05% 59.86%-0.97 -8.9 2
1949-01-30 @ CS Petange W 2-138.9 864 700 59.86% 19.05% 21.09%+0.97 +8.9 11
1949-02-06 Fola Esch L 0-137.1 1003 1112 27.05% 19.18% 53.76%-0.63 -11.7 15
1949-02-06 @ Differdange 03 W 1-037.1 1112 1003 53.76% 19.18% 27.05%+0.63 +11.7 26
1949-02-06 Spora Luxembourg L 0-234.8 1073 1179 27.32% 19.19% 53.49%-0.62 -22.3 19
1949-02-06 @ FC Schifflange 95 W 2-034.8 1179 1073 53.49% 19.19% 27.32%+0.62 +22.3 27
1949-02-06 Progres Niedercorn D 1-152.7 949 923 45.14% 19.27% 35.59%+0.19 -0.8 12
1949-02-06 @ Racing FC Union Luxembourg D 1-152.7 923 949 35.59% 19.27% 45.14%-0.19 +0.8 18
1949-02-06 Stade Dudelange L 0-132.4 873 1154 11.92% 18.60% 69.48%-1.69 -5.6 11
1949-02-06 @ Racing Rodange W 1-032.4 1154 873 69.48% 18.60% 11.92%+1.69 +5.6 25
1949-02-06 Oberkorn L 1-339.7 691 773 30.29% 19.23% 50.48%-0.47 -21.1 2
1949-02-06 @ CS Petange W 3-139.7 773 691 50.48% 19.23% 30.29%+0.47 +21.1 11
1949-02-06 SC Tetange W 1-035.0 896 739 60.62% 19.04% 20.33%+0.99 +9.2 16
1949-02-06 @ US Dudelange L 0-135.0 739 896 20.33% 19.04% 60.62%-0.99 -9.2 10
1949-02-13 Spora Luxembourg L 2-346.2 1124 1202 30.83% 19.23% 49.93%-0.44 -11.7 26
1949-02-13 @ Fola Esch W 3-246.2 1202 1124 49.93% 19.23% 30.83%+0.44 +11.7 29
1949-02-13 Racing Rodange D 2-256.8 924 868 49.22% 19.25% 31.53%+0.38 -1.2 19
1949-02-13 @ Progres Niedercorn D 2-256.8 868 924 31.53% 19.25% 49.22%-0.38 +1.1 12
1949-02-13 FC Schifflange 95 W 3-252.7 948 1050 27.85% 19.20% 52.95%-0.59 +18.5 14
1949-02-13 @ Racing FC Union Luxembourg L 2-352.7 1050 948 52.95% 19.20% 27.85%+0.59 -18.5 19
1949-02-13 Differdange 03 D 1-152.9 730 992 13.15% 18.69% 68.16%-1.57 +5.3 11
1949-02-13 @ SC Tetange D 1-152.9 992 730 68.16% 18.69% 13.15%+1.57 -5.3 16
1949-02-13 Oberkorn W 7-127.4 1159 795 74.85% 18.07% 7.08%+2.27 +14.8 27
1949-02-13 @ Stade Dudelange L 1-727.4 795 1159 7.08% 18.07% 74.85%-2.27 -14.8 11
1949-02-13 US Dudelange L 2-634.3 670 905 15.03% 18.80% 66.17%-1.40 -17.7 2
1949-02-13 @ CS Petange W 6-234.3 905 670 66.17% 18.80% 15.03%+1.40 +17.7 18
1949-02-20 CS Petange W 10-027.0 986 653 73.40% 18.26% 8.35%+2.08 +34.2 18
1949-02-20 @ Differdange 03 L 0-1027.0 653 986 8.35% 18.26% 73.40%-2.08 -34.2 2
1949-02-20 Fola Esch L 1-536.4 1032 1112 30.55% 19.23% 50.22%-0.46 -38.8 19
1949-02-20 @ FC Schifflange 95 W 5-136.4 1112 1032 50.22% 19.23% 30.55%+0.46 +38.8 28
1949-02-20 Progres Niedercorn L 1-337.6 780 923 23.21% 19.11% 57.68%-0.85 -16.8 11
1949-02-20 @ Oberkorn W 3-137.6 923 780 57.68% 19.11% 23.21%+0.85 +16.8 21
1949-02-20 Racing FC Union Luxembourg L 3-448.7 869 967 28.30% 19.20% 52.49%-0.57 -10.6 12
1949-02-20 @ Racing Rodange W 4-348.7 967 869 52.49% 19.20% 28.30%+0.57 +10.6 16
1949-02-20 SC Tetange W 3-131.2 1213 736 78.84% 17.27% 3.88%+2.96 +3.1 31
1949-02-20 @ Spora Luxembourg L 1-331.2 736 1213 3.88% 17.27% 78.84%-2.96 -3.1 11
1949-02-20 Stade Dudelange L 1-334.6 922 1174 13.78% 18.73% 67.49%-1.51 -10.5 18
1949-02-20 @ US Dudelange W 3-134.6 1174 922 67.49% 18.73% 13.78%+1.51 +10.5 29
1949-03-06 Racing FC Union Luxembourg D 1-152.8 763 978 16.57% 18.88% 64.55%-1.28 +4.5 12
1949-03-06 @ Oberkorn D 1-152.8 978 763 64.55% 18.88% 16.57%+1.28 -4.5 17
1949-03-06 US Dudelange L 1-246.2 940 912 45.40% 19.27% 35.33%+0.20 -17.0 21
1949-03-06 @ Progres Niedercorn W 2-146.2 912 940 35.33% 19.27% 45.40%-0.20 +17.0 20
1949-03-06 FC Schifflange 95 L 1-239.8 858 993 24.08% 19.13% 56.79%-0.80 -10.0 12
1949-03-06 @ Racing Rodange W 2-139.8 993 858 56.79% 19.13% 24.08%+0.80 +10.0 21
1949-03-06 CS Petange W 3-130.4 1216 618 81.70% 16.27% 2.03%+3.70 +1.6 33
1949-03-06 @ Spora Luxembourg L 1-330.4 618 1216 2.03% 16.27% 81.70%-3.70 -1.6 2
1949-03-06 Differdange 03 L 0-342.9 1185 1021 61.42% 19.02% 19.56%+1.04 -65.3 29
1949-03-06 @ Stade Dudelange W 3-042.9 1021 1185 19.56% 19.02% 61.42%-1.04 +65.3 20
1949-04-03 Progres Niedercorn D 1-152.8 1086 923 61.30% 19.02% 19.67%+1.03 -3.8 21
1949-04-03 @ Differdange 03 D 1-152.8 923 1086 19.67% 19.02% 61.30%-1.03 +3.9 22
1949-04-03 SC Tetange L 0-149.7 1003 732 69.85% 18.59% 11.56%+1.69 -27.2 21
1949-04-03 @ FC Schifflange 95 W 1-049.7 732 1003 11.56% 18.59% 69.85%-1.69 +27.2 13
1949-04-03 CS Petange W 6-126.3 1151 617 80.31% 16.82% 2.87%+3.30 +5.0 30
1949-04-03 @ Fola Esch L 1-626.3 617 1151 2.87% 16.82% 80.31%-3.30 -5.1 2
1949-04-03 Oberkorn L 0-144.7 848 767 52.27% 19.21% 28.52%+0.53 -20.4 12
1949-04-03 @ Racing Rodange W 1-044.7 767 848 28.52% 19.21% 52.27%-0.53 +20.4 14
1949-04-03 Stade Dudelange W 1-037.0 1218 1119 54.41% 19.18% 26.41%+0.64 +11.5 35
1949-04-03 @ Spora Luxembourg L 0-137.0 1119 1218 26.41% 19.18% 54.41%-0.64 -11.5 29
1949-04-03 Racing FC Union Luxembourg D 0-049.7 929 973 35.25% 19.27% 45.48%-0.24 +1.0 21
1949-04-03 @ US Dudelange D 0-049.7 973 929 45.48% 19.27% 35.25%+0.24 -1.0 18
1949-04-24 FC Schifflange 95 D 1-152.8 788 976 18.83% 18.98% 62.19%-1.12 +4.0 15
1949-04-24 @ Oberkorn D 1-152.8 976 788 62.19% 18.98% 18.83%+1.12 -4.0 22
1949-04-24 US Dudelange W 3-146.5 828 930 27.83% 19.20% 52.97%-0.59 +33.8 14
1949-04-24 @ Racing Rodange L 1-346.5 930 828 52.97% 19.20% 27.83%+0.59 -33.8 21
1949-04-24 Fola Esch L 0-139.5 1108 1156 34.76% 19.27% 45.97%-0.26 -14.5 29
1949-04-24 @ Stade Dudelange W 1-039.5 1156 1108 45.97% 19.27% 34.76%+0.26 +14.5 32
1949-04-24 SC Tetange W 2-150.0 612 760 22.71% 19.09% 58.19%-0.87 +21.3 4
1949-04-24 @ CS Petange L 1-250.0 760 612 58.19% 19.09% 22.71%+0.87 -21.3 13
1949-05-01 Fola Esch W 3-047.1 738 1170 5.40% 17.69% 76.91%-2.61 +82.4 15
1949-05-01 @ SC Tetange L 0-347.1 1170 738 76.91% 17.69% 5.40%+2.61 -82.4 32
1949-05-01 Differdange 03 W 3-146.8 972 1082 26.92% 19.18% 53.89%-0.64 +34.3 20
1949-05-01 @ Racing FC Union Luxembourg L 1-346.8 1082 972 53.89% 19.18% 26.92%+0.64 -34.3 21
1949-05-01 Progres Niedercorn W 2-135.3 1229 927 71.77% 18.43% 9.80%+1.89 +4.4 37
1949-05-01 @ Spora Luxembourg L 1-235.3 927 1229 9.80% 18.43% 71.77%-1.89 -4.4 22
1949-05-01 CS Petange W 4-236.7 972 633 73.66% 18.23% 8.12%+2.11 +5.7 24
1949-05-01 @ FC Schifflange 95 L 2-436.7 633 972 8.12% 18.23% 73.66%-2.11 -5.7 4
1949-05-08 Racing Rodange L 0-245.5 1048 861 63.44% 18.95% 17.61%+1.17 -46.5 21
1949-05-08 @ Differdange 03 W 2-045.5 861 1048 17.61% 18.95% 63.44%-1.17 +46.5 16
1949-05-08 Progres Niedercorn W 2-138.4 1088 922 61.56% 19.01% 19.42%+1.05 +8.3 34
1949-05-08 @ Fola Esch L 1-238.4 922 1088 19.42% 19.01% 61.56%-1.05 -8.3 22
1949-05-08 Stade Dudelange W 3-257.3 821 1093 12.41% 18.63% 68.95%-1.64 +24.0 17
1949-05-08 @ SC Tetange L 2-357.3 1093 821 68.95% 18.63% 12.41%+1.64 -24.0 29
1949-05-08 Racing FC Union Luxembourg D 0-049.9 1234 1006 66.82% 18.79% 14.39%+1.43 -5.6 38
1949-05-08 @ Spora Luxembourg D 0-049.9 1006 1234 14.39% 18.79% 66.82%-1.43 +5.6 21
1949-05-08 Oberkorn L 3-456.7 896 792 55.07% 19.17% 25.76%+0.67 -18.7 21
1949-05-08 @ US Dudelange W 4-356.7 792 896 25.76% 19.17% 55.07%-0.67 +18.7 17

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 1949-05-01 5.40% @ SC Tetange 738 3 Fola Esch 1170 0
2 1949-04-03 11.56% SC Tetange 732 1 @ FC Schifflange 95 1003 0
3 1948-10-31 12.16% Oberkorn 766 3 @ Progres Niedercorn 1027 2
4 1949-05-08 12.41% @ SC Tetange 821 3 Stade Dudelange 1093 2
5 1948-12-19 16.43% @ Racing FC Union Luxembourg 864 3 Fola Esch 1081 1
6 1949-05-08 17.61% Racing Rodange 861 2 @ Differdange 03 1048 0
7 1949-03-06 19.56% Differdange 03 1021 3 @ Stade Dudelange 1185 0
8 1948-10-31 19.97% FC Schifflange 95 915 2 @ Fola Esch 1075 1
9 1949-04-24 22.71% @ CS Petange 612 2 SC Tetange 760 1
10 1948-08-30 23.33% @ FC Schifflange 95 905 1 Stade Dudelange 1047 0
11 1948-11-14 25.71% @ US Dudelange 882 2 Progres Niedercorn 1003 0
12 1949-05-08 25.76% Oberkorn 792 4 @ US Dudelange 896 3
13 1948-11-14 26.22% Oberkorn 790 1 @ Racing FC Union Luxembourg 890 0
14 1949-05-01 26.92% @ Racing FC Union Luxembourg 972 3 Differdange 03 1082 1
15 1948-10-10 27.62% Racing FC Union Luxembourg 867 2 @ FC Schifflange 95 955 0
16 1949-04-24 27.83% @ Racing Rodange 828 3 US Dudelange 930 1
17 1949-02-13 27.85% @ Racing FC Union Luxembourg 948 3 FC Schifflange 95 1050 2
18 1948-10-03 28.49% @ Oberkorn 751 2 CS Petange 848 1
19 1949-04-03 28.52% Oberkorn 767 1 @ Racing Rodange 848 0
20 1949-01-23 28.94% Differdange 03 969 4 @ FC Schifflange 95 1047 1
21 1948-09-05 29.60% FC Schifflange 95 927 2 @ Differdange 03 999 0
22 1948-08-30 32.48% SC Tetange 884 4 @ Racing FC Union Luxembourg 933 2
23 1948-08-22 32.72% @ Fola Esch 905 2 Racing FC Union Luxembourg 969 0
24 1948-10-10 33.22% Fola Esch 1045 3 @ Spora Luxembourg 1088 1
25 1949-01-30 34.36% @ Oberkorn 731 4 SC Tetange 782 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 1948-09-05 87.72 @ Spora Luxembourg 6 992 39.15% US Dudelange 0 1009 41.57% 19.28%
2 1949-05-01 82.38 @ SC Tetange 3 738 5.40% Fola Esch 0 1170 76.91% 17.69%
3 1949-01-30 73.02 FC Schifflange 95 5 1000 39.72% @ Progres Niedercorn 0 996 40.99% 19.28%
4 1949-03-06 65.31 Differdange 03 3 1021 19.56% @ Stade Dudelange 0 1185 61.42% 19.02%
5 1948-08-15 56.76 Differdange 03 4 957 41.84% @ Oberkorn 0 939 38.88% 19.28%
6 1948-08-30 56.35 @ Progres Niedercorn 4 947 42.19% CS Petange 0 942 38.53% 19.28%
7 1948-10-31 55.99 Spora Luxembourg 6 1058 56.60% @ SC Tetange 0 924 24.27% 19.13%
8 1948-12-05 51.75 @ FC Schifflange 95 10 996 63.13% Oberkorn 1 813 17.91% 18.96%
9 1948-08-30 50.95 Spora Luxembourg 6 941 47.49% @ Oberkorn 1 882 33.25% 19.26%
10 1948-11-14 49.33 @ FC Schifflange 95 5 938 39.77% Racing Rodange 1 950 40.95% 19.28%
11 1949-01-23 46.83 Differdange 03 4 969 28.94% @ FC Schifflange 95 1 1047 51.84% 19.22%
12 1949-05-08 46.46 Racing Rodange 2 861 17.61% @ Differdange 03 0 1048 63.44% 18.95%
13 1949-01-30 45.83 @ Fola Esch 5 1066 57.39% US Dudelange 0 941 23.49% 19.13%
14 1948-09-12 42.92 @ SC Tetange 4 881 53.04% Oberkorn 0 794 27.76% 19.20%
15 1949-01-30 42.41 @ Oberkorn 4 731 34.36% SC Tetange 1 782 46.37% 19.26%
16 1949-01-16 41.99 @ Racing FC Union Luxembourg 10 904 60.80% CS Petange 2 746 20.16% 19.04%
17 1948-12-19 41.04 @ Racing FC Union Luxembourg 3 864 16.43% Fola Esch 1 1081 64.69% 18.88%
18 1948-11-14 40.48 @ US Dudelange 2 882 25.71% Progres Niedercorn 0 1003 55.13% 19.16%
19 1948-10-10 39.14 Racing FC Union Luxembourg 2 867 27.62% @ FC Schifflange 95 0 955 53.18% 19.20%
20 1949-02-20 38.77 Fola Esch 5 1112 50.22% @ FC Schifflange 95 1 1032 30.55% 19.23%
21 1948-10-03 38.28 @ Fola Esch 3 1006 47.42% Differdange 03 0 964 33.32% 19.26%
22 1948-09-05 37.78 FC Schifflange 95 2 927 29.60% @ Differdange 03 0 999 51.17% 19.23%
23 1948-09-05 37.21 @ Fola Esch 4 956 57.37% Oberkorn 0 831 23.50% 19.13%
24 1948-08-22 35.70 @ Fola Esch 2 905 32.72% Racing FC Union Luxembourg 0 969 48.03% 19.25%
25 1949-05-01 34.32 @ Racing FC Union Luxembourg 3 972 26.92% Differdange 03 1 1082 53.89% 19.18%

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 1948-08-22 60.7 @ SC Tetange 3 883 32.51% Progres Niedercorn 3 948 48.24% 19.25%
2 1948-12-05 60.7 @ Differdange 03 3 954 52.74% Racing FC Union Luxembourg 3 869 28.05% 19.21%
3 1949-01-09 60.7 @ SC Tetange 3 808 28.46% Racing FC Union Luxembourg 3 905 52.34% 19.20%
4 1949-01-23 60.7 @ Racing FC Union Luxembourg 3 946 42.17% US Dudelange 3 941 38.55% 19.28%
5 1948-10-31 57.4 Oberkorn 3 766 12.16% @ Progres Niedercorn 2 1027 69.20% 18.64%
6 1949-05-08 57.3 @ SC Tetange 3 821 12.41% Stade Dudelange 2 1093 68.95% 18.63%
7 1949-01-30 56.9 @ Stade Dudelange 2 1157 65.58% Racing FC Union Luxembourg 2 946 15.56% 18.85%
8 1948-12-05 56.8 @ Fola Esch 2 1083 36.04% Stade Dudelange 2 1121 44.68% 19.27%
9 1949-02-13 56.8 @ Progres Niedercorn 2 924 49.22% Racing Rodange 2 868 31.53% 19.25%
10 1949-05-08 56.7 Oberkorn 4 792 25.76% @ US Dudelange 3 896 55.07% 19.17%
11 1949-02-13 52.9 @ SC Tetange 1 730 13.15% Differdange 03 1 992 68.16% 18.69%
12 1948-10-31 52.8 @ Stade Dudelange 1 1100 66.44% US Dudelange 1 877 14.75% 18.81%
13 1949-03-06 52.8 @ Oberkorn 1 763 16.57% Racing FC Union Luxembourg 1 978 64.55% 18.88%
14 1949-04-03 52.8 @ Differdange 03 1 1086 61.30% Progres Niedercorn 1 923 19.67% 19.02%
15 1949-04-24 52.8 @ Oberkorn 1 788 18.83% FC Schifflange 95 1 976 62.19% 18.98%
16 1948-09-05 52.7 @ Stade Dudelange 1 1051 48.13% Progres Niedercorn 1 1003 32.62% 19.26%
17 1948-09-05 52.7 @ CS Petange 1 859 34.95% Racing FC Union Luxembourg 1 905 45.79% 19.27%
18 1948-09-12 52.7 @ Differdange 03 1 961 25.86% Spora Luxembourg 1 1080 54.97% 19.16%
19 1948-10-10 52.7 @ US Dudelange 1 879 48.41% CS Petange 1 829 32.34% 19.25%
20 1948-11-28 52.7 @ Oberkorn 1 811 29.43% Racing Rodange 1 900 51.36% 19.22%
21 1949-01-09 52.7 @ Differdange 03 1 970 44.63% US Dudelange 1 948 36.09% 19.27%
22 1949-02-06 52.7 @ Racing FC Union Luxembourg 1 949 45.14% Progres Niedercorn 1 923 35.59% 19.27%
23 1949-02-13 52.7 @ Racing FC Union Luxembourg 3 948 27.85% FC Schifflange 95 2 1050 52.95% 19.20%
24 1948-10-31 50.9 FC Schifflange 95 2 915 19.97% @ Fola Esch 1 1075 60.99% 19.03%
25 1949-04-24 50.0 @ CS Petange 2 612 22.71% SC Tetange 1 760 58.19% 19.09%
# Date Excitement Winning Team Losing Team Tie %
Team Score Elo Win % Team Score Elo Win %
1 1949-04-03 26.3 @ Fola Esch 6 1151 80.31% CS Petange 1 617 2.87% 16.82%
2 1949-02-20 27.0 @ Differdange 03 10 986 73.40% CS Petange 0 653 8.35% 18.26%
3 1949-02-13 27.4 @ Stade Dudelange 7 1159 74.85% Oberkorn 1 795 7.08% 18.07%
4 1949-01-30 29.8 @ Fola Esch 5 1066 57.39% US Dudelange 0 941 23.49% 19.13%
5 1948-10-31 30.1 Spora Luxembourg 6 1058 56.60% @ SC Tetange 0 924 24.27% 19.13%
6 1948-09-05 30.2 @ Fola Esch 4 956 57.37% Oberkorn 0 831 23.50% 19.13%
7 1949-03-06 30.4 @ Spora Luxembourg 3 1216 81.70% CS Petange 1 618 2.03% 16.27%
8 1948-12-05 30.7 @ FC Schifflange 95 10 996 63.13% Oberkorn 1 813 17.91% 18.96%
9 1948-12-19 30.9 @ Progres Niedercorn 3 980 59.59% SC Tetange 0 834 21.34% 19.07%
10 1948-09-01 31.1 @ Stade Dudelange 3 1024 58.88% CS Petange 0 885 22.03% 19.09%
11 1949-01-23 31.1 Fola Esch 1 1062 73.85% @ CS Petange 0 704 7.98% 18.17%
12 1949-02-20 31.2 @ Spora Luxembourg 3 1213 78.84% SC Tetange 1 736 3.88% 17.27%
13 1948-09-12 31.4 Stade Dudelange 3 1050 57.95% @ Racing FC Union Luxembourg 0 904 22.95% 19.10%
14 1948-11-14 31.4 @ Fola Esch 6 1053 63.30% SC Tetange 1 868 17.75% 18.95%
15 1948-09-12 31.5 @ SC Tetange 4 881 53.04% Oberkorn 0 794 27.76% 19.20%
16 1948-11-14 31.6 Spora Luxembourg 4 1114 71.26% @ CS Petange 1 804 10.29% 18.45%
17 1949-01-16 32.1 @ Racing FC Union Luxembourg 10 904 60.80% CS Petange 2 746 20.16% 19.04%
18 1948-12-12 32.2 US Dudelange 2 949 62.12% @ Oberkorn 0 762 18.90% 18.98%
19 1949-02-06 32.4 Stade Dudelange 1 1154 69.48% @ Racing Rodange 0 873 11.92% 18.60%
20 1948-12-12 33.8 @ Stade Dudelange 3 1121 70.27% SC Tetange 1 843 11.17% 18.56%
21 1949-01-09 34.0 @ Fola Esch 4 1040 63.27% Racing Rodange 1 855 17.78% 18.95%
22 1948-12-19 34.3 Stade Dudelange 5 1129 73.71% @ CS Petange 2 774 8.10% 18.19%
23 1949-02-13 34.3 US Dudelange 6 905 66.17% @ CS Petange 2 670 15.03% 18.80%
24 1948-10-03 34.5 @ Fola Esch 3 1006 47.42% Differdange 03 0 964 33.32% 19.26%
25 1949-02-20 34.6 Stade Dudelange 3 1174 67.49% @ US Dudelange 1 922 13.78% 18.73%