Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Águilas Doradas | 2011/12 – 2026/27 | 65 | 4 | 6 |
| Fortaleza FC | 2025/26 | 43 | 2 | 4 |
| Independiente Medellin | 2018/19 – 2024/25 | 198 | 15 | 42 |
| Emelec | 2023/24 – 2024/25 | 28 | 2 | 0 |
| FC Dallas | 2020/21 – 2021/22 | 42 | 2 | 3 |
| Huila | 2017/18 | 42 | 1 | 9 |
| Leones FC | 2016/17 | 41 | 10 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 3 Jan 2024 | Independiente Medellin | Emelec | — |
| 1 Jan 2022 | FC Dallas | Independiente Medellin | — |
| 15 Aug 2020 | Independiente Medellin | FC Dallas | Loan |
| 1 Jan 2018 | Huila | Independiente Medellin | — |
| 1 Jan 2017 | Leones FC | Huila | — |
| 1 Jan 2016 | Rionegro Aguilas | Leones FC | — |
| 21 Jan 2025 | Emelec | Fortaleza FC | Free Transfer |
| 31 Dec 2025 | Fortaleza FC | Águilas Doradas | Free agent |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | Primera A | Águilas Doradas | 27 | 24 | 1904 | 2 | 6 | 6 | 0 | 7.06 |
| 2025/26 | Copa Colombia | Fortaleza FC | 1 | 1 | 63 | 0 | — | 0 | 0 | — |
| 2025/26 | Primera A | Fortaleza FC | 42 | 29 | 2355 | 2 | 4 | 4 | 1 | 7.00 |
| 2024/25 | Liga Pro | Emelec | 28 | 18 | 560 | 2 | 0 | 2 | 0 | 6.95 |
| 2023/24 | Primera A | Independiente Medellin | 33 | 15 | 1589 | 1 | 3 | 5 | 0 | 7.03 |
| 2023/24 | Copa Colombia | Independiente Medellin | 2 | 0 | 33 | 0 | — | 1 | 0 | — |
| 2023/24 | CONMEBOL Libertadores | Independiente Medellin | 6 | 5 | 402 | 0 | 3 | 3 | 0 | 7.53 |
| 2022/23 | Primera A | Independiente Medellin | 38 | 33 | 2644 | 1 | 8 | 5 | 0 | 7.14 |
| 2022/23 | Copa Colombia | Independiente Medellin | 5 | 4 | 330 | 0 | — | 1 | 0 | — |
| 2022/23 | CONMEBOL Sudamericana | Independiente Medellin | 4 | 2 | 215 | 0 | 2 | 1 | 0 | 7.20 |
| 2021/22 | Major League Soccer | FC Dallas | 26 | 9 | 973 | 1 | 2 | 5 | 0 | 6.88 |
| 2020/21 | Major League Soccer | FC Dallas | 16 | 15 | 1281 | 1 | 1 | 2 | 0 | 7.34 |
| 2020/21 | Primera A | Independiente Medellin | 7 | 7 | 600 | 2 | 1 | 4 | 0 | 7.58 |
| 2020/21 | CONMEBOL Libertadores | Independiente Medellin | 6 | 6 | 535 | 1 | 2 | 0 | 0 | 7.70 |
| 2019/20 | Primera A | Independiente Medellin | 37 | 36 | 3244 | 4 | 9 | 7 | 0 | 7.59 |
| 2019/20 | Copa Colombia | Independiente Medellin | 8 | 8 | 717 | 1 | — | 2 | 0 | — |
| 2019/20 | CONMEBOL Libertadores | Independiente Medellin | 2 | 2 | 180 | 0 | 1 | 0 | 0 | 7.45 |
| 2018/19 | Primera A | Independiente Medellin | 46 | 45 | 4036 | 5 | 12 | 13 | 0 | 7.47 |
| 2018/19 | Copa Colombia | Independiente Medellin | 2 | 2 | 180 | 0 | — | 1 | 0 | — |
| 2018/19 | CONMEBOL Sudamericana | Independiente Medellin | 2 | 2 | 180 | 0 | 1 | 2 | 0 | 7.35 |
| 2017/18 | Primera A | Huila | 40 | 39 | 3498 | 1 | 9 | 7 | 0 | 7.43 |
| 2017/18 | Copa Colombia | Huila | 2 | 0 | 61 | 0 | — | 0 | 0 | — |
| 2016/17 | Primera B | Leones FC | 36 | 36 | 3117 | 10 | — | 5 | 0 | — |
| 2016/17 | Copa Colombia | Leones FC | 5 | 3 | 315 | 0 | — | 2 | 0 | — |
| 2015/16 | Primera A | Águilas Doradas | 3 | 2 | 133 | 1 | — | 0 | 0 | — |
| 2014/15 | Primera A | Águilas Doradas | 1 | 0 | 10 | 0 | — | 1 | 0 | — |
| 2014/15 | Copa Colombia | Águilas Doradas | 7 | 4 | 315 | 0 | — | 2 | 0 | — |
| 2013/14 | Primera A | Águilas Doradas | 4 | 1 | 113 | 0 | — | 0 | 0 | — |
| 2013/14 | Copa Colombia | Águilas Doradas | 7 | 7 | 464 | 0 | — | 0 | 0 | — |
| 2012/13 | Primera A | Águilas Doradas | 6 | 1 | 109 | 1 | — | 1 | 0 | — |
| 2012/13 | Copa Colombia | Águilas Doradas | 6 | 3 | 232 | 0 | — | 1 | 0 | — |
| 2011/12 | Copa Colombia | Águilas Doradas | 4 | 0 | 22 | 0 | — | 0 | 0 | — |
Availability history
| Reason | From | Until | Days |
|---|---|---|---|
| Yellow Cards | 30 Jul 2021 | 1 Aug 2021 | 2 |
Trophies
| Competition | Season | Place |
|---|---|---|
| Primera A (Colombia) | 2023 | 2nd Place |
| Primera A (Colombia) | 2022 | 2nd Place |
| Primera A (Colombia) | 2018 | 2nd Place |
| Copa Colombia (Colombia) | 2019 | Winner |
