Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Atlas | 2022/23 – 2024/25 | 21 | 0 | 0 |
| Tijuana | 2020/21 – 2022/23 | 47 | 10 | 3 |
| Houston Dynamo | 2015/16 – 2020/21 | 167 | 64 | 15 |
| Rio Grande Valley | 2016/17 | 4 | 2 | — |
| Colombia U20 | 2015 | 3 | 1 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 28 Jun 2022 | Club Tijuana | Atlas | — |
| 14 May 2015 | — | Houston Dynamo | — |
| 25 Jan 2026 | Atlas | Real Cartagena | Free agent |
| 24 Jan 2026 | Atlas | Real Cartagena | Free agent |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2024/25 | Leagues Cup | Atlas | 1 | 0 | 17 | 0 | 0 | 0 | 0 | 6.70 |
| 2023/24 | Liga MX | Atlas | 9 | 1 | 203 | 0 | — | 0 | 0 | 6.51 |
| 2023/24 | Leagues Cup | Atlas | 2 | 0 | 30 | 0 | — | 0 | 0 | 6.70 |
| 2023/24 | CONCACAF Champions League | Atlas | 1 | 0 | 13 | 0 | — | 0 | 0 | — |
| 2022/23 | Liga MX | Atlas | 8 | 1 | 169 | 0 | — | 0 | 0 | 6.47 |
| 2021/22 | Liga MX | Tijuana | 30 | 23 | 2041 | 5 | 2 | 3 | 0 | 6.71 |
| 2020/21 | Liga MX | Tijuana | 17 | 16 | 1233 | 5 | 1 | 2 | 0 | 6.99 |
| 2020/21 | Major League Soccer | Houston Dynamo | 20 | 15 | 1327 | 3 | 1 | 0 | 1 | 6.80 |
| 2019/20 | Major League Soccer | Houston Dynamo | 32 | 28 | 2537 | 13 | 7 | 0 | 0 | 7.11 |
| 2019/20 | CONCACAF Champions League | Houston Dynamo | 4 | 3 | 288 | 2 | — | 0 | 0 | — |
| 2018/19 | Major League Soccer | Houston Dynamo | 33 | 30 | 2634 | 19 | 1 | 1 | 0 | 7.19 |
| 2018/19 | US Open Cup | Houston Dynamo | 4 | 4 | 324 | 6 | — | 1 | 0 | — |
| 2017/18 | Major League Soccer | Houston Dynamo | 37 | 27 | 2336 | 11 | 5 | 3 | 0 | 6.99 |
| 2016/17 | USL Championship | Rio Grande Valley | 4 | 4 | 326 | 2 | — | 0 | 0 | — |
| 2016/17 | Major League Soccer | Houston Dynamo | 22 | 10 | 1054 | 6 | 1 | 0 | 0 | 6.84 |
| 2016/17 | US Open Cup | Houston Dynamo | 3 | 3 | 270 | 3 | — | 1 | 0 | — |
| 2015/16 | Major League Soccer | Houston Dynamo | 9 | 0 | 101 | 0 | — | 0 | 0 | 6.33 |
| 2015/16 | Primera A | 13 | 9 | 839 | 2 | — | 0 | 0 | — | |
| 2015/16 | US Open Cup | Houston Dynamo | 3 | 1 | 106 | 1 | — | 0 | 0 | — |
| 2015/16 | Copa Colombia | 2 | 1 | 133 | 0 | — | 0 | 0 | — | |
| 2015 | CONMEBOL U20 | Colombia U20 | 3 | 1 | 123 | 1 | — | 0 | 0 | — |
| 2014/15 | Primera A | 12 | 5 | 514 | 3 | — | 1 | 0 | — | |
| 2014/15 | Copa Colombia | 7 | 2 | 309 | 1 | — | 0 | 0 | — | |
| 2013/14 | Copa Colombia | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
No trophies recorded.
