Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Bucaramanga | 2023/24 – 2026/27 | 127 | 5 | 8 |
| Junior | 2019/20 – 2024/25 | 211 | 17 | 23 |
| Colombia | 2022 – 2023 | 2 | 0 | — |
| Águilas Doradas | 2018/19 | 39 | 3 | 4 |
| Veracruz | 2016/17 – 2017/18 | 9 | 0 | 1 |
| Santos Laguna | 2016/17 | 14 | 0 | 1 |
| Zaragoza | 2015/16 | 32 | 2 | 3 |
| Internacional de Bogota | 2012/13 – 2014/15 | 99 | 8 | — |
| Getafe | 2014/15 | 39 | 2 | — |
| Atletico Nacional | 2011/12 | 2 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 1 Jan 2024 | Junior | Bucaramanga | — |
| 1 Jan 2019 | Rionegro Aguilas | Junior | — |
| 1 Jan 2018 | Veracruz | Rionegro Aguilas | — |
| 1 Jan 2017 | Santos Laguna | Veracruz | — |
| 8 Jun 2016 | La Equidad | Santos Laguna | Loan |
| 2 Aug 2015 | La Equidad | Zaragoza | Loan |
| 8 Jul 2014 | La Equidad | Getafe | Loan |
| 1 Jan 2012 | Atletico Nacional | La Equidad | — |
| 1 Jan 2019 | Leones FC | Junior | — |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | CONMEBOL Sudamericana | Bucaramanga | 1 | 1 | 79 | 0 | 0 | 1 | 0 | 5.90 |
| 2026/27 | Primera A | Bucaramanga | 25 | 24 | 1952 | 1 | 1 | 12 | 0 | 6.64 |
| 2025/26 | CONMEBOL Sudamericana | Bucaramanga | 1 | 1 | 161 | 0 | 0 | 1 | 0 | 6.95 |
| 2025/26 | CONMEBOL Libertadores | Bucaramanga | 6 | 6 | 554 | 0 | 0 | 1 | 0 | 6.53 |
| 2025/26 | Primera A | Bucaramanga | 23 | 20 | 1725 | 0 | 1 | 9 | 0 | 6.84 |
| 2024/25 | Primera A | Bucaramanga | 36 | 34 | 2587 | 3 | 3 | 12 | 3 | 6.85 |
| 2024/25 | Copa Colombia | Bucaramanga | 9 | 9 | 766 | 1 | — | 5 | 0 | — |
| 2023/24 | Primera A | Junior | 28 | 13 | 1352 | 0 | 3 | 5 | 1 | 6.74 |
| 2023/24 | Primera A | Bucaramanga | 26 | 18 | 1316 | — | 3 | 5 | 1 | 6.74 |
| 2023/24 | Copa Colombia | Junior | 1 | 0 | 51 | 0 | — | 0 | 0 | — |
| 2022/23 | Primera A | Junior | 30 | 26 | 2292 | 3 | 3 | 10 | 1 | 6.99 |
| 2022/23 | Copa Colombia | Junior | 7 | 7 | 588 | 0 | — | 2 | 0 | — |
| 2022/23 | CONMEBOL Sudamericana | Junior | 8 | 8 | 689 | 1 | 2 | 2 | 0 | 7.20 |
| 2022 | World Cup - Qualification South America | Colombia | 1 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2022 | Friendlies | Colombia | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2021/22 | Primera A | Junior | 47 | 44 | 3775 | 4 | 7 | 8 | 0 | 7.04 |
| 2021/22 | Copa Colombia | Junior | 2 | 2 | 180 | 1 | — | 0 | 0 | — |
| 2021/22 | CONMEBOL Sudamericana | Junior | 2 | 2 | 180 | 1 | — | 0 | 0 | 7.35 |
| 2021/22 | CONMEBOL Libertadores | Junior | 9 | 9 | 789 | 2 | 2 | 3 | 0 | 7.10 |
| 2020/21 | Primera A | Junior | 17 | 15 | 1218 | 0 | 1 | 2 | 0 | 7.03 |
| 2020/21 | Copa Colombia | Junior | 1 | 1 | 76 | 0 | — | 0 | 0 | — |
| 2020/21 | CONMEBOL Sudamericana | Junior | 6 | 5 | 398 | 0 | — | 0 | 0 | 6.97 |
| 2020/21 | CONMEBOL Libertadores | Junior | 5 | 5 | 439 | 1 | 1 | 2 | 0 | 7.10 |
| 2019/20 | Primera A | Junior | 39 | 32 | 2520 | 4 | 4 | 6 | 0 | 6.90 |
| 2019/20 | Copa Colombia | Junior | 3 | 3 | 264 | 0 | — | 1 | 0 | — |
| 2019/20 | CONMEBOL Libertadores | Junior | 6 | 2 | 254 | 0 | — | 1 | 0 | 6.63 |
| 2018/19 | Primera A | Águilas Doradas | 38 | 36 | 3169 | 3 | 4 | 11 | 1 | 7.04 |
| 2018/19 | Copa Colombia | Águilas Doradas | 1 | 1 | 36 | 0 | — | 0 | 0 | — |
| 2016/17 | Liga MX | Veracruz | 9 | 8 | 619 | 0 | 1 | 3 | 0 | 6.48 |
| 2016/17 | Liga MX | Santos Laguna | 14 | 8 | 736 | 0 | 1 | 5 | 0 | 6.48 |
| 2015/16 | Segunda División | Zaragoza | 31 | 28 | 2290 | 2 | 3 | 9 | 0 | 6.70 |
| 2015/16 | Copa del Rey | Zaragoza | 1 | 1 | 76 | 0 | — | 0 | 0 | — |
| 2014/15 | La Liga | Getafe | 33 | 21 | 1836 | 2 | — | 6 | 0 | — |
| 2014/15 | Primera A | Internacional de Bogota | 18 | 18 | 1540 | 2 | — | 6 | 0 | — |
| 2014/15 | Copa del Rey | Getafe | 6 | 5 | 414 | 0 | — | 0 | 0 | — |
| 2014/15 | Copa Colombia | Internacional de Bogota | 2 | 0 | 38 | 0 | — | 0 | 0 | — |
| 2013/14 | Primera A | Internacional de Bogota | 28 | 17 | 1655 | 2 | — | 6 | 0 | — |
| 2013/14 | Copa Colombia | Internacional de Bogota | 8 | 6 | 601 | 0 | — | 1 | 0 | — |
| 2013/14 | CONMEBOL Sudamericana | Internacional de Bogota | 5 | 1 | 172 | 0 | — | 1 | 0 | — |
| 2012/13 | Primera A | Internacional de Bogota | 29 | 14 | 1265 | 4 | — | 7 | 0 | — |
| 2012/13 | Copa Colombia | Internacional de Bogota | 8 | 8 | 646 | 0 | — | 5 | 0 | — |
| 2012/13 | CONMEBOL Sudamericana | Internacional de Bogota | 1 | 0 | 33 | 0 | — | 0 | 0 | — |
| 2011/12 | Primera A | Atletico Nacional | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2011/12 | Copa Colombia | Atletico Nacional | 1 | 1 | 90 | 0 | — | 1 | 0 | — |
Availability history
| Reason | From | Until | Days |
|---|---|---|---|
| Injury | 21 Jul 2017 | 1 Feb 2018 | 195 |
Trophies
| Competition | Season | Place |
|---|---|---|
| Primera A (Colombia) | 2024 | Winner |
| Primera A (Colombia) | 2023 | Winner |
| Primera A (Colombia) | 2019 | Winner |
| Primera A (Colombia) | 2011 | Winner |
| Primera A (Colombia) | 2019 | 2nd Place |
| Superliga (Colombia) | 2020 | Winner |
| Superliga (Colombia) | 2019 | Winner |
| Superliga (Colombia) | 2025 | 2nd Place |
| Copa Colombia (Colombia) | 2022 | 2nd Place |
