Playing now
Live| Season | Team | Competition | MP | Min | G | A |
|---|---|---|---|---|---|---|
| 2026/27 | Atlético Morelia | Mexican Ascenso (Apertura) | 1 | 8 | 0 | 0 |
| 2025/26 | Inter Toronto | Canadian Premier League | 21 | 1,581 | 1 | 4 |
| 2024/25 | Inter Toronto | Canadian Premier League | 26 | 1,904 | 0 | 0 |
| 2019/20 | Atlético Morelia | Copa Mexico (Apertura) | 1 | 29 | 0 | 0 |
| Total | 4 seasons | 49 | 3,522 | 1 | 4 |
Mexican Ascenso (Apertura)
2026/27Compared with 29 players in the same position in 2026/27.
Value: per 90 minutes played, except the percentages. Percentile: how many of those players rank below, from 0 to 100. The dotted ring on the chart is the 50th percentile, meaning the average for the position.
Small sample so far: few matches played.
No data in this competition: Aerial game.
| Metric | Value | Percentile |
|---|---|---|
| Goals | 0.00 | 3 |
| Shots | 0.00 | 0 |
| Chances created | 0.00 | 0 |
| Dribbles | 0.00 | 0 |
| Touches in the box | 0.00 | 0 |
| Metric | Total |
|---|---|
| Clearances | 2 |
Mexican Ascenso (Clausura)
2025/26No stats available right now.
CONCACAF Champions Cup
2025/26No stats available right now.
Liga MX
2025/26No stats available right now.
Leagues Cup
2025/26No stats available right now.
FIFA Club World Cup
2025/26No stats available right now.
Canadian Championship
2025/26No stats available right now.
Canadian Premier League
2025/26Compared with 35 players in the same position in 2025/26.
Value: per 90 minutes played, except the percentages. Percentile: how many of those players rank below, from 0 to 100. The dotted ring on the chart is the 50th percentile, meaning the average for the position.
| Metric | Value | Percentile |
|---|---|---|
| Goals | 0.06 | 10 |
| Shots | 0.91 | 7 |
| Chances created | 1.31 | 64 |
| Dribbles | 0.46 | 21 |
| Touches in the box | 0.63 | 1 |
| Aerial game | 52% | 79 |
| Metric | Total |
|---|---|
| Goals | 1 |
| Assists | 4 |
| Big chances created | 23 |
| Shots | 16 |
| Dribbles completed | 8 |
| Tackles won | 28 |
| Interceptions | 23 |
| Clearances | 32 |
| Clean sheets | 5 |
Canadian Championship
2024/25No stats available right now.
Canadian Premier League
2024/25Compared with 33 players in the same position in 2024/25.
Value: per 90 minutes played, except the percentages. Percentile: how many of those players rank below, from 0 to 100. The dotted ring on the chart is the 50th percentile, meaning the average for the position.
| Metric | Value | Percentile |
|---|---|---|
| Goals | 0.00 | 11 |
| Shots | 0.57 | 2 |
| Chances created | 0.57 | 11 |
| Dribbles | 0.76 | 26 |
| Touches in the box | 0.57 | 2 |
| Aerial game | 33% | 44 |
| Metric | Total |
|---|---|
| Big chances created | 12 |
| Shots | 12 |
| Dribbles completed | 16 |
| Tackles won | 27 |
| Interceptions | 31 |
| Clearances | 44 |
| Clean sheets | 4 |
Liga MX
2023/24No stats available right now.
Leagues Cup
2023/24No stats available right now.
Mexican Ascenso (Apertura)
2022/23No stats available right now.
Mexican Ascenso (Clausura)
2022/23No stats available right now.
Mexican Ascenso (Apertura)
2021/22No stats available right now.
Mexican Ascenso (Clausura)
2021/22No stats available right now.
Mexican Ascenso (Apertura)
2020/21No stats available right now.
Mexican Ascenso (Clausura)
2020/21No stats available right now.
Liga MX
2019/20No stats available right now.
Liga MX
2019/20No stats available right now.
Copa Mexico (Apertura)
2019/20Compared with 13 players in the same position in 2019/20.
Value: per 90 minutes played, except the percentages. Percentile: how many of those players rank below, from 0 to 100. The dotted ring on the chart is the 50th percentile, meaning the average for the position.
Small sample so far: few matches played.
No data in this competition: Aerial game.
| Metric | Value | Percentile |
|---|---|---|
| Goals | 0.00 | 19 |
| Shots | 0.00 | 19 |
| Chances created | 0.00 | 31 |
| Dribbles | 0.00 | 38 |
| Touches in the box | 0.00 | 19 |
No stats available right now.
Under 16 Internationals
2016/17No stats available right now.
Recent matches
| Match | Min | G | A | KP | Drb | Duel | Rec | Tkl | Pass | Score |
|---|---|---|---|---|---|---|---|---|---|---|
| 08/15AwayCruz Azul HidalgoG1-2 | 8' | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 3/5 | 6.1 |
| 10/09PacificE2-2 | 63' | 0 | 0 | 0 | 0 | 1 | 5 | 0 | 29/31 | 6.3 |
| 10/04AwayHFX WanderersE1-1 | 90' | 0 | 0 | 0 | 1 | 5 | 7 | 2 | 72/80 | 7.5 |
| 09/28ValourG1-0 | 90' | 0 | 0 | 0 | 0 | 2 | 6 | 0 | 65/75 | 7.0 |
| 09/21AwayVancouver FCP2-1 | 78' | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 37/44 | 6.3 |
| 09/14Atlético OttawaE2-2 | 84' | 0 | 0 | 0 | 0 | 2 | 2 | 1 | 33/39 | 5.7 |
| 09/05CavalryG3-1 | 90' | 0 | 1 | 2 | 0 | 4 | 1 | 2 | 33/41 | 7.7 |
| 08/24PacificG5-1 | 90' | 0 | 1 | 2 | 0 | 7 | 4 | 4 | 49/57 | 8.8 |
| 08/09ForgeP1-2 | 86' | 0 | 0 | 2 | 1 | 6 | 5 | 2 | 40/50 | 7.1 |
| 08/03AwayAtlético OttawaE0-0 | 90' | 0 | 0 | 0 | 1 | 5 | 6 | 4 | 28/35 | 7.1 |
| 07/26AwayCavalryG0-1 | 81' | 0 | 0 | 2 | 1 | 5 | 4 | 1 | 20/22 | 7.2 |
| 07/13ValourG3-2 | 90' | 0 | 1 | 1 | 0 | 7 | 8 | 1 | 28/39 | 7.8 |
| 07/08Atlético OttawaP3-4 | 87' | 0 | 0 | 0 | 0 | 1 | 4 | 1 | 27/37 | 6.2 |
| 06/29AwayForgeE2-2 | 90' | 0 | 0 | 0 | 0 | 8 | 2 | 3 | 42/48 | 7.1 |
| 06/22Atlético OttawaE0-0 | 90' | 0 | 0 | 2 | 0 | 3 | 1 | 2 | 36/39 | 7.4 |
BUL
LUX
FRO
KAZ
ISL
EST
SMR
FIN
TRE
SPA
KRS
GAZ
LAT
DEU
UKR
MAL
NIR
ALB
BLR
CZE
CRO
ENG
ESP
MKD
SUI
SVK
MDA
USA
PER
CAN
CHI
MEX
COL
ATL
NYC
MTL
CIN
CLT
CHI
RBNY
STL
PHI
ORL
ATX
SDG
DAL
LAF
HOU
SKC
NSH
TOR
SEA
MIN
RSL
NE
LAG
COL
SJ
POR
VAN
DC
CAZ
TOL
GDL
QRO
CSL
PAC
TIG
PUE
ANA
