Noah Okafor
Noah Okafor, 26, from Switzerland ➤ Leeds United, since 2025 ➤ Left Winger ➤ Market value: €25.00m ➤ * 24/05/2000 in Binningen, Switzerland

Info
Biographical card, current club and contract facts. Empty fields mean the source did not publish that value.
- Club
- Leeds
- League
- Premier League
- Position
- Attack - Left Winger
- Shirt
- #19
- Age
- 26
- Date of birth
- 24/05/2000
- Height
- 1,85m
- Foot
- right
- Citizenship
- Switzerland, Nigeria
- Joined
- 21/08/2025
- Contract until
- 30/06/2029
- Market value
- €25.00m
- Career fees
- €47.60m
- Youth clubs
- FC Arisdorf (2008-2009), FC Basel (2009-2018)
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 | Premier League | 3 | 155 | 0 | 0 | 0 | 0 |
| 26/27 | EFL Cup | 1 | 67 | 0 | 0 | 0 | 0 |
By competition
| Competition | Apps | G | A |
|---|---|---|---|
| Bundesliga | 71 | 25 | 17 |
| Serie A | 43 | 7 | 2 |
| Super League | 39 | 3 | 3 |
| Premier League | 31 | 8 | 1 |
| U18 Elite League | 28 | 10 | 0 |
| UEFA Champions League | 24 | 6 | 2 |
| ÖFB-Cup | 15 | 3 | 6 |
| Promotion League | 15 | 2 | 0 |
| Europa League | 13 | 2 | 1 |
| Champions League Qu. | 7 | 0 | 0 |
| Swiss Cup | 7 | 2 | 1 |
| UEFA Youth League | 6 | 2 | 4 |
| FA Cup | 4 | 0 | 2 |
| U18 Elite Playoffs | 3 | 1 | 0 |
| Italy Cup | 2 | 0 | 1 |
| EFL Cup | 2 | 0 | 0 |
| U17 Elite League | 2 | 0 | 0 |
| Schweizer Cup U18 | 2 | 0 | 0 |
| Europa League Qualifying | 1 | 0 | 0 |
| Supercoppa Italiana | 0 | 0 | 0 |
By club
| Club | Apps | G | A |
|---|---|---|---|
| Salzburg | 110 | 34 | 23 |
| AC Milan | 54 | 7 | 5 |
| Basel | 54 | 7 | 5 |
| Leeds | 37 | 8 | 3 |
| FC Basel U18 | 33 | 11 | 0 |
| FC Basel U21 | 15 | 2 | 0 |
| FC Basel YL | 6 | 2 | 4 |
| Napoli | 4 | 0 | 0 |
| FC Basel U17 | 2 | 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 |
|---|---|---|---|---|---|
| 21/08/2025 | 25/26 | AC Milan | Leeds | €19.00m | €13.00m |
| 30/06/2025 | 24/25 | Napoli | AC Milan | End of loan | €13.00m |
| 03/02/2025 | 24/25 | AC Milan | Napoli | Loan fee:<br /><i class="normaler-text">€1.90m</i> | €15.00m |
| 22/07/2023 | 23/24 | Salzburg | AC Milan | €15.50m | €20.00m |
| 31/01/2020 | 19/20 | Basel | Salzburg | €11.20m | €8.00m |
| 31/01/2018 | 17/18 | FC Basel U21 | Basel | - | €400k |
| 17/10/2017 | 17/18 | FC Basel U18 | FC Basel U21 | - | - |
| 01/07/2016 | 16/17 | FC Basel U16 | FC Basel U18 | - | - |
| 01/07/2015 | 15/16 | FC Basel Yth. | FC Basel U16 | - | - |
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 |
|---|---|---|---|---|---|
| Switzerland | 26 | 2 | 19 | 2019-06-09 | Current international |
| Switzerland U21 | 8 | 4 | 7 | 2019-09-10 | Former international |
| Switzerland U19 | 7 | 1 | 11 | 2018-09-07 | Former international |
| Switzerland U18 | 1 | 0 | 11 | 2018-05-09 | Former international |
| Switzerland U17 | 7 | 3 | 8 | 2016-09-27 | Former international |
| Switzerland U15 | 3 | 0 | 11 | 2014-09-11 | Former international |
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
- €25.00m
- Highest
- €25.00m · 10/11/2022
- Last change
- 03/06/2026
| Date | Age | Club | Value |
|---|---|---|---|
| 08/01/2018 | 17 | FC Basel 1893 U21 | €400k |
| 24/04/2018 | 17 | FC Basel 1893 | €400k |
| 12/07/2018 | 18 | FC Basel 1893 | €400k |
| 21/01/2019 | 18 | FC Basel 1893 | €800k |
| 15/04/2019 | 18 | FC Basel 1893 | €4.00m |
| 04/06/2019 | 19 | FC Basel 1893 | €8.00m |
| 06/01/2020 | 19 | FC Basel 1893 | €8.00m |
| 08/04/2020 | 19 | Red Bull Salzburg | €7.20m |
| 22/07/2020 | 20 | Red Bull Salzburg | €9.00m |
| 12/10/2020 | 20 | Red Bull Salzburg | €7.50m |
| 21/12/2020 | 20 | Red Bull Salzburg | €7.50m |
| 02/06/2021 | 21 | Red Bull Salzburg | €6.50m |
| 06/09/2021 | 21 | Red Bull Salzburg | €5.00m |
| 16/12/2021 | 21 | Red Bull Salzburg | €12.00m |
| 27/05/2022 | 22 | Red Bull Salzburg | €18.00m |
| 10/11/2022 | 22 | Red Bull Salzburg | €25.00m |
| 20/03/2023 | 22 | Red Bull Salzburg | €22.00m |
| 12/06/2023 | 23 | Red Bull Salzburg | €20.00m |
| 20/12/2023 | 23 | AC Milan | €20.00m |
| 05/06/2024 | 24 | AC Milan | €20.00m |
| 18/12/2024 | 24 | AC Milan | €15.00m |
| 17/06/2025 | 25 | SSC Napoli | €13.00m |
| 17/10/2025 | 25 | Leeds United | €18.00m |
| 09/12/2025 | 25 | Leeds United | €18.00m |
| 03/06/2026 | 26 | Leeds United | €25.00m |
xG Statistics
Noah Okafor'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 | EPL | Leeds | 3 | 157 | 0 | 0.08 | 0.08 | 0 | 0.06 | 2 | 1 | 0.14 |
| 2025 | EPL | Leeds | 28 | 1592 | 8 | 6.3 | 6.3 | 1 | 2.26 | 35 | 19 | 10.92 |
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.







