Sébastien Haller
Career snapshot
Career highs
Born the same day
Shares 1994-06-22 · 6 players total
| Full name | Sébastien Haller |
|---|---|
| Name in home country | Sébastien Romain Teddy Haller |
| Date of birth | 1994-06-22 (31 yrs) |
| Place of birth | Ris-Orangis, Cote d'Ivoire |
| Citizenship | Cote d'Ivoire France |
| Position | Attack - Centre-Forward (main: Attack) |
| Foot | right |
| Height | 190.00 m |
| Current club | FC Utrecht |
| Joined | 2025-08-18 |
| Contract expires | 2026-06-30 |
| Agent | management 360 |
| Outfitter | Puma |
| Club | Seasons | First | Last | Matches | Goals | Assists | Minutes |
|---|---|---|---|---|---|---|---|
| FC Utrecht | 5 | 14/15 | 25/26 | 120 | 57 | 17 | 1,622 |
| Borussia Dortmund | 3 | 22/23 | 24/25 | 41 | 12 | 6 | 235 |
| CD Leganés | 1 | 24/25 | 24/25 | 9 | 0 | 0 | 0 |
| Ajax Amsterdam | 2 | 20/21 | 21/22 | 66 | 47 | 16 | 578 |
| West Ham United | 2 | 19/20 | 20/21 | 54 | 14 | 2 | 703 |
| Eintracht Frankfurt | 2 | 17/18 | 18/19 | 77 | 33 | 19 | 656 |
| AJ Auxerre | 3 | 12/13 | 14/15 | 57 | 8 | 3 | 859 |
Career trajectory — goals, assists & market value
Goals by season
Assists by season
| Season | Competition | Club | Matches | Goals | Assists | YC | RC | Minutes |
|---|---|---|---|---|---|---|---|---|
| 25/26 | Eredivisie | FC Utrecht | 2 | 0 | 0 | 0 | 0 | 0 |
| 25/26 | Europa League Qualifying | FC Utrecht | 2 | 0 | 0 | 0 | 0 | 0 |
| 24/25 | Bundesliga | Borussia Dortmund | 0 | 0 | 0 | 0 | 0 | 0 |
| 24/25 | Copa del Rey | CD Leganés | 1 | 0 | 0 | 0 | 0 | 0 |
| 24/25 | DFB-Pokal | Borussia Dortmund | 0 | 0 | 0 | 0 | 0 | 0 |
| 24/25 | Eredivisie | FC Utrecht | 16 | 4 | 1 | 0 | 0 | 319 |
| 24/25 | KNVB Beker | FC Utrecht | 2 | 2 | 0 | 0 | 0 | 45 |
| 24/25 | LaLiga | CD Leganés | 8 | 0 | 0 | 0 | 0 | 0 |
| 23/24 | Bundesliga | Borussia Dortmund | 14 | 0 | 1 | 2 | 0 | 0 |
| 23/24 | Champions League | Borussia Dortmund | 4 | 1 | 0 | 0 | 0 | 60 |
| 23/24 | DFB-Pokal | Borussia Dortmund | 1 | 2 | 0 | 0 | 0 | 38 |
| 22/23 | Bundesliga | Borussia Dortmund | 19 | 9 | 5 | 1 | 0 | 137 |
| 22/23 | Champions League | Borussia Dortmund | 2 | 0 | 0 | 0 | 0 | 0 |
| 22/23 | DFB-Pokal | Borussia Dortmund | 1 | 0 | 0 | 0 | 0 | 0 |
| 21/22 | Champions League | Ajax Amsterdam | 8 | 11 | 2 | 1 | 0 | 61 |
| 21/22 | Eredivisie | Ajax Amsterdam | 31 | 21 | 7 | 4 | 0 | 123 |
| 21/22 | Johan Cruijff Schaal | Ajax Amsterdam | 1 | 0 | 0 | 0 | 0 | 0 |
| 21/22 | KNVB Beker | Ajax Amsterdam | 3 | 2 | 0 | 1 | 0 | 93 |
| 20/21 | EFL Cup | West Ham United | 3 | 4 | 0 | 0 | 0 | 68 |
| 20/21 | Eredivisie | Ajax Amsterdam | 19 | 11 | 5 | 2 | 0 | 143 |
| 20/21 | KNVB Beker | Ajax Amsterdam | 4 | 2 | 2 | 0 | 0 | 158 |
| 20/21 | Premier League | West Ham United | 16 | 3 | 0 | 0 | 0 | 312 |
| 19/20 | EFL Cup | West Ham United | 1 | 0 | 0 | 0 | 0 | 0 |
| 19/20 | FA Cup | West Ham United | 2 | 0 | 0 | 0 | 0 | 0 |
| 19/20 | Premier League | West Ham United | 32 | 7 | 2 | 1 | 0 | 323 |
| 18/19 | Bundesliga | Eintracht Frankfurt | 29 | 15 | 9 | 3 | 0 | 145 |
| 18/19 | DFB-Pokal | Eintracht Frankfurt | 1 | 0 | 0 | 0 | 0 | 0 |
| 18/19 | DFL-Supercup | Eintracht Frankfurt | 1 | 0 | 0 | 0 | 0 | 0 |
| 18/19 | Europa League | Eintracht Frankfurt | 10 | 5 | 3 | 2 | 0 | 155 |
| 17/18 | Bundesliga | Eintracht Frankfurt | 31 | 9 | 4 | 2 | 0 | 261 |
| 17/18 | DFB-Pokal | Eintracht Frankfurt | 5 | 4 | 3 | 1 | 0 | 95 |
| 16/17 | Eredivisie | FC Utrecht | 32 | 13 | 5 | 4 | 0 | 220 |
| 16/17 | KNVB Beker | FC Utrecht | 3 | 1 | 0 | 1 | 0 | 300 |
| 16/17 | Play-Offs Conference League | FC Utrecht | 4 | 2 | 0 | 0 | 0 | 186 |
| 15/16 | Eredivisie | FC Utrecht | 33 | 17 | 4 | 2 | 1 | 167 |
| 15/16 | KNVB Beker | FC Utrecht | 5 | 5 | 1 | 1 | 0 | 89 |
| 15/16 | Play-Offs Conference League | FC Utrecht | 4 | 2 | 1 | 0 | 0 | 178 |
| 14/15 | Coupe de la Ligue | AJ Auxerre | 3 | 0 | 1 | 0 | 0 | 0 |
| 14/15 | Eredivisie | FC Utrecht | 17 | 11 | 5 | 1 | 0 | 118 |
| 14/15 | Ligue 2 | AJ Auxerre | 8 | 0 | 0 | 0 | 0 | 0 |
| 13/14 | Coupe de France | AJ Auxerre | 1 | 0 | 0 | 0 | 0 | 0 |
| 13/14 | Coupe de la Ligue | AJ Auxerre | 2 | 2 | 0 | 0 | 0 | 62 |
| 13/14 | Ligue 2 | AJ Auxerre | 25 | 4 | 0 | 0 | 0 | 387 |
| 12/13 | Coupe de la Ligue | AJ Auxerre | 1 | 0 | 0 | 0 | 0 | 0 |
| 12/13 | Ligue 2 | AJ Auxerre | 17 | 2 | 2 | 1 | 0 | 410 |
| Season | Date | From | To | Type | Market value | Fee |
|---|---|---|---|---|---|---|
| 05/06 | 2005-07-01 | Vigneux Yth. | Bretigny Yth. | Transfer | 0 | — |
| 07/08 | 2007-07-01 | Bretigny Yth. | AJ Auxerre Yth. | Transfer | 0 | — |
| 09/10 | 2009-07-01 | AJ Auxerre Yth. | AJ Auxerre U17 | Transfer | 0 | — |
| 10/11 | 2010-07-01 | AJ Auxerre U17 | AJ Auxerre U19 | Transfer | 0 | — |
| 10/11 | 2010-11-27 | AJ Auxerre U19 | AJ Auxerre B | Transfer | 0 | — |
| 12/13 | 2012-07-01 | AJ Auxerre B | AJ Auxerre | Transfer | 200000 | — |
| 14/15 | 2015-01-01 | AJ Auxerre | FC Utrecht | Loan | 1250000 | — |
| 14/15 | 2015-06-30 | FC Utrecht | AJ Auxerre | Return from loan | 1250000 | — |
| 15/16 | 2015-07-01 | AJ Auxerre | FC Utrecht | Transfer | 2000000 | €750k |
| 17/18 | 2017-07-01 | FC Utrecht | E. Frankfurt | Transfer | 8000000 | €12.00m |
| 19/20 | 2019-07-17 | E. Frankfurt | West Ham | Transfer | 40000000 | €50.00m |
| 20/21 | 2021-01-08 | West Ham | Ajax | Transfer | 30000000 | €22.50m |
| 22/23 | 2022-07-06 | Ajax | Bor. Dortmund | Transfer | 35000000 | €31.00m |
| 24/25 | 2024-08-30 | Bor. Dortmund | CD Leganés | Loan | 10000000 | — |
| 24/25 | 2025-01-09 | CD Leganés | Bor. Dortmund | Return from loan | 3000000 | — |
| 24/25 | 2025-01-09 | Bor. Dortmund | FC Utrecht | Loan | 3000000 | — |
| 24/25 | 2025-06-30 | FC Utrecht | Bor. Dortmund | Return from loan | 3000000 | — |
| 25/26 | 2025-08-18 | Bor. Dortmund | FC Utrecht | Transfer | 3000000 | — |
| Season | Injury | From | To | Days missed | Games missed |
|---|---|---|---|---|---|
| 18/19 | Abdominal muscle strain | 2019-04-01 | 2019-05-06 | 36 | 8 |
| 19/20 | Knee injury | 2019-08-11 | 2019-08-23 | 13 | 1 |
| 19/20 | Groin injury | 2020-06-19 | 2020-07-07 | 19 | 4 |
| 20/21 | Knock | 2020-10-06 | 2020-10-22 | 17 | 3 |
| 20/21 | Corona virus | 2021-03-20 | 2021-04-03 | 15 | 3 |
| 21/22 | Ill | 2021-11-27 | 2021-12-01 | 5 | 1 |
| 22/23 | Testicular cancer | 2022-07-18 | 2022-12-31 | 167 | 27 |
| 22/23 | Knee problems | 2023-04-02 | 2023-04-07 | 6 | 1 |
| 23/24 | Ill | 2023-11-24 | 2023-11-26 | 3 | 1 |
| 23/24 | Inner ligament stretch of the knee | 2023-12-05 | 2023-12-11 | 7 | 2 |
| 23/24 | Ankle injury | 2023-12-20 | 2024-01-23 | 35 | 5 |
| 23/24 | Ankle injury | 2024-02-12 | 2024-03-27 | 45 | 9 |
| 23/24 | Ankle injury | 2024-04-14 | 2024-04-29 | 16 | 3 |
| 23/24 | Ankle injury | 2024-05-02 | 2024-05-06 | 5 | 1 |
| 23/24 | Ankle injury | 2024-05-08 | 2024-05-12 | 5 | 1 |
| Date | Value |
|---|---|
| Jan 1, 1970 | €3.00m |
| Jan 1, 1970 | €14.00m |
| Jan 1, 1970 | €3.00m |
| Jan 1, 1970 | €7.50m |
| Jan 1, 1970 | €10.00m |
| Jan 1, 1970 | €25.00m |
| Jan 1, 1970 | €18.00m |
| Jan 1, 1970 | €30.00m |
| Jan 1, 1970 | €30.00m |
| Jan 1, 1970 | €35.00m |
| Jan 1, 1970 | €35.00m |
| Jan 1, 1970 | €30.00m |
| Jan 1, 1970 | €27.00m |
| Jan 1, 1970 | €30.00m |
| Jan 1, 1970 | €36.00m |
| Jan 1, 1970 | €45.00m |
| Jan 1, 1970 | €40.00m |
| Jan 1, 1970 | €45.00m |
| Jan 1, 1970 | €40.00m |
| Jan 1, 1970 | €11.00m |
| Jan 1, 1970 | €12.00m |
| Jan 1, 1970 | €15.00m |
| Jan 1, 1970 | €35.00m |
| Jan 1, 1970 | €8.00m |
| Jan 1, 1970 | €12.00m |
| Jan 1, 1970 | €8.00m |
| Jan 1, 1970 | €7.50m |
| Jan 1, 1970 | €6.50m |
| Jan 1, 1970 | €1.25m |
| Jan 1, 1970 | €3.50m |
| Jan 1, 1970 | €2.00m |
| Jan 1, 1970 | €1.25m |
| Jan 1, 1970 | €1.25m |
| Jan 1, 1970 | €400k |
| Jan 1, 1970 | €750k |
| Jan 1, 1970 | €200k |
| Jan 1, 1970 | €100k |
| Jan 1, 1970 | €200k |
| Team | Shirt | Matches | Goals | Debut | Age at debut | Status |
|---|---|---|---|---|---|---|
| Team #25250 | — | 4 | 1 | — | — | former national player |
| Team #23658 | — | 7 | 2 | — | — | former national player |
| Team #23101 | — | 7 | 3 | — | — | former national player |
| Team #10844 | — | 1 | 0 | — | — | former national player |
| Team #10831 | — | 12 | 6 | — | — | former national player |
| Team #9323 | — | 20 | 13 | — | — | former national player |
| Team #3591 | — | 27 | 10 | — | — | current national player |
| Teammate | PPG played with | Joint goals | Minutes |
|---|---|---|---|
| Daley Blind | 2 | 2 | 0 |
| Ante Rebić | 2 | 4 | 0 |
| Willy Boly | 1 | 0 | 0 |
| Sofyan Amrabat | 2 | 3 | 0 |
| Declan Rice | 1 | 0 | 0 |
| Antony | 3 | 11 | 0 |
| Lisandro Martínez | 2 | 3 | 0 |
| Timo Letschert | 1 | 3 | 0 |
| Jetro Willems | 2 | 2 | 0 |
| Dušan Tadić | 2 | 8 | 0 |
| Marius Wolf | 2 | 3 | 0 |
| Edson Álvarez | 2 | 1 | 0 |
| Danny da Costa | 2 | 3 | 0 |
| Davy Klaassen | 2 | 6 | 0 |
| Jurriën Timber | 3 | 1 | 0 |
| Ryan Gravenberch | 2 | 4 | 0 |
| Mijat Gacinovic | 2 | 7 | 0 |
Single-season peaks across competitions in this player's career.
Top goalscoring seasons
| Season | Competition | Club | Goals | Matches |
|---|---|---|---|---|
| 21/22 | Eredivisie | Ajax Amsterdam | 21 | 31 |
| 15/16 | Eredivisie | FC Utrecht | 17 | 33 |
| 18/19 | Bundesliga | Eintracht Frankfurt | 15 | 29 |
Top assist seasons
| Season | Competition | Club | Assists | Matches |
|---|---|---|---|---|
| 18/19 | Bundesliga | Eintracht Frankfurt | 9 | 29 |
| 21/22 | Eredivisie | Ajax Amsterdam | 7 | 31 |
| 14/15 | Eredivisie | FC Utrecht | 5 | 17 |
Every loan spell across this player's career.
| Season | Date | From | To | Type | Fee | Value at transfer |
|---|---|---|---|---|---|---|
| 24/25 | 2025-06-30 | FC Utrecht | Bor. Dortmund | Return from loan | — | €3.00m |
| 24/25 | 2025-01-09 | Bor. Dortmund | FC Utrecht | Loan | — | €3.00m |
| 24/25 | 2025-01-09 | CD Leganés | Bor. Dortmund | Return from loan | — | €3.00m |
| 24/25 | 2024-08-30 | Bor. Dortmund | CD Leganés | Loan | — | €10.00m |
| 14/15 | 2015-06-30 | FC Utrecht | AJ Auxerre | Return from loan | — | €1.25m |
| 14/15 | 2015-01-01 | AJ Auxerre | FC Utrecht | Loan | — | €1.25m |
Last 35 matches for FC Utrecht while Sébastien Haller was at the club (joined 2025-08-18). The Availability column cross-references our injury database — matches inside a known injury window are flagged INJURED. Per-match goal attribution requires a paid feed (FBref/Sofascore) and isn't wired up yet.
| Date | Comp | Home | Score | Away | Availability |
|---|---|---|---|---|---|
| 2026-05-17 | NL1 |
FC Utrecht | – | Fortuna Sittard | TIMED |
| 2026-05-10 | NL1 |
AFC Ajax | 1–2 | FC Utrecht | Available |
| 2026-05-10 | NL1 |
AFC Ajax | 1–2 | FC Utrecht | Available |
| 2026-05-02 | NL1 |
FC Utrecht | 2–0 | NAC Breda | Available |
| 2026-05-02 | NL1 |
FC Utrecht | 2–0 | NAC Breda | Available |
| 2026-04-26 | NL1 |
SBV Excelsior | 5–0 | FC Utrecht | Available |
| 2026-04-26 | NL1 |
SBV Excelsior | 5–0 | FC Utrecht | Available |
| 2026-04-11 | NL1 |
FC Utrecht | 4–1 | Telstar 1963 | Available |
| 2026-04-04 | NL1 |
PSV | 4–3 | FC Utrecht | Available |
| 2026-03-22 | NL1 |
FC Utrecht | 2–0 | Go Ahead Eagles | Available |
| 2026-03-15 | NL1 |
FC Twente '65 | 0–2 | FC Utrecht | Available |
| 2026-03-06 | NL1 |
Heracles Almelo | 0–0 | FC Utrecht | Available |
| 2026-03-01 | NL1 |
FC Utrecht | 2–0 | AZ | Available |
| 2026-02-22 | NL1 |
FC Utrecht | 1–1 | PEC Zwolle | Available |
| 2026-02-14 | NL1 |
FC Groningen | 1–2 | FC Utrecht | Available |
| 2026-02-11 | NL1 |
NEC | 1–3 | FC Utrecht | Available |
| 2026-02-08 | NL1 |
FC Utrecht | 0–1 | Feyenoord Rotterdam | Available |
| 2026-02-01 | NL1 |
SC Heerenveen | 1–1 | FC Utrecht | Available |
| 2026-01-25 | NL1 |
FC Utrecht | 0–1 | Sparta Rotterdam | Available |
| 2026-01-18 | NL1 |
FC Volendam | 2–1 | FC Utrecht | Available |
| 2025-12-21 | NL1 |
FC Utrecht | 1–2 | PSV | Available |
| 2025-12-14 | NL1 |
NAC Breda | 1–1 | FC Utrecht | Available |
| 2025-12-07 | NL1 |
FC Utrecht | 1–1 | FC Twente '65 | Available |
| 2025-11-30 | NL1 |
Go Ahead Eagles | 2–2 | FC Utrecht | Available |
| 2025-11-23 | NL1 |
Telstar 1963 | 1–1 | FC Utrecht | Available |
| 2025-11-09 | NL1 |
FC Utrecht | 2–1 | AFC Ajax | Available |
| 2025-11-02 | NL1 |
FC Utrecht | 1–0 | NEC | Available |
| 2025-10-26 | NL1 |
AZ | 4–1 | FC Utrecht | Available |
| 2025-10-18 | NL1 |
FC Utrecht | 3–1 | FC Volendam | Available |
| 2025-10-05 | NL1 |
Feyenoord Rotterdam | 3–2 | FC Utrecht | Available |
| 2025-09-28 | NL1 |
FC Utrecht | 2–2 | SC Heerenveen | Available |
| 2025-09-20 | NL1 |
Fortuna Sittard | 1–0 | FC Utrecht | Available |
| 2025-09-14 | NL1 |
FC Utrecht | 0–1 | FC Groningen | Available |
| 2025-08-31 | NL1 |
PEC Zwolle | 0–2 | FC Utrecht | Available |
| 2025-08-24 | NL1 |
FC Utrecht | 4–1 | SBV Excelsior | Available |
Teams faced most often by Sébastien Haller's clubs during seasons he played in those competitions (team-level results, not personal head-to-head goals — see disclaimer above).
| Opponent | P | W | D | L | GF | GA | GD | Win % |
|---|---|---|---|---|---|---|---|---|
| FC Augsburg | 52 | 23 | 16 | 13 | 102 | 68 | +34 | 44% |
| 1. FSV Mainz 05 | 52 | 25 | 13 | 14 | 85 | 64 | +21 | 48% |
| VfL Wolfsburg | 52 | 24 | 12 | 16 | 98 | 63 | +35 | 46% |
| SC Freiburg | 48 | 28 | 12 | 8 | 107 | 48 | +59 | 58% |
| VfB Stuttgart | 46 | 23 | 8 | 15 | 96 | 73 | +23 | 50% |
| RB Leipzig | 41 | 15 | 10 | 16 | 61 | 61 | 0 | 37% |
| FC Schalke 04 | 40 | 17 | 13 | 10 | 67 | 48 | +19 | 43% |
| Hertha BSC | 39 | 19 | 10 | 10 | 71 | 51 | +20 | 49% |
| 1. FC Köln | 36 | 14 | 11 | 11 | 67 | 49 | +18 | 39% |
| Bayern München | 35 | 4 | 5 | 26 | 27 | 85 | -58 | 11% |
| Werder Bremen | 35 | 19 | 9 | 7 | 76 | 46 | +30 | 54% |
| Bor. Mönchengladbach | 33 | 17 | 5 | 11 | 52 | 42 | +10 | 52% |
Auto-detected milestones based on cumulative career totals.
| Season / Year | Milestone | Date |
|---|---|---|
| 12/13 | Senior debut season | |
| 12/13 | First senior goal | |
| 16/17 | Goal #50 (career) | |
| 20/21 | Goal #100 (career) | |
| 21/22 | Goal #150 (career) |
Yellow / second-yellow / red cards per season. Only seasons with at least one card are shown.
| Season | Matches | Mins | YC | 2nd YC | RC | Cards / 90′ |
|---|---|---|---|---|---|---|
| 23/24 | 19 | 98 | 2 | 0 | 0 | 1.84 |
| 22/23 | 22 | 137 | 1 | 0 | 0 | 0.66 |
| 21/22 | 43 | 277 | 6 | 0 | 0 | 1.95 |
| 20/21 | 42 | 681 | 2 | 0 | 0 | 0.26 |
| 19/20 | 35 | 323 | 1 | 0 | 0 | 0.28 |
| 18/19 | 41 | 300 | 5 | 0 | 0 | 1.5 |
| 17/18 | 36 | 356 | 3 | 0 | 0 | 0.76 |
| 16/17 | 39 | 706 | 5 | 0 | 0 | 0.64 |
| 15/16 | 42 | 434 | 3 | 0 | 1 | 0.83 |
| 14/15 | 28 | 118 | 1 | 0 | 0 | 0.76 |
| 12/13 | 18 | 410 | 1 | 0 | 0 | 0.22 |
Output by competition
Career goals and assists broken down by tournament.
More on Sébastien Haller
Explore this player's career through different angles.
Similar players
Same position, similar age, sorted by market value.
Frequently asked about Sébastien Haller
Who is Sébastien Haller?
Sébastien Haller is a Cote d'Ivoire professional footballer who plays as a centre-forward for FC Utrecht.
How old is Sébastien Haller?
Sébastien Haller is 31 years old. He was born on June 22, 1994 in Ris-Orangis.
What position does Sébastien Haller play?
Sébastien Haller plays as a centre-forward (Attack - Centre-Forward).
What club does Sébastien Haller play for?
Sébastien Haller currently plays for FC Utrecht.
How many career goals has Sébastien Haller scored?
Across all senior club competitions in our dataset, Sébastien Haller has scored 171 goals in 424 appearances.
What is Sébastien Haller's market value?
Sébastien Haller's most recent reported market value is €3.00m.