Moussa Niakhaté
Moussa Niakhaté, 30, from Senegal ➤ Olympique Lyon, since 2024 ➤ Centre-Back ➤ Market value: €15.00m ➤ * 08/03/1996 in Roubaix, France

Info
Biographical card, current club and contract facts. Empty fields mean the source did not publish that value.
- Club
- Lyon
- League
- Ligue 1
- Position
- Defender - Centre-Back
- Shirt
- #19
- Age
- 30
- Date of birth
- 08/03/1996
- Height
- 1,90m
- Foot
- left
- Citizenship
- Senegal, France
- Joined
- 04/07/2024
- Contract until
- 30/06/2028
- Market value
- €15.00m
- Career fees
- €51.70m
- Youth clubs
- AMCS Comines (2002-2004), LOSC Lille (2004-2011), ES Wasquehal (2011-2012), US Boulogne (2012-2013)
Statistics
Career totals from Transfermarkt: this season, then by competition and by club. Minutes and cards appear when the source recorded them.
This season
| Season | Competition | Apps | Min | G | A | YC | RC |
|---|---|---|---|---|---|---|---|
| 26/27 | Ligue 1 | 2 | 180 | 0 | 0 | 0 | 0 |
| 26/27 | Champions League Qu. | 3 | 270 | 0 | 0 | 0 | 0 |
By competition
| Competition | Apps | G | A |
|---|---|---|---|
| Bundesliga | 128 | 9 | 4 |
| Ligue 1 | 100 | 0 | 3 |
| Ligue 2 | 72 | 1 | 4 |
| Premier League | 35 | 1 | 0 |
| Europa League | 18 | 1 | 0 |
| National 2 - Grp. D | 16 | 0 | 0 |
| National 2 - Grp. B | 13 | 0 | 0 |
| Coupe de France | 9 | 0 | 0 |
| DFB-Pokal | 7 | 0 | 0 |
| Coupe de la Ligue | 4 | 0 | 0 |
| National 2 - Grp. G | 4 | 0 | 0 |
| Champions League Qu. | 3 | 0 | 0 |
| FA Cup | 1 | 0 | 0 |
| EFL Cup | 1 | 0 | 0 |
| Premier League 2 | 1 | 0 | 0 |
By club
| Club | Apps | G | A |
|---|---|---|---|
| Mainz | 135 | 9 | 4 |
| Lyon | 90 | 1 | 2 |
| Valenciennes FC | 78 | 1 | 4 |
| FC Metz | 38 | 0 | 1 |
| Nott'm Forest | 37 | 1 | 0 |
| Valenciennes B | 33 | 0 | 0 |
| Nottingham U21 | 1 | 0 | 0 |
Transfers
Recorded moves between clubs, with fee and market value on the day of the deal when the source has them.
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 04/07/2024 | 24/25 | Nott'm Forest | Lyon | €31.90m | €16.00m |
| 06/07/2022 | 22/23 | Mainz | Nott'm Forest | €13.80m | €18.00m |
| 07/07/2018 | 18/19 | FC Metz | Mainz | €6.00m | €5.00m |
| 01/07/2017 | 17/18 | Valenciennes FC | FC Metz | ? | €400k |
| 01/01/2015 | 14/15 | Valenciennes B | Valenciennes FC | - | - |
| 01/07/2013 | 13/14 | Boulogne U19 | Valenciennes B | free transfer | - |
| 01/07/2012 | 12/13 | Wasquehal U19 | Boulogne U19 | free transfer | - |
| 01/07/2011 | 11/12 | LOSC Lille Yth. | Wasquehal U19 | free transfer | - |
National
Senior and youth national-team spells: caps, goals, shirt number and whether the player is still in the current pool.
| Team | Caps | Goals | Shirt | Debut | Status |
|---|---|---|---|---|---|
| Senegal | 35 | 0 | 19 | 2023-03-24 | Current international |
| France U21 | 11 | 0 | 17 | 2018-03-27 | retired national player |
| France U19 | 3 | 0 | 0 | 2014-11-13 | retired national player |
| France U20 | 8 | 0 | 3 | 2015-09-04 | retired national player |
Market value
Current and peak Transfermarkt valuations, plus the history of changes by club and age. Rankings are relative to the current squad, league and position group.
- Current
- €15.00m
- Highest
- €18.00m · 22/12/2021
- Last change
- 01/06/2026
| Date | Age | Club | Value |
|---|---|---|---|
| 05/04/2015 | 19 | Valenciennes FC | €150k |
| 06/06/2015 | 19 | Valenciennes FC | €300k |
| 04/02/2016 | 19 | Valenciennes FC | €300k |
| 13/07/2016 | 20 | Valenciennes FC | €300k |
| 20/03/2017 | 21 | Valenciennes FC | €400k |
| 15/06/2017 | 21 | Valenciennes FC | €400k |
| 24/01/2018 | 21 | FC Metz | €3.00m |
| 04/06/2018 | 22 | FC Metz | €5.00m |
| 22/08/2018 | 22 | 1.FSV Mainz 05 | €6.00m |
| 18/12/2018 | 22 | 1.FSV Mainz 05 | €10.00m |
| 05/06/2019 | 23 | 1.FSV Mainz 05 | €14.00m |
| 17/12/2019 | 23 | 1.FSV Mainz 05 | €14.00m |
| 08/04/2020 | 24 | 1.FSV Mainz 05 | €11.00m |
| 26/11/2020 | 24 | 1.FSV Mainz 05 | €9.00m |
| 10/02/2021 | 24 | 1.FSV Mainz 05 | €7.50m |
| 31/03/2021 | 25 | 1.FSV Mainz 05 | €10.00m |
| 09/06/2021 | 25 | 1.FSV Mainz 05 | €15.00m |
| 22/12/2021 | 25 | 1.FSV Mainz 05 | €18.00m |
| 09/06/2022 | 26 | 1.FSV Mainz 05 | €18.00m |
| 03/11/2022 | 26 | Nottingham Forest | €18.00m |
| 20/06/2023 | 27 | Nottingham Forest | €18.00m |
| 19/12/2023 | 27 | Nottingham Forest | €16.00m |
| 27/05/2024 | 28 | Nottingham Forest | €16.00m |
| 07/10/2024 | 28 | Olympique Lyon | €15.00m |
| 10/12/2024 | 28 | Olympique Lyon | €15.00m |
| 03/06/2025 | 29 | Olympique Lyon | €15.00m |
| 15/12/2025 | 29 | Olympique Lyon | €15.00m |
| 27/03/2026 | 30 | Olympique Lyon | €18.00m |
| 01/06/2026 | 30 | Olympique Lyon | €15.00m |
xG Statistics
Moussa Niakhaté's xG Statistics block is an Understat shot model for the 2026 season. It does not replace goals and assists — it explains them. xG and xA ask whether the chances were good enough; xGChain and xGBuildup show how often the player was on the ball in moves that became shots. Use minutes as the denominator: a large xG in 80 minutes is a hot streak, the same xG over 1,200 minutes is a role. Figures are rounded to two decimals and stay empty when Understat has no match for this player.
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Ligue 1 | Lyon | 2 | 180 | 0 | 0 | 0 | 0 | 0.05 | 0 | 1 | 0.61 |
| 2025 | Ligue 1 | Lyon | 32 | 2750 | 0 | 0.17 | 0.17 | 2 | 0.82 | 4 | 14 | 13.67 |
What the columns mean
Read this table as chance quality, not as a scoreboard. A player can outscore xG (finishing well) or lag behind it (missed sitters). Compare rows only when minutes are in the same range.
Apps· Appearances- Matches in which the player was used in this league season, including substitute minutes.
Min· Minutes- Total minutes on the pitch. Useful when comparing output: 1 goal in 90 minutes is not the same as 1 goal in 800.
G· Goals- Goals credited to the player in the Understat shot model for that season.
xG· Expected goals- The quality of shots the player took, expressed as the number of goals an average finisher would score from the same chances. A 0.30 xG shot is a chance that goes in about 3 times in 10.
npxG· Non-penalty xG- Expected goals with penalties removed. This is the cleaner read of open-play and set-piece finishing, because a penalty is usually ~0.76 xG by itself.
A· Assists- Goals that followed the player's last pass. Actual assists, not the model.
xA· Expected assists- The xG value of shots that came directly from the player's key passes. High xA with few assists usually means teammates missed good chances.
Sh· Shots- Total shots recorded by Understat, including blocked and off-target attempts.
KP· Key passes- Passes that led to a shot. This is the volume behind xA.
xGChain· xG chain- Team xG from possessions the player touched. It captures involvement in build-up, not only the shot or the last pass. A midfielder who starts attacks can rank high here without scoring.
xGBuildup· xG buildup- The same possession xG, but excluding the shot-taker and the assist. This is the purest 'how much did this player help create the chance before the final ball' number.
NPG· Non-penalty goals- Goals scored from open play or set pieces, excluding penalties.







