Last 5 Matches
| Performance | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Date | Day | Comp | Round | Venue | Result | Squad | Opponent | Start | Pos | Min | Gls | Ast | PK | PKatt | Sh | SoT | CrdY | CrdR | Fls | Fld | Off | Crs | TklW | Int | OG | PKwon | PKcon | Match Report |
| 2026-05-31 | Sun | Friendlies (M) | Friendlies (M) | Neutral | W 3–0 | cv Cape Verde | rs Serbia | N | 44 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | Match Report | |||||||||||
| 2026-05-24 | Sun | MLS | Regular Season | Home | W 2–0 | Columbus Crew | Atlanta Utd | Y | CB | 68 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Match Report | ||
| 2026-05-20 | Wed | U.S. Open Cup | Quarterfinals | Home | W 1–0 | Columbus Crew | NYCFC | Y | CB | 75 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | Match Report | ||
| 2026-05-16 | Sat | MLS | Regular Season | Away | D 1–1 | Columbus Crew | Philadelphia Union | Y | LB | 90 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | Match Report | ||
| 2026-05-13 | Wed | MLS | Regular Season | Away | L 2–3 | Columbus Crew | RB New York | Y | RB | 90 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | Match Report | ||
| Playing Time | Performance | Per 90 Minutes | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 3 | 3 | 225 | 2.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.40 | 0.40 | 0.00 | 0.40 | Matches |
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 15 | 9 | 796 | 8.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 2 | 2 | 179 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 23 | 13 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 2 | 1 | 109 | 1.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 16 | 14 | 1,226 | 13.6 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 28 | 28 | 2,514 | 27.9 | 0 | 2 | 2 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | Matches |
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 3 | 3 | 225 | 2.5 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.40 | 0.40 | 0.00 | 0.40 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 3 | 3 | 247 | 2.7 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.36 | 0.00 | 0.36 | 0.36 | 0.36 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 35 | 35 | 3,150 | 35.0 | 1 | 2 | 3 | 1 | 0 | 0 | 10 | 0 | 0.03 | 0.06 | 0.09 | 0.03 | 0.09 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 3 | 3 | 300 | 3.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 10 | 10 | 863 | 9.6 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 2 | 2 | 180 | 2.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.50 | 0.50 | 0.00 | 0.50 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 17 | 16 | 1,389 | 15.4 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 2 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 2 | 1 | 118 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 30 | 27 | 2,462 | 27.4 | 1 | 4 | 5 | 1 | 0 | 0 | 5 | 1 | 0.04 | 0.15 | 0.18 | 0.04 | 0.18 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Rel/Pro play-offs | 1 | 1 | 71 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 7 | 6 | 526 | 5.8 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.34 | 0.34 | 0.00 | 0.34 | Matches |
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 32 | 32 | 2,783 | 30.9 | 1 | 5 | 6 | 1 | 0 | 0 | 6 | 0 | 0.03 | 0.16 | 0.19 | 0.03 | 0.19 | Matches |
| 2023 | 28 | Columbus Crew | Leagues Cup | 2 | 2 | 210 | 2.3 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.43 | 0.43 | 0.86 | 0.43 | 0.86 | Matches | |
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 34 | 33 | 2,922 | 32.5 | 0 | 3 | 3 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.09 | 0.09 | 0.00 | 0.09 | Matches |
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | 1 | 1 | 90 | 1.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.00 | 1.00 | 0.00 | 1.00 | Matches |
| 2024 | 29 | Columbus Crew | 1. CCC | 7 | 7 | 660 | 7.3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2024 | 29 | Columbus Crew | Leagues Cup | 5 | 5 | 450 | 5.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 27 | 23 | 2,108 | 23.4 | 2 | 3 | 5 | 2 | 0 | 0 | 0 | 0 | 0.09 | 0.13 | 0.21 | 0.09 | 0.21 | Matches |
| 2025 | 30 | Columbus Crew | 1. CCC | 2 | 2 | 100 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2025 | 30 | Columbus Crew | Leagues Cup | 3 | 3 | 262 | 2.9 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 30 | 29 | 2,457 | 27.3 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.04 | 0.07 | 0.11 | 0.04 | 0.11 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 14 | 13 | 1,132 | 12.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | 1 | 1 | 75 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 15 Seasons | 4 Clubs | 9 Leagues | 364 | 332 | 29,314 | 325.7 | 8 | 28 | 36 | 8 | 0 | 0 | 49 | 3 | 0.02 | 0.09 | 0.11 | 0.02 | 0.11 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 165 | 157 | 13,775 | 153.1 | 5 | 17 | 22 | 5 | 0 | 0 | 16 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | ||||
| Rennes (5 Seasons) | 3 Leagues | 62 | 43 | 3,750 | 41.7 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.02 | 0.02 | 0.00 | 0.02 | ||||
| Toulouse (3 Seasons) | 5 Leagues | 67 | 62 | 5,563 | 61.8 | 1 | 5 | 6 | 1 | 0 | 0 | 11 | 3 | 0.02 | 0.08 | 0.10 | 0.02 | 0.10 | ||||
| Lorient (2 Seasons) | 4 Leagues | 70 | 70 | 6,226 | 69.2 | 2 | 5 | 7 | 2 | 0 | 0 | 17 | 0 | 0.03 | 0.07 | 0.10 | 0.03 | 0.10 | ||||
| Ligue 1 (7 Seasons) | 113 | 94 | 8,228 | 91.4 | 0 | 3 | 3 | 0 | 0 | 0 | 16 | 2 | 0.00 | 0.03 | 0.03 | 0.00 | 0.03 | |||||
| MLS (6 Seasons) | 144 | 136 | 11,928 | 132.5 | 4 | 15 | 19 | 4 | 0 | 0 | 14 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | |||||
| Coupe de France (5 Seasons) | 11 | 10 | 912 | 10.1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | |||||
| Coupe de la Ligue (5 Seasons) | 9 | 8 | 716 | 8.0 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | |||||
| Leagues Cup (3 Seasons) | 10 | 10 | 922 | 10.2 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.10 | 0.20 | 0.10 | 0.20 | |||||
| Ligue 2 (2 Seasons) | 65 | 62 | 5,612 | 62.4 | 2 | 6 | 8 | 2 | 0 | 0 | 15 | 1 | 0.03 | 0.10 | 0.13 | 0.03 | 0.13 | |||||
| CCC (2 Seasons) | 9 | 9 | 760 | 8.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| U.S. Open Cup (2 Seasons) | 2 | 2 | 165 | 1.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.55 | 0.55 | 0.00 | 0.55 | |||||
| Rel/Pro play-offs (1 Season) | 1 | 1 | 71 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2012-2013 | 17 | Rennes | 1 League | 3 | 3 | 225 | 2.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.40 | 0.40 | 0.00 | 0.40 | |
| 2013-2014 | 18 | Rennes | 1 League | 15 | 9 | 796 | 8.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2014-2015 | 19 | Rennes | 2 Leagues | 25 | 15 | 1,304 | 14.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2015-2016 | 20 | Rennes | 2 Leagues | 18 | 15 | 1,335 | 14.8 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2016-2017 | 21 | Rennes | 1 League | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2016-2017 | 21 | Lorient | 2 Leagues | 29 | 29 | 2,604 | 28.9 | 0 | 2 | 2 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | |
| 2017-2018 | 22 | Lorient | 3 Leagues | 41 | 41 | 3,622 | 40.2 | 2 | 3 | 5 | 2 | 0 | 0 | 11 | 0 | 0.05 | 0.07 | 0.12 | 0.05 | 0.12 | |
| 2018-2019 | 23 | Toulouse | 3 Leagues | 14 | 14 | 1,253 | 13.9 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2019-2020 | 24 | Toulouse | 3 Leagues | 20 | 19 | 1,659 | 18.4 | 0 | 1 | 1 | 0 | 0 | 0 | 3 | 2 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | |
| 2020-2021 | 25 | Toulouse | 3 Leagues | 33 | 29 | 2,651 | 29.5 | 1 | 4 | 5 | 1 | 0 | 0 | 6 | 1 | 0.03 | 0.14 | 0.17 | 0.03 | 0.17 | |
| 2021 | 26 | Columbus Crew | 1 League | 7 | 6 | 526 | 5.8 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.34 | 0.34 | 0.00 | 0.34 | |
| 2022 | 27 | Columbus Crew | 1 League | 32 | 32 | 2,783 | 30.9 | 1 | 5 | 6 | 1 | 0 | 0 | 6 | 0 | 0.03 | 0.16 | 0.19 | 0.03 | 0.19 | |
| 2023 | 28 | Columbus Crew | 3 Leagues | 37 | 36 | 3,222 | 35.8 | 1 | 5 | 6 | 1 | 0 | 0 | 3 | 0 | 0.03 | 0.14 | 0.17 | 0.03 | 0.17 | |
| 2024 | 29 | Columbus Crew | 3 Leagues | 39 | 35 | 3,218 | 35.8 | 2 | 3 | 5 | 2 | 0 | 0 | 1 | 0 | 0.06 | 0.08 | 0.14 | 0.06 | 0.14 | |
| 2025 | 30 | Columbus Crew | 3 Leagues | 35 | 34 | 2,819 | 31.3 | 1 | 2 | 3 | 1 | 0 | 0 | 5 | 0 | 0.03 | 0.06 | 0.10 | 0.03 | 0.10 | |
| 2026 | 31 | Columbus Crew | 2 Leagues | 15 | 14 | 1,207 | 13.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 15 Seasons | 4 Clubs | 9 Leagues | 364 | 332 | 29,314 | 325.7 | 8 | 28 | 36 | 8 | 0 | 0 | 49 | 3 | 0.02 | 0.09 | 0.11 | 0.02 | 0.11 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 165 | 157 | 13,775 | 153.1 | 5 | 17 | 22 | 5 | 0 | 0 | 16 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | |||
| Rennes (5 Seasons) | 3 Leagues | 62 | 43 | 3,750 | 41.7 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.02 | 0.02 | 0.00 | 0.02 | |||
| Toulouse (3 Seasons) | 5 Leagues | 67 | 62 | 5,563 | 61.8 | 1 | 5 | 6 | 1 | 0 | 0 | 11 | 3 | 0.02 | 0.08 | 0.10 | 0.02 | 0.10 | |||
| Lorient (2 Seasons) | 4 Leagues | 70 | 70 | 6,226 | 69.2 | 2 | 5 | 7 | 2 | 0 | 0 | 17 | 0 | 0.03 | 0.07 | 0.10 | 0.03 | 0.10 | |||
| Ligue 1 (7 Seasons) | 113 | 94 | 8,228 | 91.4 | 0 | 3 | 3 | 0 | 0 | 0 | 16 | 2 | 0.00 | 0.03 | 0.03 | 0.00 | 0.03 | ||||
| MLS (6 Seasons) | 144 | 136 | 11,928 | 132.5 | 4 | 15 | 19 | 4 | 0 | 0 | 14 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | ||||
| Coupe de France (5 Seasons) | 11 | 10 | 912 | 10.1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | ||||
| Coupe de la Ligue (5 Seasons) | 9 | 8 | 716 | 8.0 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | ||||
| Leagues Cup (3 Seasons) | 10 | 10 | 922 | 10.2 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.10 | 0.20 | 0.10 | 0.20 | ||||
| Ligue 2 (2 Seasons) | 65 | 62 | 5,612 | 62.4 | 2 | 6 | 8 | 2 | 0 | 0 | 15 | 1 | 0.03 | 0.10 | 0.13 | 0.03 | 0.13 | ||||
| CCC (2 Seasons) | 9 | 9 | 760 | 8.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| U.S. Open Cup (2 Seasons) | 2 | 2 | 165 | 1.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.55 | 0.55 | 0.00 | 0.55 | ||||
| Rel/Pro play-offs (1 Season) | 1 | 1 | 71 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 13th | 3 | 3 | 225 | 2.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.40 | 0.40 | 0.00 | 0.40 | Matches |
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 12th | 15 | 9 | 796 | 8.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 9th | 23 | 13 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 8th | 16 | 14 | 1,226 | 13.6 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 9th | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 18th | 28 | 28 | 2,514 | 27.9 | 0 | 2 | 2 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 7th | 35 | 35 | 3,150 | 35.0 | 1 | 2 | 3 | 1 | 0 | 0 | 10 | 0 | 0.03 | 0.06 | 0.09 | 0.03 | 0.09 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 16th | 10 | 10 | 863 | 9.6 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 20th | 17 | 16 | 1,389 | 15.4 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 2 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 3rd | 30 | 27 | 2,462 | 27.4 | 1 | 4 | 5 | 1 | 0 | 0 | 5 | 1 | 0.04 | 0.15 | 0.18 | 0.04 | 0.18 | Matches |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 17th | 7 | 6 | 526 | 5.8 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.34 | 0.34 | 0.00 | 0.34 | Matches |
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 15th | 32 | 32 | 2,783 | 30.9 | 1 | 5 | 6 | 1 | 0 | 0 | 6 | 0 | 0.03 | 0.16 | 0.19 | 0.03 | 0.19 | Matches |
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 3rd | 34 | 33 | 2,922 | 32.5 | 0 | 3 | 3 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.09 | 0.09 | 0.00 | 0.09 | Matches |
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 2nd | 27 | 23 | 2,108 | 23.4 | 2 | 3 | 5 | 2 | 0 | 0 | 0 | 0 | 0.09 | 0.13 | 0.21 | 0.09 | 0.21 | Matches |
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 12th | 30 | 29 | 2,457 | 27.3 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.04 | 0.07 | 0.11 | 0.04 | 0.11 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 21st | 14 | 13 | 1,132 | 12.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 15 Seasons | 4 Clubs | 3 Leagues | 322 | 292 | 25,768 | 286.3 | 6 | 24 | 30 | 6 | 0 | 0 | 45 | 3 | 0.02 | 0.08 | 0.10 | 0.02 | 0.10 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Columbus Crew (6 Seasons) | 1 League | 144 | 136 | 11,928 | 132.5 | 4 | 15 | 19 | 4 | 0 | 0 | 14 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | |||||
| Rennes (5 Seasons) | 1 League | 58 | 40 | 3,462 | 38.5 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.03 | 0.03 | 0.00 | 0.03 | |||||
| Toulouse (3 Seasons) | 2 Leagues | 57 | 53 | 4,714 | 52.4 | 1 | 4 | 5 | 1 | 0 | 0 | 10 | 3 | 0.02 | 0.08 | 0.10 | 0.02 | 0.10 | |||||
| Lorient (2 Seasons) | 2 Leagues | 63 | 63 | 5,664 | 62.9 | 1 | 4 | 5 | 1 | 0 | 0 | 16 | 0 | 0.02 | 0.06 | 0.08 | 0.02 | 0.08 | |||||
| Ligue 1 (7 Seasons) | 113 | 94 | 8,228 | 91.4 | 0 | 3 | 3 | 0 | 0 | 0 | 16 | 2 | 0.00 | 0.03 | 0.03 | 0.00 | 0.03 | ||||||
| MLS (6 Seasons) | 144 | 136 | 11,928 | 132.5 | 4 | 15 | 19 | 4 | 0 | 0 | 14 | 0 | 0.03 | 0.11 | 0.14 | 0.03 | 0.14 | ||||||
| Ligue 2 (2 Seasons) | 65 | 62 | 5,612 | 62.4 | 2 | 6 | 8 | 2 | 0 | 0 | 15 | 1 | 0.03 | 0.10 | 0.13 | 0.03 | 0.13 | ||||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 9th | 2 | 2 | 179 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 9th | 2 | 1 | 109 | 1.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 17th | 3 | 3 | 225 | 2.5 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.40 | 0.40 | 0.00 | 0.40 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 3 | 3 | 247 | 2.7 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.36 | 0.00 | 0.36 | 0.36 | 0.36 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 9th | 3 | 3 | 300 | 3.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 17th | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 33rd | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 9th | 2 | 2 | 180 | 2.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.50 | 0.50 | 0.00 | 0.50 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 5th | 2 | 1 | 118 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | R16 | 1 | 1 | 90 | 1.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.00 | 1.00 | 0.00 | 1.00 | Matches |
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | SF | 1 | 1 | 75 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 9 Seasons | 4 Clubs | 3 Leagues | 22 | 20 | 1,793 | 19.9 | 1 | 3 | 4 | 1 | 0 | 0 | 1 | 0 | 0.05 | 0.15 | 0.20 | 0.05 | 0.20 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Toulouse (3 Seasons) | 2 Leagues | 9 | 8 | 778 | 8.6 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.12 | 0.12 | 0.00 | 0.12 | |||||
| Lorient (2 Seasons) | 2 Leagues | 7 | 7 | 562 | 6.2 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.16 | 0.16 | 0.32 | 0.16 | 0.32 | |||||
| Rennes (2 Seasons) | 2 Leagues | 4 | 3 | 288 | 3.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Columbus Crew (2 Seasons) | 1 League | 2 | 2 | 165 | 1.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.55 | 0.55 | 0.00 | 0.55 | |||||
| Coupe de France (5 Seasons) | 11 | 10 | 912 | 10.1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | ||||||
| Coupe de la Ligue (5 Seasons) | 9 | 8 | 716 | 8.0 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | ||||||
| U.S. Open Cup (2 Seasons) | 2 | 2 | 165 | 1.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.55 | 0.55 | 0.00 | 0.55 | ||||||
| Playing Time | Performance | Per 90 Minutes | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2023 | 28 | Columbus Crew | Leagues Cup | R32 | 2 | 2 | 210 | 2.3 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.43 | 0.43 | 0.86 | 0.43 | 0.86 | Matches |
| 2024 | 29 | Columbus Crew | 1. CCC | 2nd | 7 | 7 | 660 | 7.3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024 | 29 | Columbus Crew | Leagues Cup | 1st | 5 | 5 | 450 | 5.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025 | 30 | Columbus Crew | 1. CCC | R16 | 2 | 2 | 100 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025 | 30 | Columbus Crew | Leagues Cup | Lg | 3 | 3 | 262 | 2.9 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 3 Seasons | 1 Club | 2 Leagues | 19 | 19 | 1,682 | 18.7 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.11 | 0.05 | 0.11 | |||
| Leagues Cup (3 Seasons) | 10 | 10 | 922 | 10.2 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.10 | 0.20 | 0.10 | 0.20 | |||||
| CCC (2 Seasons) | 9 | 9 | 760 | 8.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Playing Time | Performance | Per 90 Minutes | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2023 | 28 | cv Cape Verde | Friendlies (M) | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2023 | 28 | cv Cape Verde | Africa Cup of Nations | QF | 5 | 4 | 400 | 4.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025 | 30 | cv Cape Verde | Africa Cup of Nations qualification | 4 | 4 | 315 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2026 | 31 | cv Cape Verde | WCQ | 6 | 6 | 540 | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2026 | 31 | cv Cape Verde | Friendlies (M) | 1 | 0 | 44 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 3 Seasons | 1 Club | 4 Leagues | 17 | 15 | 1,389 | 15.4 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Friendlies (M) (2 Seasons) | 2 | 1 | 134 | 1.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| WCQ (1 Season) | 6 | 6 | 540 | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Africa Cup of Nations (1 Season) | 5 | 4 | 400 | 4.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Africa Cup of Nations qualification (1 Season) | 4 | 4 | 315 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 2.5 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 8.8 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 2.0 | 0 | 0 | 0 | Matches | |||||||
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 12.5 | 0 | 1 | 0.08 | 0.00 | 0 | 0 | Matches | ||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 1.2 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 13.6 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 27.9 | 0 | 8 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 1.0 | 0 | 1 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 2.5 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 2.7 | 1 | 0 | 0 | Matches | |||||||
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 35.0 | 1 | 0 | 4 | 0.00 | 0.11 | 0.25 | 0 | 0 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 3.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 9.6 | 0 | 7 | 1 | 14.3 | 0.73 | 0.10 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 2.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 15.4 | 0 | 6 | 0 | 0.0 | 0.39 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 27.4 | 1 | 24 | 4 | 16.7 | 0.88 | 0.15 | 0.04 | 0.25 | 0 | 0 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Rel/Pro play-offs | 0.8 | 0 | 1 | 0 | 0.0 | 1.27 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 5.8 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 30.9 | 1 | 11 | 4 | 36.4 | 0.36 | 0.13 | 0.09 | 0.25 | 0 | 0 | Matches |
| 2023 | 28 | Columbus Crew | Leagues Cup | 2.3 | 1 | 0 | 0 | Matches | ||||||||
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 32.5 | 0 | 6 | 2 | 33.3 | 0.18 | 0.06 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2024 | 29 | Columbus Crew | 1. CCC | 7.3 | 0 | 3 | 0 | 0.0 | 0.41 | 0.00 | 0.00 | 0 | 0 | Matches | ||
| 2024 | 29 | Columbus Crew | Leagues Cup | 5.0 | 0 | 0 | 0 | Matches | ||||||||
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 23.4 | 2 | 6 | 3 | 50.0 | 0.26 | 0.13 | 0.33 | 0.67 | 0 | 0 | Matches |
| 2025 | 30 | Columbus Crew | 1. CCC | 1.1 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2025 | 30 | Columbus Crew | Leagues Cup | 2.9 | 0 | 0 | 0 | Matches | ||||||||
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 27.3 | 1 | 18 | 6 | 33.3 | 0.66 | 0.22 | 0.06 | 0.17 | 0 | 0 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 12.6 | 0 | 9 | 2 | 22.2 | 0.72 | 0.16 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | 0.8 | 0 | 1 | 0 | 0.0 | 1.20 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 15 Seasons | 4 Clubs | 9 Leagues | 325.7 | 8 | 101 | 27 | 25.7 | 0.38 | 0.09 | 0.06 | 0.22 | 0 | 0 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 153.1 | 5 | 54 | 17 | 31.5 | 0.38 | 0.12 | 0.07 | 0.24 | 0 | 0 | ||||
| Rennes (5 Seasons) | 3 Leagues | 41.7 | 0 | 1 | 1 | 0.0 | 1.00 | 0.03 | 0.00 | 0.00 | 0 | 0 | ||||
| Toulouse (3 Seasons) | 5 Leagues | 61.8 | 1 | 38 | 5 | 13.2 | 0.62 | 0.08 | 0.03 | 0.20 | 0 | 0 | ||||
| Lorient (2 Seasons) | 4 Leagues | 69.2 | 2 | 8 | 4 | 50.0 | 0.13 | 0.06 | 0.13 | 0.25 | 0 | 0 | ||||
| Ligue 1 (7 Seasons) | 91.4 | 0 | 22 | 2 | 4.5 | 0.41 | 0.02 | 0.00 | 0.00 | 0 | 0 | |||||
| MLS (6 Seasons) | 132.5 | 4 | 50 | 17 | 34.0 | 0.38 | 0.13 | 0.08 | 0.24 | 0 | 0 | |||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | ||||||||||||
| Ligue 2 (2 Seasons) | 62.4 | 2 | 24 | 8 | 33.3 | 0.38 | 0.13 | 0.08 | 0.25 | 0 | 0 | |||||
| CCC (2 Seasons) | 8.4 | 0 | 3 | 0 | 0.0 | 0.36 | 0.00 | 0.00 | 0 | 0 | ||||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 1 | 0 | 0.0 | 0.55 | 0.00 | 0.00 | 0 | 0 | ||||||
| Rel/Pro play-offs (1 Season) | 0.8 | 0 | 1 | 0 | 0.0 | 1.27 | 0.00 | 0.00 | 0 | 0 | ||||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 17 | Rennes | 1 League | 2.5 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 18 | Rennes | 1 League | 8.8 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2014-2015 | 19 | Rennes | 2 Leagues | 14.5 | 0 | 1 | 0.08 | 0.00 | 0 | 0 | |||||
| 2015-2016 | 20 | Rennes | 2 Leagues | 14.8 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2016-2017 | 21 | Rennes | 1 League | 1.0 | 0 | 1 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | ||
| 2016-2017 | 21 | Lorient | 2 Leagues | 28.9 | 0 | 8 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | ||
| 2017-2018 | 22 | Lorient | 3 Leagues | 40.2 | 2 | 0 | 4 | 0.00 | 0.11 | 0.25 | 0 | 0 | |||
| 2018-2019 | 23 | Toulouse | 3 Leagues | 13.9 | 0 | 7 | 1 | 14.3 | 0.54 | 0.08 | 0.00 | 0.00 | 0 | 0 | |
| 2019-2020 | 24 | Toulouse | 3 Leagues | 18.4 | 0 | 6 | 0 | 0.0 | 0.33 | 0.00 | 0.00 | 0 | 0 | ||
| 2020-2021 | 25 | Toulouse | 3 Leagues | 29.5 | 1 | 25 | 4 | 16.0 | 0.85 | 0.14 | 0.04 | 0.25 | 0 | 0 | |
| 2021 | 26 | Columbus Crew | 1 League | 5.8 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||
| 2022 | 27 | Columbus Crew | 1 League | 30.9 | 1 | 11 | 4 | 36.4 | 0.36 | 0.13 | 0.09 | 0.25 | 0 | 0 | |
| 2023 | 28 | Columbus Crew | 3 Leagues | 35.8 | 1 | 6 | 2 | 33.3 | 0.18 | 0.06 | 0.00 | 0.00 | 0 | 0 | |
| 2024 | 29 | Columbus Crew | 3 Leagues | 35.8 | 2 | 9 | 3 | 33.3 | 0.29 | 0.10 | 0.22 | 0.67 | 0 | 0 | |
| 2025 | 30 | Columbus Crew | 3 Leagues | 31.3 | 1 | 18 | 6 | 33.3 | 0.63 | 0.21 | 0.06 | 0.17 | 0 | 0 | |
| 2026 | 31 | Columbus Crew | 2 Leagues | 13.4 | 0 | 10 | 2 | 20.0 | 0.75 | 0.15 | 0.00 | 0.00 | 0 | 0 | |
| 15 Seasons | 4 Clubs | 9 Leagues | 325.7 | 8 | 101 | 27 | 25.7 | 0.38 | 0.09 | 0.06 | 0.22 | 0 | 0 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 153.1 | 5 | 54 | 17 | 31.5 | 0.38 | 0.12 | 0.07 | 0.24 | 0 | 0 | |||
| Rennes (5 Seasons) | 3 Leagues | 41.7 | 0 | 1 | 1 | 0.0 | 1.00 | 0.03 | 0.00 | 0.00 | 0 | 0 | |||
| Toulouse (3 Seasons) | 5 Leagues | 61.8 | 1 | 38 | 5 | 13.2 | 0.62 | 0.08 | 0.03 | 0.20 | 0 | 0 | |||
| Lorient (2 Seasons) | 4 Leagues | 69.2 | 2 | 8 | 4 | 50.0 | 0.13 | 0.06 | 0.13 | 0.25 | 0 | 0 | |||
| Ligue 1 (7 Seasons) | 91.4 | 0 | 22 | 2 | 4.5 | 0.41 | 0.02 | 0.00 | 0.00 | 0 | 0 | ||||
| MLS (6 Seasons) | 132.5 | 4 | 50 | 17 | 34.0 | 0.38 | 0.13 | 0.08 | 0.24 | 0 | 0 | ||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | |||||||||||
| Ligue 2 (2 Seasons) | 62.4 | 2 | 24 | 8 | 33.3 | 0.38 | 0.13 | 0.08 | 0.25 | 0 | 0 | ||||
| CCC (2 Seasons) | 8.4 | 0 | 3 | 0 | 0.0 | 0.36 | 0.00 | 0.00 | 0 | 0 | |||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 1 | 0 | 0.0 | 0.55 | 0.00 | 0.00 | 0 | 0 | |||||
| Rel/Pro play-offs (1 Season) | 0.8 | 0 | 1 | 0 | 0.0 | 1.27 | 0.00 | 0.00 | 0 | 0 | |||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 13th | 2.5 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 12th | 8.8 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 9th | 12.5 | 0 | 1 | 0.08 | 0.00 | 0 | 0 | Matches | ||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 8th | 13.6 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 9th | 1.0 | 0 | 1 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 18th | 27.9 | 0 | 8 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 7th | 35.0 | 1 | 0 | 4 | 0.00 | 0.11 | 0.25 | 0 | 0 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 16th | 9.6 | 0 | 7 | 1 | 14.3 | 0.73 | 0.10 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 20th | 15.4 | 0 | 6 | 0 | 0.0 | 0.39 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 3rd | 27.4 | 1 | 24 | 4 | 16.7 | 0.88 | 0.15 | 0.04 | 0.25 | 0 | 0 | Matches |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 17th | 5.8 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 15th | 30.9 | 1 | 11 | 4 | 36.4 | 0.36 | 0.13 | 0.09 | 0.25 | 0 | 0 | Matches |
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 3rd | 32.5 | 0 | 6 | 2 | 33.3 | 0.18 | 0.06 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 2nd | 23.4 | 2 | 6 | 3 | 50.0 | 0.26 | 0.13 | 0.33 | 0.67 | 0 | 0 | Matches |
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 12th | 27.3 | 1 | 18 | 6 | 33.3 | 0.66 | 0.22 | 0.06 | 0.17 | 0 | 0 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 21st | 12.6 | 0 | 9 | 2 | 22.2 | 0.72 | 0.16 | 0.00 | 0.00 | 0 | 0 | Matches |
| 15 Seasons | 4 Clubs | 3 Leagues | 286.3 | 6 | 96 | 27 | 27.1 | 0.39 | 0.09 | 0.06 | 0.22 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Columbus Crew (6 Seasons) | 1 League | 132.5 | 4 | 50 | 17 | 34.0 | 0.38 | 0.13 | 0.08 | 0.24 | 0 | 0 | |||||
| Rennes (5 Seasons) | 1 League | 38.5 | 0 | 1 | 1 | 0.0 | 1.00 | 0.03 | 0.00 | 0.00 | 0 | 0 | |||||
| Toulouse (3 Seasons) | 2 Leagues | 52.4 | 1 | 37 | 5 | 13.5 | 0.71 | 0.10 | 0.03 | 0.20 | 0 | 0 | |||||
| Lorient (2 Seasons) | 2 Leagues | 62.9 | 1 | 8 | 4 | 50.0 | 0.13 | 0.06 | 0.13 | 0.25 | 0 | 0 | |||||
| Ligue 1 (7 Seasons) | 91.4 | 0 | 22 | 2 | 4.5 | 0.41 | 0.02 | 0.00 | 0.00 | 0 | 0 | ||||||
| MLS (6 Seasons) | 132.5 | 4 | 50 | 17 | 34.0 | 0.38 | 0.13 | 0.08 | 0.24 | 0 | 0 | ||||||
| Ligue 2 (2 Seasons) | 62.4 | 2 | 24 | 8 | 33.3 | 0.38 | 0.13 | 0.08 | 0.25 | 0 | 0 | ||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 9th | 2.0 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 9th | 1.2 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 17th | 2.5 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 2.7 | 1 | 0 | 0 | Matches | |||||||
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 9th | 3.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 17th | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 33rd | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 9th | 2.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 5th | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | R16 | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | SF | 0.8 | 0 | 1 | 0 | 0.0 | 1.20 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 9 Seasons | 4 Clubs | 3 Leagues | 19.9 | 1 | 1 | 0 | 0.0 | 0.11 | 0.00 | 0.00 | 0 | 0 | |||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Toulouse (3 Seasons) | 2 Leagues | 8.6 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Lorient (2 Seasons) | 2 Leagues | 6.2 | 1 | 0 | 0 | ||||||||||||
| Rennes (2 Seasons) | 2 Leagues | 3.2 | 0 | 0 | 0 | ||||||||||||
| Columbus Crew (2 Seasons) | 1 League | 1.8 | 0 | 1 | 0 | 0.0 | 0.55 | 0.00 | 0.00 | 0 | 0 | ||||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 1 | 0 | 0.0 | 0.55 | 0.00 | 0.00 | 0 | 0 | |||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2023 | 28 | Columbus Crew | Leagues Cup | R32 | 2.3 | 1 | 0 | 0 | Matches | |||||||
| 2024 | 29 | Columbus Crew | 1. CCC | 2nd | 7.3 | 0 | 3 | 0 | 0.0 | 0.41 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024 | 29 | Columbus Crew | Leagues Cup | 1st | 5.0 | 0 | 0 | 0 | Matches | |||||||
| 2025 | 30 | Columbus Crew | 1. CCC | R16 | 1.1 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2025 | 30 | Columbus Crew | Leagues Cup | Lg | 2.9 | 0 | 0 | 0 | Matches | |||||||
| 3 Seasons | 1 Club | 2 Leagues | 18.7 | 1 | 3 | 0 | 0.0 | 0.36 | 0.00 | 0.00 | 0 | 0 | ||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | ||||||||||||
| CCC (2 Seasons) | 8.4 | 0 | 3 | 0 | 0.0 | 0.36 | 0.00 | 0.00 | 0 | 0 | ||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2023 | 28 | cv Cape Verde | Friendlies (M) | 1.0 | 0 | 0 | 0 | Matches | ||||||||
| 2023 | 28 | cv Cape Verde | Africa Cup of Nations | QF | 4.4 | 0 | 1 | 0 | 0.0 | 0.23 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2025 | 30 | cv Cape Verde | Africa Cup of Nations qualification | 3.5 | 0 | 0 | 0 | Matches | ||||||||
| 2026 | 31 | cv Cape Verde | WCQ | 6.0 | 0 | 0 | 0 | Matches | ||||||||
| 2026 | 31 | cv Cape Verde | Friendlies (M) | 0.5 | 0 | 0 | 0 | Matches | ||||||||
| 3 Seasons | 1 Club | 4 Leagues | 15.4 | 0 | 1 | 0 | 0.0 | 0.23 | 0.00 | 0.00 | 0 | 0 | ||||
| Friendlies (M) (2 Seasons) | 1.5 | 0 | 0 | 0 | ||||||||||||
| WCQ (1 Season) | 6.0 | 0 | 0 | 0 | ||||||||||||
| Africa Cup of Nations (1 Season) | 4.4 | 0 | 1 | 0 | 0.0 | 0.23 | 0.00 | 0.00 | 0 | 0 | ||||||
| Africa Cup of Nations qualification (1 Season) | 3.5 | 0 | 0 | 0 | ||||||||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 3 | 225 | 75 | 6.6 | 2.5 | 3 | 2 | 0 | Matches | |||||||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 15 | 796 | 53 | 23.3 | 8.8 | 9 | 7 | 6 | Matches | |||||||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 2 | 179 | 90 | 85.2 | 2.0 | 2 | 90 | 1 | 0 | 0 | 1.50 | 2 | 3 | -1 | -0.50 | -0.50 | Matches | |
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 23 | 1,125 | 49 | 32.9 | 12.5 | 13 | 7 | 10 | 13 | 1.39 | 8 | 9 | -1 | -0.08 | +0.16 | Matches | ||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 2 | 109 | 55 | 60.6 | 1.2 | 1 | 91 | 1 | 1 | 18 | 0 | 1.50 | 1 | 3 | -2 | -1.65 | -2.92 | Matches |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 16 | 1,226 | 77 | 35.8 | 13.6 | 14 | 12 | 2 | 11 | 1.50 | 17 | 18 | -1 | -0.07 | -0.03 | Matches | ||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 2 | 3 | -1 | -1.00 | Matches | ||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 28 | 2,514 | 90 | 73.5 | 27.9 | 28 | 27 | 0 | 5 | 1.04 | 37 | 49 | -12 | -0.43 | +0.96 | Matches | ||
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 1 | 90 | 90 | 2.6 | 1.0 | 1 | 1 | 0 | 1 | 0.00 | 0 | 1 | -1 | -1.00 | -0.86 | Matches | ||
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 3 | 225 | 75 | 62.5 | 2.5 | 3 | 75 | 2 | 0 | 0 | 2.00 | 9 | 4 | +5 | +2.00 | -1.33 | Matches | |
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 3 | 247 | 82 | 82.3 | 2.7 | 3 | 82 | 2 | 0 | 0 | 2.00 | 4 | 3 | +1 | +0.36 | +2.06 | Matches | |
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 35 | 3,150 | 90 | 92.1 | 35.0 | 35 | 35 | 0 | 0 | 1.69 | 54 | 42 | +12 | +0.34 | -0.66 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 3 | 300 | 100 | 100.0 | 3.3 | 3 | 100 | 3 | 0 | 0 | 2.00 | 8 | 7 | +1 | +0.30 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 10 | 863 | 86 | 25.2 | 9.6 | 10 | 86 | 8 | 0 | 14 | 0.40 | 6 | 16 | -10 | -1.04 | -0.62 | Matches | |
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 3 | 5 | -2 | -1.00 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 17 | 1,389 | 82 | 55.1 | 15.4 | 16 | 86 | 14 | 1 | 12 | 4 | 0.59 | 11 | 26 | -15 | -0.97 | +0.70 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 2 | 118 | 59 | 26.2 | 1.3 | 1 | 73 | 0 | 1 | 45 | 0 | 1.50 | 1 | 1 | 0 | 0.00 | -1.08 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 30 | 2,462 | 82 | 72.0 | 27.4 | 27 | 88 | 23 | 3 | 28 | 0 | 2.03 | 54 | 24 | +30 | +1.10 | +1.19 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | Rel/Pro play-offs | 1 | 71 | 71 | 39.4 | 0.8 | 1 | 71 | 0 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.27 | -2.09 | Matches | |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 7 | 526 | 75 | 17.2 | 5.8 | 6 | 85 | 3 | 1 | 18 | 1 | 1.86 | 12 | 7 | +5 | +0.86 | +1.00 | Matches |
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 32 | 2,783 | 87 | 90.9 | 30.9 | 32 | 87 | 29 | 0 | 0 | 1.38 | 41 | 38 | +3 | +0.10 | -0.55 | Matches | |
| 2023 | 28 | Columbus Crew | Leagues Cup | 2 | 210 | 105 | 70.0 | 2.3 | 2 | 105 | 2 | 0 | 1 | 2.00 | 7 | 4 | +3 | +1.29 | +0.29 | Matches | ||
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 34 | 2,922 | 86 | 95.5 | 32.5 | 33 | 88 | 29 | 1 | 10 | 0 | 1.80 | 64 | 44 | +20 | +0.62 | -0.04 | Matches |
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | 1 | 90 | 90 | 33.3 | 1.0 | 1 | 90 | 1 | 0 | 0 | 3.00 | 1 | 0 | +1 | +1.00 | -0.50 | Matches | |
| 2024 | 29 | Columbus Crew | 1. CCC | 7 | 660 | 94 | 100.0 | 7.3 | 7 | 94 | 7 | 0 | 0 | 1.71 | 9 | 8 | +1 | +0.14 | Matches | |||
| 2024 | 29 | Columbus Crew | Leagues Cup | 5 | 450 | 90 | 100.0 | 5.0 | 5 | 90 | 5 | 0 | 0 | 2.60 | 14 | 5 | +9 | +1.80 | Matches | |||
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 27 | 2,108 | 78 | 68.9 | 23.4 | 23 | 89 | 21 | 4 | 17 | 3 | 1.76 | 54 | 31 | +23 | +0.98 | +0.13 | Matches |
| 2025 | 30 | Columbus Crew | 1. CCC | 2 | 100 | 50 | 55.6 | 1.1 | 2 | 50 | 0 | 0 | 0 | 1.50 | 2 | 1 | +1 | +0.90 | +4.28 | Matches | ||
| 2025 | 30 | Columbus Crew | Leagues Cup | 3 | 262 | 87 | 97.0 | 2.9 | 3 | 87 | 2 | 0 | 0 | 2.33 | 6 | 3 | +3 | +1.03 | +1.03 | Matches | ||
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 30 | 2,457 | 82 | 80.3 | 27.3 | 29 | 84 | 18 | 1 | 25 | 2 | 1.55 | 48 | 44 | +4 | +0.15 | +0.15 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 14 | 1,132 | 81 | 83.9 | 12.6 | 13 | 85 | 8 | 1 | 28 | 0 | 1.14 | 16 | 20 | -4 | -0.32 | -1.14 | Matches |
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | 1 | 75 | 75 | 27.8 | 0.8 | 1 | 75 | 0 | 0 | 1 | 3.00 | 1 | 0 | +1 | +1.20 | -1.57 | Matches | |
| 15 Seasons | 4 Clubs | 9 Leagues | 364 | 29,314 | 81 | 53.5 | 325.7 | 332 | 87 | 275 | 32 | 22 | 56 | 1.51 | 493 | 423 | +70 | +0.22 | +0.36 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 165 | 13,775 | 83 | 72.3 | 153.1 | 157 | 87 | 125 | 8 | 19 | 8 | 1.66 | 275 | 205 | +70 | +0.46 | +0.17 | ||||
| Rennes (5 Seasons) | 3 Leagues | 62 | 3,750 | 60 | 21.4 | 41.7 | 43 | 90 | 31 | 19 | 18 | 25 | 1.41 | 28 | 34 | -6 | -0.20 | -0.07 | ||||
| Toulouse (3 Seasons) | 5 Leagues | 67 | 5,563 | 83 | 52.2 | 61.8 | 62 | 87 | 52 | 5 | 28 | 18 | 1.30 | 84 | 83 | +1 | +0.02 | +0.53 | ||||
| Lorient (2 Seasons) | 4 Leagues | 70 | 6,226 | 89 | 82.0 | 69.2 | 70 | 80 | 67 | 0 | 5 | 1.43 | 106 | 101 | +5 | +0.07 | +0.53 | |||||
| Ligue 1 (7 Seasons) | 113 | 8,228 | 73 | 31.1 | 91.4 | 94 | 86 | 78 | 19 | 12 | 48 | 1.04 | 79 | 119 | -40 | -0.50 | -0.07 | |||||
| MLS (6 Seasons) | 144 | 11,928 | 83 | 71.6 | 132.5 | 136 | 87 | 108 | 8 | 19 | 6 | 1.59 | 235 | 184 | +51 | +0.38 | +0.19 | |||||
| Coupe de France (5 Seasons) | 11 | 912 | 83 | 64.7 | 10.1 | 10 | 87 | 7 | 1 | 45 | 0 | 1.64 | 20 | 16 | +4 | +0.39 | -1.23 | |||||
| Coupe de la Ligue (5 Seasons) | 9 | 716 | 80 | 85.2 | 8.0 | 8 | 87 | 7 | 1 | 18 | 0 | 1.33 | 10 | 15 | -5 | -0.63 | -0.63 | |||||
| Leagues Cup (3 Seasons) | 10 | 922 | 92 | 90.4 | 10.2 | 10 | 92 | 9 | 0 | 1 | 2.40 | 27 | 12 | +15 | +1.46 | +0.55 | ||||||
| Ligue 2 (2 Seasons) | 65 | 5,612 | 86 | 82.0 | 62.4 | 62 | 88 | 58 | 3 | 28 | 0 | 1.85 | 108 | 66 | +42 | +0.67 | +0.53 | |||||
| CCC (2 Seasons) | 9 | 760 | 84 | 90.5 | 8.4 | 9 | 84 | 7 | 0 | 0 | 1.66 | 11 | 9 | +2 | +0.24 | +3.61 | ||||||
| U.S. Open Cup (2 Seasons) | 2 | 165 | 83 | 30.6 | 1.8 | 2 | 83 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +1.09 | -1.07 | ||||||
| Rel/Pro play-offs (1 Season) | 1 | 71 | 71 | 39.4 | 0.8 | 1 | 71 | 0 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.27 | -2.09 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 17 | Rennes | 1 League | 3 | 225 | 75 | 6.6 | 2.5 | 3 | 2 | 0 | ||||||||||
| 2013-2014 | 18 | Rennes | 1 League | 15 | 796 | 53 | 23.3 | 8.8 | 9 | 7 | 6 | ||||||||||
| 2014-2015 | 19 | Rennes | 2 Leagues | 25 | 1,304 | 52 | 35.9 | 14.5 | 15 | 90 | 8 | 10 | 13 | 1.40 | 10 | 12 | -2 | -0.14 | +0.09 | ||
| 2015-2016 | 20 | Rennes | 2 Leagues | 18 | 1,335 | 74 | 37.1 | 14.8 | 15 | 91 | 13 | 3 | 18 | 11 | 1.50 | 18 | 21 | -3 | -0.20 | -0.20 | |
| 2016-2017 | 21 | Rennes | 1 League | 1 | 90 | 90 | 2.6 | 1.0 | 1 | 1 | 0 | 1 | 0.00 | 0 | 1 | -1 | -1.00 | -0.86 | |||
| 2016-2017 | 21 | Lorient | 2 Leagues | 29 | 2,604 | 90 | 74.2 | 28.9 | 29 | 90 | 28 | 0 | 5 | 1.00 | 39 | 52 | -13 | -0.45 | +0.94 | ||
| 2017-2018 | 22 | Lorient | 3 Leagues | 41 | 3,622 | 88 | 88.8 | 40.2 | 41 | 79 | 39 | 0 | 0 | 1.74 | 67 | 49 | +18 | +0.45 | -0.93 | ||
| 2018-2019 | 23 | Toulouse | 3 Leagues | 14 | 1,253 | 90 | 32.9 | 13.9 | 14 | 90 | 12 | 0 | 14 | 0.71 | 14 | 24 | -10 | -0.72 | -0.30 | ||
| 2019-2020 | 24 | Toulouse | 3 Leagues | 20 | 1,659 | 83 | 59.5 | 18.4 | 19 | 87 | 17 | 1 | 12 | 4 | 0.65 | 14 | 32 | -18 | -0.98 | +0.69 | |
| 2020-2021 | 25 | Toulouse | 3 Leagues | 33 | 2,651 | 80 | 65.5 | 29.5 | 29 | 87 | 23 | 4 | 32 | 0 | 1.94 | 56 | 27 | +29 | +0.98 | +0.73 | |
| 2021 | 26 | Columbus Crew | 1 League | 7 | 526 | 75 | 17.2 | 5.8 | 6 | 85 | 3 | 1 | 18 | 1 | 1.86 | 12 | 7 | +5 | +0.86 | +1.00 | |
| 2022 | 27 | Columbus Crew | 1 League | 32 | 2,783 | 87 | 90.9 | 30.9 | 32 | 87 | 29 | 0 | 0 | 1.38 | 41 | 38 | +3 | +0.10 | -0.55 | ||
| 2023 | 28 | Columbus Crew | 3 Leagues | 37 | 3,222 | 87 | 88.8 | 35.8 | 36 | 89 | 32 | 1 | 10 | 1 | 1.84 | 72 | 48 | +24 | +0.67 | -0.43 | |
| 2024 | 29 | Columbus Crew | 3 Leagues | 39 | 3,218 | 83 | 77.2 | 35.8 | 35 | 90 | 33 | 4 | 17 | 3 | 1.86 | 77 | 44 | +33 | +0.92 | +0.07 | |
| 2025 | 30 | Columbus Crew | 3 Leagues | 35 | 2,819 | 81 | 80.3 | 31.3 | 34 | 82 | 20 | 1 | 25 | 2 | 1.61 | 56 | 48 | +8 | +0.26 | +0.65 | |
| 2026 | 31 | Columbus Crew | 2 Leagues | 15 | 1,207 | 80 | 74.5 | 13.4 | 14 | 84 | 8 | 1 | 28 | 1 | 1.26 | 17 | 20 | -3 | -0.22 | -1.97 | |
| 15 Seasons | 4 Clubs | 9 Leagues | 364 | 29,314 | 81 | 53.5 | 325.7 | 332 | 87 | 275 | 32 | 22 | 56 | 1.51 | 493 | 423 | +70 | +0.22 | +0.36 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Columbus Crew (6 Seasons) | 4 Leagues | 165 | 13,775 | 83 | 72.3 | 153.1 | 157 | 87 | 125 | 8 | 19 | 8 | 1.66 | 275 | 205 | +70 | +0.46 | +0.17 | |||
| Rennes (5 Seasons) | 3 Leagues | 62 | 3,750 | 60 | 21.4 | 41.7 | 43 | 90 | 31 | 19 | 18 | 25 | 1.41 | 28 | 34 | -6 | -0.20 | -0.07 | |||
| Toulouse (3 Seasons) | 5 Leagues | 67 | 5,563 | 83 | 52.2 | 61.8 | 62 | 87 | 52 | 5 | 28 | 18 | 1.30 | 84 | 83 | +1 | +0.02 | +0.53 | |||
| Lorient (2 Seasons) | 4 Leagues | 70 | 6,226 | 89 | 82.0 | 69.2 | 70 | 80 | 67 | 0 | 5 | 1.43 | 106 | 101 | +5 | +0.07 | +0.53 | ||||
| Ligue 1 (7 Seasons) | 113 | 8,228 | 73 | 31.1 | 91.4 | 94 | 86 | 78 | 19 | 12 | 48 | 1.04 | 79 | 119 | -40 | -0.50 | -0.07 | ||||
| MLS (6 Seasons) | 144 | 11,928 | 83 | 71.6 | 132.5 | 136 | 87 | 108 | 8 | 19 | 6 | 1.59 | 235 | 184 | +51 | +0.38 | +0.19 | ||||
| Coupe de France (5 Seasons) | 11 | 912 | 83 | 64.7 | 10.1 | 10 | 87 | 7 | 1 | 45 | 0 | 1.64 | 20 | 16 | +4 | +0.39 | -1.23 | ||||
| Coupe de la Ligue (5 Seasons) | 9 | 716 | 80 | 85.2 | 8.0 | 8 | 87 | 7 | 1 | 18 | 0 | 1.33 | 10 | 15 | -5 | -0.63 | -0.63 | ||||
| Leagues Cup (3 Seasons) | 10 | 922 | 92 | 90.4 | 10.2 | 10 | 92 | 9 | 0 | 1 | 2.40 | 27 | 12 | +15 | +1.46 | +0.55 | |||||
| Ligue 2 (2 Seasons) | 65 | 5,612 | 86 | 82.0 | 62.4 | 62 | 88 | 58 | 3 | 28 | 0 | 1.85 | 108 | 66 | +42 | +0.67 | +0.53 | ||||
| CCC (2 Seasons) | 9 | 760 | 84 | 90.5 | 8.4 | 9 | 84 | 7 | 0 | 0 | 1.66 | 11 | 9 | +2 | +0.24 | +3.61 | |||||
| U.S. Open Cup (2 Seasons) | 2 | 165 | 83 | 30.6 | 1.8 | 2 | 83 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +1.09 | -1.07 | |||||
| Rel/Pro play-offs (1 Season) | 1 | 71 | 71 | 39.4 | 0.8 | 1 | 71 | 0 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.27 | -2.09 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 13th | 3 | 225 | 75 | 6.6 | 2.5 | 3 | 2 | 0 | Matches | |||||||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 12th | 15 | 796 | 53 | 23.3 | 8.8 | 9 | 7 | 6 | Matches | |||||||||
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 9th | 23 | 1,125 | 49 | 32.9 | 12.5 | 13 | 7 | 10 | 13 | 1.39 | 8 | 9 | -1 | -0.08 | +0.16 | Matches | ||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 8th | 16 | 1,226 | 77 | 35.8 | 13.6 | 14 | 12 | 2 | 11 | 1.50 | 17 | 18 | -1 | -0.07 | -0.03 | Matches | ||
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 9th | 1 | 90 | 90 | 2.6 | 1.0 | 1 | 1 | 0 | 1 | 0.00 | 0 | 1 | -1 | -1.00 | -0.86 | Matches | ||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 18th | 28 | 2,514 | 90 | 73.5 | 27.9 | 28 | 27 | 0 | 5 | 1.04 | 37 | 49 | -12 | -0.43 | +0.96 | Matches | ||
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 7th | 35 | 3,150 | 90 | 92.1 | 35.0 | 35 | 35 | 0 | 0 | 1.69 | 54 | 42 | +12 | +0.34 | -0.66 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 16th | 10 | 863 | 86 | 25.2 | 9.6 | 10 | 86 | 8 | 0 | 14 | 0.40 | 6 | 16 | -10 | -1.04 | -0.62 | Matches | |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 20th | 17 | 1,389 | 82 | 55.1 | 15.4 | 16 | 86 | 14 | 1 | 12 | 4 | 0.59 | 11 | 26 | -15 | -0.97 | +0.70 | Matches |
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 3rd | 30 | 2,462 | 82 | 72.0 | 27.4 | 27 | 88 | 23 | 3 | 28 | 0 | 2.03 | 54 | 24 | +30 | +1.10 | +1.19 | Matches |
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 17th | 7 | 526 | 75 | 17.2 | 5.8 | 6 | 85 | 3 | 1 | 18 | 1 | 1.86 | 12 | 7 | +5 | +0.86 | +1.00 | Matches |
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 15th | 32 | 2,783 | 87 | 90.9 | 30.9 | 32 | 87 | 29 | 0 | 0 | 1.38 | 41 | 38 | +3 | +0.10 | -0.55 | Matches | |
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 3rd | 34 | 2,922 | 86 | 95.5 | 32.5 | 33 | 88 | 29 | 1 | 10 | 0 | 1.80 | 64 | 44 | +20 | +0.62 | -0.04 | Matches |
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 2nd | 27 | 2,108 | 78 | 68.9 | 23.4 | 23 | 89 | 21 | 4 | 17 | 3 | 1.76 | 54 | 31 | +23 | +0.98 | +0.13 | Matches |
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 12th | 30 | 2,457 | 82 | 80.3 | 27.3 | 29 | 84 | 18 | 1 | 25 | 2 | 1.55 | 48 | 44 | +4 | +0.15 | +0.15 | Matches |
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 21st | 14 | 1,132 | 81 | 83.9 | 12.6 | 13 | 85 | 8 | 1 | 28 | 0 | 1.14 | 16 | 20 | -4 | -0.32 | -1.14 | Matches |
| 15 Seasons | 4 Clubs | 3 Leagues | 322 | 25,768 | 80 | 51.6 | 286.3 | 292 | 87 | 244 | 30 | 20 | 54 | 1.47 | 422 | 369 | +53 | +0.19 | +0.42 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Columbus Crew (6 Seasons) | 1 League | 144 | 11,928 | 83 | 71.6 | 132.5 | 136 | 87 | 108 | 8 | 19 | 6 | 1.59 | 235 | 184 | +51 | +0.38 | +0.19 | |||||
| Rennes (5 Seasons) | 1 League | 58 | 3,462 | 60 | 20.2 | 38.5 | 40 | 29 | 18 | 25 | 1.40 | 25 | 28 | -3 | -0.11 | +0.03 | |||||||
| Toulouse (3 Seasons) | 2 Leagues | 57 | 4,714 | 83 | 50.4 | 52.4 | 53 | 87 | 45 | 4 | 24 | 18 | 1.31 | 71 | 66 | +5 | +0.10 | +0.75 | |||||
| Lorient (2 Seasons) | 2 Leagues | 63 | 5,664 | 90 | 82.8 | 62.9 | 63 | 62 | 0 | 5 | 1.40 | 91 | 91 | 0 | 0.00 | +0.84 | |||||||
| Ligue 1 (7 Seasons) | 113 | 8,228 | 73 | 31.1 | 91.4 | 94 | 86 | 78 | 19 | 12 | 48 | 1.04 | 79 | 119 | -40 | -0.50 | -0.07 | ||||||
| MLS (6 Seasons) | 144 | 11,928 | 83 | 71.6 | 132.5 | 136 | 87 | 108 | 8 | 19 | 6 | 1.59 | 235 | 184 | +51 | +0.38 | +0.19 | ||||||
| Ligue 2 (2 Seasons) | 65 | 5,612 | 86 | 82.0 | 62.4 | 62 | 88 | 58 | 3 | 28 | 0 | 1.85 | 108 | 66 | +42 | +0.67 | +0.53 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 9th | 2 | 179 | 90 | 85.2 | 2.0 | 2 | 90 | 1 | 0 | 0 | 1.50 | 2 | 3 | -1 | -0.50 | -0.50 | Matches | |
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 9th | 2 | 109 | 55 | 60.6 | 1.2 | 1 | 91 | 1 | 1 | 18 | 0 | 1.50 | 1 | 3 | -2 | -1.65 | -2.92 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 2 | 3 | -1 | -1.00 | Matches | ||
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 17th | 3 | 225 | 75 | 62.5 | 2.5 | 3 | 75 | 2 | 0 | 0 | 2.00 | 9 | 4 | +5 | +2.00 | -1.33 | Matches | |
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 3 | 247 | 82 | 82.3 | 2.7 | 3 | 82 | 2 | 0 | 0 | 2.00 | 4 | 3 | +1 | +0.36 | +2.06 | Matches | |
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 9th | 3 | 300 | 100 | 100.0 | 3.3 | 3 | 100 | 3 | 0 | 0 | 2.00 | 8 | 7 | +1 | +0.30 | Matches | ||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 17th | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 33rd | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 9th | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 3 | 5 | -2 | -1.00 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 5th | 2 | 118 | 59 | 26.2 | 1.3 | 1 | 73 | 0 | 1 | 45 | 0 | 1.50 | 1 | 1 | 0 | 0.00 | -1.08 | Matches |
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | R16 | 1 | 90 | 90 | 33.3 | 1.0 | 1 | 90 | 1 | 0 | 0 | 3.00 | 1 | 0 | +1 | +1.00 | -0.50 | Matches | |
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | SF | 1 | 75 | 75 | 27.8 | 0.8 | 1 | 75 | 0 | 0 | 1 | 3.00 | 1 | 0 | +1 | +1.20 | -1.57 | Matches | |
| 9 Seasons | 4 Clubs | 3 Leagues | 22 | 1,793 | 82 | 64.3 | 19.9 | 20 | 87 | 15 | 2 | 32 | 1 | 1.64 | 32 | 31 | +1 | +0.05 | -1.57 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Toulouse (3 Seasons) | 2 Leagues | 9 | 778 | 86 | 70.1 | 8.6 | 8 | 92 | 7 | 1 | 45 | 0 | 1.33 | 12 | 15 | -3 | -0.35 | -1.43 | |||||
| Lorient (2 Seasons) | 2 Leagues | 7 | 562 | 80 | 74.9 | 6.2 | 7 | 80 | 5 | 0 | 0 | 1.71 | 15 | 10 | +5 | +0.80 | -1.11 | ||||||
| Rennes (2 Seasons) | 2 Leagues | 4 | 288 | 72 | 73.8 | 3.2 | 3 | 90 | 2 | 1 | 18 | 0 | 1.50 | 3 | 6 | -3 | -0.94 | -1.82 | |||||
| Columbus Crew (2 Seasons) | 1 League | 2 | 165 | 83 | 30.6 | 1.8 | 2 | 83 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +1.09 | -1.07 | ||||||
| Coupe de France (5 Seasons) | 11 | 912 | 83 | 64.7 | 10.1 | 10 | 87 | 7 | 1 | 45 | 0 | 1.64 | 20 | 16 | +4 | +0.39 | -1.23 | ||||||
| Coupe de la Ligue (5 Seasons) | 9 | 716 | 80 | 85.2 | 8.0 | 8 | 87 | 7 | 1 | 18 | 0 | 1.33 | 10 | 15 | -5 | -0.63 | -0.63 | ||||||
| U.S. Open Cup (2 Seasons) | 2 | 165 | 83 | 30.6 | 1.8 | 2 | 83 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +1.09 | -1.07 | |||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2023 | 28 | Columbus Crew | Leagues Cup | R32 | 2 | 210 | 105 | 70.0 | 2.3 | 2 | 105 | 2 | 0 | 1 | 2.00 | 7 | 4 | +3 | +1.29 | +0.29 | Matches | |
| 2024 | 29 | Columbus Crew | 1. CCC | 2nd | 7 | 660 | 94 | 100.0 | 7.3 | 7 | 94 | 7 | 0 | 0 | 1.71 | 9 | 8 | +1 | +0.14 | Matches | ||
| 2024 | 29 | Columbus Crew | Leagues Cup | 1st | 5 | 450 | 90 | 100.0 | 5.0 | 5 | 90 | 5 | 0 | 0 | 2.60 | 14 | 5 | +9 | +1.80 | Matches | ||
| 2025 | 30 | Columbus Crew | 1. CCC | R16 | 2 | 100 | 50 | 55.6 | 1.1 | 2 | 50 | 0 | 0 | 0 | 1.50 | 2 | 1 | +1 | +0.90 | +4.28 | Matches | |
| 2025 | 30 | Columbus Crew | Leagues Cup | Lg | 3 | 262 | 87 | 97.0 | 2.9 | 3 | 87 | 2 | 0 | 0 | 2.33 | 6 | 3 | +3 | +1.03 | +1.03 | Matches | |
| 3 Seasons | 1 Club | 2 Leagues | 19 | 1,682 | 89 | 90.4 | 18.7 | 19 | 89 | 16 | 0 | 1 | 2.05 | 38 | 21 | +17 | +0.91 | +1.92 | ||||
| Leagues Cup (3 Seasons) | 10 | 922 | 92 | 90.4 | 10.2 | 10 | 92 | 9 | 0 | 1 | 2.40 | 27 | 12 | +15 | +1.46 | +0.55 | ||||||
| CCC (2 Seasons) | 9 | 760 | 84 | 90.5 | 8.4 | 9 | 84 | 7 | 0 | 0 | 1.66 | 11 | 9 | +2 | +0.24 | +3.61 | ||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2023 | 28 | cv Cape Verde | Friendlies (M) | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 1 | 5 | -4 | -4.00 | -3.00 | Matches | ||
| 2023 | 28 | cv Cape Verde | Africa Cup of Nations | QF | 5 | 400 | 80 | 83.3 | 4.4 | 4 | 93 | 2 | 1 | 27 | 0 | 2.20 | 7 | 2 | +5 | +1.13 | +1.13 | Matches |
| 2025 | 30 | cv Cape Verde | Africa Cup of Nations qualification | 4 | 315 | 79 | 58.3 | 3.5 | 4 | 79 | 3 | 0 | 0 | 1.00 | 3 | 5 | -2 | -0.57 | +0.23 | Matches | ||
| 2026 | 31 | cv Cape Verde | WCQ | 6 | 540 | 90 | 60.0 | 6.0 | 6 | 90 | 6 | 0 | 0 | 2.17 | 11 | 7 | +4 | +0.67 | -0.33 | Matches | ||
| 2026 | 31 | cv Cape Verde | Friendlies (M) | 1 | 44 | 44 | 50.0 | 0.5 | 0 | 0 | 1 | 44 | 0 | 3.00 | 2 | 0 | +2 | +4.09 | +2.05 | Matches | ||
| 3 Seasons | 1 Club | 4 Leagues | 17 | 1,389 | 82 | 63.5 | 15.4 | 15 | 88 | 12 | 2 | 36 | 0 | 1.82 | 24 | 19 | +5 | +0.32 | +0.10 | |||
| Friendlies (M) (2 Seasons) | 2 | 134 | 67 | 50.0 | 1.5 | 1 | 90 | 1 | 1 | 44 | 0 | 1.50 | 3 | 5 | -2 | -1.34 | -1.34 | |||||
| WCQ (1 Season) | 6 | 540 | 90 | 60.0 | 6.0 | 6 | 90 | 6 | 0 | 0 | 2.17 | 11 | 7 | +4 | +0.67 | -0.33 | ||||||
| Africa Cup of Nations (1 Season) | 5 | 400 | 80 | 83.3 | 4.4 | 4 | 93 | 2 | 1 | 27 | 0 | 2.20 | 7 | 2 | +5 | +1.13 | +1.13 | |||||
| Africa Cup of Nations qualification (1 Season) | 4 | 315 | 79 | 58.3 | 3.5 | 4 | 79 | 3 | 0 | 0 | 1.00 | 3 | 5 | -2 | -0.57 | +0.23 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 2.5 | 1 | 0 | 6 | Matches | |||||||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 8.8 | 1 | 0 | 11 | Matches | |||||||||
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 2.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 12.5 | 1 | 0 | 13 | Matches | |||||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 1.2 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 13.6 | 2 | 0 | 13 | Matches | |||||||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 27.9 | 6 | 0 | 0 | 22 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | Matches |
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 2.5 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 2.7 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 35.0 | 10 | 0 | 0 | 29 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 3.3 | 0 | 0 | 0 | 0 | 0 | 0 | 14 | 1 | 2 | 0 | 0 | 0 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 9.6 | 2 | 0 | 0 | 13 | 5 | 2 | 16 | 9 | 8 | 0 | 0 | 0 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 6 | 1 | 3 | 0 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 15.4 | 3 | 2 | 0 | 29 | 10 | 1 | 34 | 16 | 25 | 0 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 1.3 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 1 | 1 | 0 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 27.4 | 5 | 1 | 0 | 35 | 21 | 5 | 78 | 35 | 32 | 0 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | Rel/Pro play-offs | 0.8 | 1 | 0 | 0 | 2 | 1 | 0 | 2 | 1 | 1 | Matches | |||
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 5.8 | 0 | 0 | 0 | 6 | 3 | 1 | 15 | 2 | 6 | 0 | Matches | ||
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 30.9 | 6 | 0 | 0 | 32 | 12 | 1 | 71 | 26 | 23 | 0 | Matches | ||
| 2023 | 28 | Columbus Crew | Leagues Cup | 2.3 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 32.5 | 3 | 0 | 0 | 18 | 10 | 0 | 23 | 22 | 20 | 0 | Matches | ||
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | 1.0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0 | 0 | Matches | ||
| 2024 | 29 | Columbus Crew | 1. CCC | 7.3 | 1 | 0 | 0 | 3 | 2 | 0 | 7 | 4 | 4 | 0 | Matches | |||
| 2024 | 29 | Columbus Crew | Leagues Cup | 5.0 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 23.4 | 0 | 0 | 0 | 19 | 16 | 1 | 25 | 16 | 15 | 0 | Matches | ||
| 2025 | 30 | Columbus Crew | 1. CCC | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | Matches | |||
| 2025 | 30 | Columbus Crew | Leagues Cup | 2.9 | 1 | 0 | 0 | 0 | Matches | |||||||||
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 27.3 | 4 | 0 | 0 | 19 | 11 | 0 | 36 | 16 | 29 | 0 | Matches | ||
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 12.6 | 1 | 0 | 0 | 9 | 4 | 0 | 10 | 12 | 7 | 0 | Matches | ||
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | 0.8 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | Matches | ||
| 15 Seasons | 4 Clubs | 9 Leagues | 325.7 | 49 | 3 | 0 | 282 | 109 | 15 | 425 | 208 | 212 | 0 | 1 | 0 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Columbus Crew (6 Seasons) | 4 Leagues | 153.1 | 16 | 0 | 0 | 107 | 59 | 4 | 191 | 100 | 107 | 0 | ||||||
| Rennes (5 Seasons) | 3 Leagues | 41.7 | 5 | 0 | 0 | 43 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | ||||
| Toulouse (3 Seasons) | 5 Leagues | 61.8 | 11 | 3 | 0 | 81 | 38 | 8 | 151 | 64 | 72 | 0 | 0 | 0 | ||||
| Lorient (2 Seasons) | 4 Leagues | 69.2 | 17 | 0 | 0 | 51 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | ||||
| Ligue 1 (7 Seasons) | 91.4 | 16 | 2 | 0 | 107 | 27 | 6 | 133 | 69 | 66 | 0 | 1 | 0 | |||||
| MLS (6 Seasons) | 132.5 | 14 | 0 | 0 | 103 | 56 | 3 | 180 | 94 | 100 | 0 | |||||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 2 | 1 | 0 | 15 | 2 | 3 | 0 | 0 | 0 | |||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0 | 0 | 0 | 6 | 1 | 3 | 0 | |||||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | 0 | |||||||||||||
| Ligue 2 (2 Seasons) | 62.4 | 15 | 1 | 0 | 64 | 21 | 5 | 78 | 35 | 32 | 0 | 0 | 0 | |||||
| CCC (2 Seasons) | 8.4 | 1 | 0 | 0 | 3 | 2 | 0 | 9 | 5 | 6 | 0 | |||||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 0 | 0 | 1 | 1 | 1 | 2 | 1 | 1 | 0 | |||||||
| Rel/Pro play-offs (1 Season) | 0.8 | 1 | 0 | 0 | 2 | 1 | 0 | 2 | 1 | 1 | ||||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 17 | Rennes | 1 League | 2.5 | 1 | 0 | 6 | ||||||||||
| 2013-2014 | 18 | Rennes | 1 League | 8.8 | 1 | 0 | 11 | ||||||||||
| 2014-2015 | 19 | Rennes | 2 Leagues | 14.5 | 1 | 0 | 0 | 13 | 0 | ||||||||
| 2015-2016 | 20 | Rennes | 2 Leagues | 14.8 | 2 | 0 | 0 | 13 | 0 | ||||||||
| 2016-2017 | 21 | Rennes | 1 League | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | |
| 2016-2017 | 21 | Lorient | 2 Leagues | 28.9 | 6 | 0 | 0 | 22 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | |
| 2017-2018 | 22 | Lorient | 3 Leagues | 40.2 | 11 | 0 | 0 | 29 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2018-2019 | 23 | Toulouse | 3 Leagues | 13.9 | 2 | 0 | 0 | 13 | 5 | 2 | 30 | 10 | 10 | 0 | 0 | 0 | |
| 2019-2020 | 24 | Toulouse | 3 Leagues | 18.4 | 3 | 2 | 0 | 29 | 10 | 1 | 40 | 17 | 28 | 0 | |||
| 2020-2021 | 25 | Toulouse | 3 Leagues | 29.5 | 6 | 1 | 0 | 39 | 23 | 5 | 81 | 37 | 34 | 0 | |||
| 2021 | 26 | Columbus Crew | 1 League | 5.8 | 0 | 0 | 0 | 6 | 3 | 1 | 15 | 2 | 6 | 0 | |||
| 2022 | 27 | Columbus Crew | 1 League | 30.9 | 6 | 0 | 0 | 32 | 12 | 1 | 71 | 26 | 23 | 0 | |||
| 2023 | 28 | Columbus Crew | 3 Leagues | 35.8 | 3 | 0 | 0 | 19 | 10 | 1 | 25 | 22 | 20 | 0 | |||
| 2024 | 29 | Columbus Crew | 3 Leagues | 35.8 | 1 | 0 | 0 | 22 | 18 | 1 | 32 | 20 | 19 | 0 | |||
| 2025 | 30 | Columbus Crew | 3 Leagues | 31.3 | 5 | 0 | 0 | 19 | 11 | 0 | 38 | 17 | 31 | 0 | |||
| 2026 | 31 | Columbus Crew | 2 Leagues | 13.4 | 1 | 0 | 0 | 9 | 5 | 0 | 10 | 13 | 8 | 0 | |||
| 15 Seasons | 4 Clubs | 9 Leagues | 325.7 | 49 | 3 | 0 | 282 | 109 | 15 | 425 | 208 | 212 | 0 | 1 | 0 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Columbus Crew (6 Seasons) | 4 Leagues | 153.1 | 16 | 0 | 0 | 107 | 59 | 4 | 191 | 100 | 107 | 0 | |||||
| Rennes (5 Seasons) | 3 Leagues | 41.7 | 5 | 0 | 0 | 43 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | |||
| Toulouse (3 Seasons) | 5 Leagues | 61.8 | 11 | 3 | 0 | 81 | 38 | 8 | 151 | 64 | 72 | 0 | 0 | 0 | |||
| Lorient (2 Seasons) | 4 Leagues | 69.2 | 17 | 0 | 0 | 51 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | |||
| Ligue 1 (7 Seasons) | 91.4 | 16 | 2 | 0 | 107 | 27 | 6 | 133 | 69 | 66 | 0 | 1 | 0 | ||||
| MLS (6 Seasons) | 132.5 | 14 | 0 | 0 | 103 | 56 | 3 | 180 | 94 | 100 | 0 | ||||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 2 | 1 | 0 | 15 | 2 | 3 | 0 | 0 | 0 | ||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0 | 0 | 0 | 6 | 1 | 3 | 0 | ||||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | 0 | ||||||||||||
| Ligue 2 (2 Seasons) | 62.4 | 15 | 1 | 0 | 64 | 21 | 5 | 78 | 35 | 32 | 0 | 0 | 0 | ||||
| CCC (2 Seasons) | 8.4 | 1 | 0 | 0 | 3 | 2 | 0 | 9 | 5 | 6 | 0 | ||||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 0 | 0 | 1 | 1 | 1 | 2 | 1 | 1 | 0 | ||||||
| Rel/Pro play-offs (1 Season) | 0.8 | 1 | 0 | 0 | 2 | 1 | 0 | 2 | 1 | 1 | |||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 17 | Rennes | fr FRA | 1. Ligue 1 | 13th | 2.5 | 1 | 0 | 6 | Matches | |||||||||
| 2013-2014 | 18 | Rennes | fr FRA | 1. Ligue 1 | 12th | 8.8 | 1 | 0 | 11 | Matches | |||||||||
| 2014-2015 | 19 | Rennes | fr FRA | 1. Ligue 1 | 9th | 12.5 | 1 | 0 | 13 | Matches | |||||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Ligue 1 | 8th | 13.6 | 2 | 0 | 13 | Matches | |||||||||
| 2016-2017 | 21 | Rennes | fr FRA | 1. Ligue 1 | 9th | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | Matches |
| 2016-2017 | 21 | Lorient | fr FRA | 1. Ligue 1 | 18th | 27.9 | 6 | 0 | 0 | 22 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | Matches |
| 2017-2018 | 22 | Lorient | fr FRA | 2. Ligue 2 | 7th | 35.0 | 10 | 0 | 0 | 29 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Ligue 1 | 16th | 9.6 | 2 | 0 | 0 | 13 | 5 | 2 | 16 | 9 | 8 | 0 | 0 | 0 | Matches |
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Ligue 1 | 20th | 15.4 | 3 | 2 | 0 | 29 | 10 | 1 | 34 | 16 | 25 | 0 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | 2. Ligue 2 | 3rd | 27.4 | 5 | 1 | 0 | 35 | 21 | 5 | 78 | 35 | 32 | 0 | Matches | ||
| 2021 | 26 | Columbus Crew | us USA | 1. MLS | 17th | 5.8 | 0 | 0 | 0 | 6 | 3 | 1 | 15 | 2 | 6 | 0 | Matches | ||
| 2022 | 27 | Columbus Crew | us USA | 1. MLS | 15th | 30.9 | 6 | 0 | 0 | 32 | 12 | 1 | 71 | 26 | 23 | 0 | Matches | ||
| 2023 | 28 | Columbus Crew | us USA | 1. MLS | 3rd | 32.5 | 3 | 0 | 0 | 18 | 10 | 0 | 23 | 22 | 20 | 0 | Matches | ||
| 2024 | 29 | Columbus Crew | us USA | 1. MLS | 2nd | 23.4 | 0 | 0 | 0 | 19 | 16 | 1 | 25 | 16 | 15 | 0 | Matches | ||
| 2025 | 30 | Columbus Crew | us USA | 1. MLS | 12th | 27.3 | 4 | 0 | 0 | 19 | 11 | 0 | 36 | 16 | 29 | 0 | Matches | ||
| 2026 | 31 | Columbus Crew | us USA | 1. MLS | 21st | 12.6 | 1 | 0 | 0 | 9 | 4 | 0 | 10 | 12 | 7 | 0 | Matches | ||
| 15 Seasons | 4 Clubs | 3 Leagues | 286.3 | 45 | 3 | 0 | 274 | 104 | 14 | 391 | 198 | 198 | 0 | 1 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Columbus Crew (6 Seasons) | 1 League | 132.5 | 14 | 0 | 0 | 103 | 56 | 3 | 180 | 94 | 100 | 0 | |||||||
| Rennes (5 Seasons) | 1 League | 38.5 | 5 | 0 | 0 | 43 | 0 | 0 | 2 | 2 | 3 | 0 | 0 | 0 | |||||
| Toulouse (3 Seasons) | 2 Leagues | 52.4 | 10 | 3 | 0 | 77 | 36 | 8 | 128 | 60 | 65 | 0 | 0 | 0 | |||||
| Lorient (2 Seasons) | 2 Leagues | 62.9 | 16 | 0 | 0 | 51 | 12 | 3 | 81 | 42 | 30 | 0 | 1 | 0 | |||||
| Ligue 1 (7 Seasons) | 91.4 | 16 | 2 | 0 | 107 | 27 | 6 | 133 | 69 | 66 | 0 | 1 | 0 | ||||||
| MLS (6 Seasons) | 132.5 | 14 | 0 | 0 | 103 | 56 | 3 | 180 | 94 | 100 | 0 | ||||||||
| Ligue 2 (2 Seasons) | 62.4 | 15 | 1 | 0 | 64 | 21 | 5 | 78 | 35 | 32 | 0 | 0 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2014-2015 | 19 | Rennes | fr FRA | Coupe de France | 9th | 2.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 20 | Rennes | fr FRA | 1. Coupe de la Ligue | 9th | 1.2 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 21 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 22 | Lorient | fr FRA | Coupe de France | 17th | 2.5 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 22 | Lorient | fr FRA | 1. Coupe de la Ligue | 17th | 2.7 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 23 | Toulouse | fr FRA | Coupe de France | 9th | 3.3 | 0 | 0 | 0 | 0 | 0 | 0 | 14 | 1 | 2 | 0 | 0 | 0 | Matches |
| 2018-2019 | 23 | Toulouse | fr FRA | 1. Coupe de la Ligue | 17th | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 24 | Toulouse | fr FRA | Coupe de France | 33rd | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2019-2020 | 24 | Toulouse | fr FRA | 1. Coupe de la Ligue | 9th | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 6 | 1 | 3 | 0 | Matches | ||
| 2020-2021 | 25 | Toulouse | fr FRA | Coupe de France | 5th | 1.3 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 1 | 1 | 0 | Matches | ||
| 2023 | 28 | Columbus Crew | us USA | U.S. Open Cup | R16 | 1.0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0 | 0 | Matches | ||
| 2026 | 31 | Columbus Crew | us USA | U.S. Open Cup | SF | 0.8 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | Matches | ||
| 9 Seasons | 4 Clubs | 3 Leagues | 19.9 | 1 | 0 | 0 | 3 | 2 | 1 | 23 | 4 | 7 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Toulouse (3 Seasons) | 2 Leagues | 8.6 | 0 | 0 | 0 | 2 | 1 | 0 | 21 | 3 | 6 | 0 | 0 | 0 | |||||
| Lorient (2 Seasons) | 2 Leagues | 6.2 | 1 | 0 | 0 | 0 | |||||||||||||
| Rennes (2 Seasons) | 2 Leagues | 3.2 | 0 | 0 | 0 | 0 | |||||||||||||
| Columbus Crew (2 Seasons) | 1 League | 1.8 | 0 | 0 | 0 | 1 | 1 | 1 | 2 | 1 | 1 | 0 | |||||||
| Coupe de France (5 Seasons) | 10.1 | 0 | 0 | 0 | 2 | 1 | 0 | 15 | 2 | 3 | 0 | 0 | 0 | ||||||
| Coupe de la Ligue (5 Seasons) | 8.0 | 1 | 0 | 0 | 0 | 0 | 0 | 6 | 1 | 3 | 0 | ||||||||
| U.S. Open Cup (2 Seasons) | 1.8 | 0 | 0 | 0 | 1 | 1 | 1 | 2 | 1 | 1 | 0 | ||||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2023 | 28 | Columbus Crew | Leagues Cup | R32 | 2.3 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2024 | 29 | Columbus Crew | 1. CCC | 2nd | 7.3 | 1 | 0 | 0 | 3 | 2 | 0 | 7 | 4 | 4 | 0 | Matches | ||
| 2024 | 29 | Columbus Crew | Leagues Cup | 1st | 5.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2025 | 30 | Columbus Crew | 1. CCC | R16 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 2 | 0 | Matches | ||
| 2025 | 30 | Columbus Crew | Leagues Cup | Lg | 2.9 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 3 Seasons | 1 Club | 2 Leagues | 18.7 | 2 | 0 | 0 | 3 | 2 | 0 | 9 | 5 | 6 | 0 | |||||
| Leagues Cup (3 Seasons) | 10.2 | 1 | 0 | 0 | 0 | |||||||||||||
| CCC (2 Seasons) | 8.4 | 1 | 0 | 0 | 3 | 2 | 0 | 9 | 5 | 6 | 0 | |||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2023 | 28 | cv Cape Verde | Friendlies (M) | 1.0 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2023 | 28 | cv Cape Verde | Africa Cup of Nations | QF | 4.4 | 0 | 0 | 0 | 4 | 1 | 0 | 2 | 1 | 6 | 0 | Matches | ||
| 2025 | 30 | cv Cape Verde | Africa Cup of Nations qualification | 3.5 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2026 | 31 | cv Cape Verde | WCQ | 6.0 | 1 | 0 | 0 | 0 | Matches | |||||||||
| 2026 | 31 | cv Cape Verde | Friendlies (M) | 0.5 | 1 | 0 | 0 | 0 | Matches | |||||||||
| 3 Seasons | 1 Club | 4 Leagues | 15.4 | 2 | 0 | 0 | 4 | 1 | 0 | 2 | 1 | 6 | 0 | |||||
| Friendlies (M) (2 Seasons) | 1.5 | 1 | 0 | 0 | 0 | |||||||||||||
| WCQ (1 Season) | 6.0 | 1 | 0 | 0 | 0 | |||||||||||||
| Africa Cup of Nations (1 Season) | 4.4 | 0 | 0 | 0 | 4 | 1 | 0 | 2 | 1 | 6 | 0 | |||||||
| Africa Cup of Nations qualification (1 Season) | 3.5 | 0 | 0 | 0 | 0 | |||||||||||||
About FBref.com
FBref.com launched (June 13, 2018) with domestic league coverage for England, France, Germany, Italy, Spain, and United States. Since then we have been steadily expanding our coverage to include domestic leagues from over 40 countries as well as domestic cup, super cup and youth leagues from top European countries. We have also added coverage for major international cups such as the UEFA Champions League and Copa Libertadores.
FBref is the most complete sources for women's football data on the internet. This includes the entire history of the FIFA Women's World Cup as well as recent domestic league seasons from nine countries.
Note that player records are likely not complete for their careers. Players may come from or move to leagues we don't currently cover. This issue will go down over time, as we add new leagues and seasons.
You can sign up to receive an e-mail when new countries and features launch.
For more information, see our Launch Blog Post, the overall leagues/competition page with details on leagues and seasons we include, or our About Page. Let us know if you find an issue or have a suggestion.
FBref is one of seven Sports-Reference.com sites.

Player Club Summary