Back to Football

FC Lyon

Lyon, Lyon · France · Ligue 1

Against expectation

Every French top-flight match this club has played in the Ligue 1, scored against the odds an Elo rating gave it before kick-off. Over 67 seasons from 1945-46 to 2024-25 it has beaten them by +35.7 match points.

Olympique Lyon: surplus against expectation, 1945-46 to 2024-251945-46: −0.6 league points vs expected (31 on 31.6, 2 for a win) · bar height −0.3 match points1951-52: −10.9 league points vs expected (20 on 30.9, 2 for a win) · bar height −5.4 match points1954-55: +4.8 league points vs expected (33 on 28.2, 2 for a win) · bar height +2.4 match points1955-56: +4.7 league points vs expected (37 on 32.3, 2 for a win) · bar height +2.4 match points1956-57: −1.8 league points vs expected (30 on 31.8, 2 for a win) · bar height −0.9 match points1957-58: +2.9 league points vs expected (35 on 32.1, 2 for a win) · bar height +1.5 match points1958-59: +2.3 league points vs expected (39 on 36.7, 2 for a win) · bar height +1.1 match points1959-60: −3.8 league points vs expected (31 on 34.8, 2 for a win) · bar height −1.9 match points1960-61: −0.1 league points vs expected (34 on 34.1, 2 for a win) · bar height −0.1 match points1961-62: −0.8 league points vs expected (33 on 33.8, 2 for a win) · bar height −0.4 match points1962-63: +4.9 league points vs expected (43 on 38.1, 2 for a win) · bar height +2.4 match points1963-64: +3.5 league points vs expected (39 on 35.5, 2 for a win) · bar height +1.7 match points1964-65: −0.4 league points vs expected (36 on 36.4, 2 for a win) · bar height −0.2 match points1965-66: −4.8 league points vs expected (33 on 37.8, 2 for a win) · bar height −2.4 match points1966-67: −0.6 league points vs expected (34 on 34.5, 2 for a win) · bar height −0.3 match points1967-68: +1.2 league points vs expected (36 on 34.8, 2 for a win) · bar height +0.6 match points1968-69: −0.2 league points vs expected (32 on 32.2, 2 for a win) · bar height −0.1 match points1969-70: −3.4 league points vs expected (28 on 31.4, 2 for a win) · bar height −1.7 match points1970-71: +4.7 league points vs expected (40 on 35.3, 2 for a win) · bar height +2.4 match points1971-72: +6.8 league points vs expected (45 on 38.2, 2 for a win) · bar height +3.4 match points1972-73: −4.1 league points vs expected (35 on 39.1, 2 for a win) · bar height −2.1 match points1973-74: +7.4 league points vs expected (47 on 39.6, 2 for a win) · bar height +3.7 match points1974-75: +2.4 league points vs expected (43 on 40.6, 2 for a win) · bar height +1.2 match points1975-76: −7.6 league points vs expected (33 on 40.6, 2 for a win) · bar height −3.8 match points1976-77: +4.0 league points vs expected (44 on 40.0, 2 for a win) · bar height +2.0 match points1977-78: −6.7 league points vs expected (31 on 37.7, 2 for a win) · bar height −3.4 match points1978-79: +2.9 league points vs expected (40 on 37.1, 2 for a win) · bar height +1.5 match points1979-80: −4.8 league points vs expected (29 on 33.8, 2 for a win) · bar height −2.4 match points1980-81: +4.8 league points vs expected (41 on 36.2, 2 for a win) · bar height +2.4 match points1981-82: −4.2 league points vs expected (32 on 36.2, 2 for a win) · bar height −2.1 match points1982-83: −4.9 league points vs expected (28 on 32.9, 2 for a win) · bar height −2.4 match points1989-90: +3.9 league points vs expected (39 on 35.1, 2 for a win) · bar height +1.9 match points1990-91: +4.0 league points vs expected (41 on 37.0, 2 for a win) · bar height +2.0 match points1991-92: −6.5 league points vs expected (31 on 37.5, 2 for a win) · bar height −3.2 match points1992-93: −2.1 league points vs expected (33 on 35.1, 2 for a win) · bar height −1.0 match points1993-94: +7.7 league points vs expected (42 on 34.3, 2 for a win) · bar height +3.9 match points1994-95: +14.4 league points vs expected (69 on 54.6, 3 for a win) · bar height +4.7 match points1995-96: −6.0 league points vs expected (48 on 54.0, 3 for a win) · bar height −1.1 match points1996-97: +6.6 league points vs expected (60 on 53.4, 3 for a win) · bar height +2.2 match points1997-98: +5.1 league points vs expected (53 on 47.9, 3 for a win) · bar height +0.8 match points1998-99: +11.8 league points vs expected (63 on 51.2, 3 for a win) · bar height +3.8 match points1999-00: +2.3 league points vs expected (56 on 53.7, 3 for a win) · bar height +0.5 match points2000-01: +10.1 league points vs expected (64 on 53.9, 3 for a win) · bar height +3.9 match points2001-02: +6.3 league points vs expected (66 on 59.7, 3 for a win) · bar height +1.6 match points2002-03: +0.7 league points vs expected (68 on 67.3, 3 for a win) · bar height +0.4 match points2003-04: +11.2 league points vs expected (79 on 67.8, 3 for a win) · bar height +3.2 match points2004-05: +6.7 league points vs expected (79 on 72.3, 3 for a win) · bar height +2.8 match points2005-06: +9.1 league points vs expected (84 on 74.9, 3 for a win) · bar height +2.9 match points2006-07: +5.0 league points vs expected (81 on 76.0, 3 for a win) · bar height +1.5 match points2007-08: +4.1 league points vs expected (79 on 74.9, 3 for a win) · bar height +0.8 match points2008-09: −1.7 league points vs expected (71 on 72.7, 3 for a win) · bar height −0.5 match points2009-10: +2.9 league points vs expected (72 on 69.1, 3 for a win) · bar height +1.1 match points2010-11: −3.6 league points vs expected (64 on 67.6, 3 for a win) · bar height −0.8 match points2011-12: −1.7 league points vs expected (64 on 65.7, 3 for a win) · bar height −1.2 match points2012-13: +2.6 league points vs expected (67 on 64.4, 3 for a win) · bar height +0.7 match points2013-14: −0.5 league points vs expected (61 on 61.5, 3 for a win) · bar height −0.3 match points2014-15: +9.9 league points vs expected (75 on 65.1, 3 for a win) · bar height +3.0 match points2015-16: +0.2 league points vs expected (65 on 64.8, 3 for a win) · bar height −0.3 match points2016-17: +2.6 league points vs expected (67 on 64.4, 3 for a win) · bar height −0.2 match points2017-18: +9.1 league points vs expected (78 on 68.9, 3 for a win) · bar height +3.0 match points2018-19: +2.7 league points vs expected (72 on 69.3, 3 for a win) · bar height +0.9 match points2019-20: −8.9 league points vs expected (40 on 48.9, 3 for a win) · bar height −3.0 match points2020-21: +8.7 league points vs expected (76 on 67.3, 3 for a win) · bar height +3.0 match points2021-22: −3.9 league points vs expected (62 on 65.9, 3 for a win) · bar height −1.1 match points2022-23: −1.3 league points vs expected (62 on 63.3, 3 for a win) · bar height −0.7 match points2023-24: +4.2 league points vs expected (53 on 48.8, 3 for a win) · bar height +0.7 match points2024-25: +4.0 league points vs expected (57 on 53.0, 3 for a win) · bar height +0.9 match points
1945-46one bar per season · height in match points · hover for that season2024-25
Best season against expectation
1994-95 +14.4 league pts
69 points on 54.6 expected as Olympique Lyon
Worst season against expectation
1951-52 10.9 league pts
20 points on 30.9 expected as Olympique Lyon

Season points use that season’s own scoring, two for a win before 1994-95 and three from it; the bars use match points so the whole series is comparable.The rating only starts telling you much after about 1960. Before that, knowing the era’s home-and-away split is almost as good as knowing the teams.

1994-95 results not final: results supplied from football-data.co.uk 1994-95 all-Europe archive (sheet F1), compiled by Joe Buchdahl; supplied by Ashwin 2026-09-05.2019-20 table not final: abandoned at the COVID-19 shutdown, 279 of 380 played.

Lyon against expectation →How this is measured →

What the squad was worth

Total market value of the squad, EUR millions, by month; the player count beside it is the size of the priced squad.

How this is measured

Drawn as a step, not a curve: Transfermarkt reprices every squad in December and June (marked with a small tick on the axis) and revalues continuously between, so the line only moves when a real valuation changed, never by interpolation.

A month renders no value at all once the priced squad falls below 15 players, so a thin squad is never shown as a cheap one. The series is floored at July 2012on purpose: earlier Transfermarkt totals reflect which players happened to be priced yet rather than the squad’s real worth, and are excluded rather than shown misleadingly low.

Upstream (dcaribou/transfermarkt-datasets) has been paused since July 2026, so the series ends where the source ends rather than where the season does.

Player valuations from Transfermarkt via github.com/dcaribou/transfermarkt-datasets (CC0).

What the squad was worth€299m
Olympique Lyon: squad value by month, 2012-07 to 2026-06024649112-1314-1516-1718-1920-2122-2324-25
Peak
€455m in Sep 2019 · 30 players valued
Most recent
€299m in Jun 2026 · 29 players valued

Lyonon the rankings →

The money ledger

Fees paid and received each season, and what the squad was worth once the trading is netted out.

How this is measured

Spent is the fees paid for players arriving, received the fees for players leaving, both in EUR millions by the July-to-June season of the move. A move with no fee on record (a free, a loan, an undisclosed sum) is counted, never priced: the small figure beside each total is the moves with a fee, plus those without (so 4+3 is four priced arrivals and three unpriced), and a quiet window is not mistaken for a cheap one. Wages are not here: they are estimates nobody licenses, and fees are documented.

Appreciationis the season’s change in squad value with the net spend taken out: buy 100m of players and finish 100m higher is zero; finish 120m higher and the club made 20m of players better, or the market repriced them. It needs a priced squad at both ends of the season (the same 15-player floor as the value chart), so it is blank rather than guessed for a season that lacks one.

The source has been paused since 6 July 2026, so the final row holds only the opening days of its window.

Transfer fees and player valuations from Transfermarkt via github.com/dcaribou/transfermarkt-datasets (CC0).

The money ledger+€346m
Spent
€590m
65 arrivals with a fee
Received
€935m
71 departures with a fee
Net
+€346m
255 moves with no fee
Appreciation
+€459m
14 seasons with a priced squad

Grown or bought: in 2026-27, trading +€2m and appreciation . Over the last 5 seasons (2022-232026-27), trading +€73m and appreciation unpriced.

The director’s ledger: 103 arrivals graded since 2022-23, 82% EV-positive. €288m deployed for a 1.2× multiplier.

2026-27 spent €4m received €7mto 6 July 2026
in: Noham Kamara €4m
unpriced
2025-26 spent €48m received €74m
in: Tyler Morton €10m
+€82m
squad gain
2024-25 spent €144m received €99m
in: Moussa Niakhaté €32m
−€56m
squad gain
2023-24 spent €59m received €105m
in: Malick Fofana €20m
+€27m
squad gain
2022-23 spent €32m received €75m
in: Amin Sarr €11m
−€36m
squad gain
2021-22 spent €21m received €96m
in: Romain Faivre €15m
+€71m
squad gain
2020-21 spent €25m received €47m
in: Lucas Paquetá €23m
−€26m
squad gain
2019-20 spent €122m received €160m
in: Jeff Reine-Adélaïde €25m
−€24m
squad gain
Show all 15 seasons
2018-19 spent €36m received €88m
in: Moussa Dembélé €22m
+€153m
squad gain
2017-18 spent €43m received €119m
in: Martin Terrier €11m
+€221m
squad gain
2016-17 spent €29m received €27m
in: Memphis Depay €16m
+€30m
squad gain
2015-16 spent €23m received €16m
in: Sergi Darder €13m
+€5m
squad gain
2014-15 spent €4m received €1m
in: Maxwel Cornet €3m
+€37m
squad gain
2013-14 spent received €10m
out: Dejan Lovren €10m
−€1m
squad gain
2012-13 spent received €13m
out: Hugo Lloris €13m
−€24m
squad gain

Money against football

Every priced club-season in the six leagues: points against expectation across, squad value gained beyond the net spend up. This club’s seasons are joined.

Tap or drag on the plot: the nearest club-season, its points and its money.

the frontier: no other club-season beat it on both axes · this club, season by season, the largest dot the latest

Every club’s return on the transfer window →

Greatest games

FC Lyon's top matches by the club Game Score: closeness, stakes, quality and upset over one unified rating of league and European play.All-time board.

#DateStageResultScore
11918-05-05Coupe de France · FinalNL 0-3 v Olympique de Pantingame score 35.7

Footprint

Tiers played
L1
Top-flight (L1) seasons
0
First season
1905
Most recent season
1914
Season-by-season

Most recent season first. Covers Ligue 1 only. Rows tagged "national playoff" are pre-modern formats where the workbook records only playoff participants, not round-robin standings.

1914
Championnat de France (1)
national playoff · knockout format, no match data
1912
Championnat de France (1)
national playoff · knockout format, no match data
1909
Championnat de France (1)
national playoff · knockout format, no match data
1908
Championnat de France (1)
national playoff · knockout format, no match data
1905
Championnat de France (1)
national playoff · knockout format, no match data
Domestic Cup Finals

Most recent first. Every domestic cup final the club has played, including losses. Scheduled finals (date not yet passed) are flagged.

1918
Coupe de France
Runner-up