Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Atletico Grau | 2024/25 – 2026/27 | 99 | 2 | 5 |
| Academia Cantolao | 2023/24 | 29 | 0 | 1 |
| Universitario | 2012/13 – 2022/23 | 116 | 3 | 1 |
| Alianza Atletico | 2022/23 | 11 | 0 | — |
| UTC Cajamarca | 2016/17 – 2019/20 | 24 | 0 | — |
| Deportivo Municipal | 2017/18 – 2018/19 | 70 | 3 | — |
| U. San Martin | 2015/16 | 6 | 0 | — |
| Peru U23 | 2015 | 2 | 0 | — |
| Peru U20 | 2013 | 9 | 0 | — |
| Universitario U20 | 2012 | 4 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 2 Jan 2024 | Academia Cantolao | Atletico Grau | Free |
| 15 Dec 2022 | Universitario | Academia Cantolao | Free |
| 1 Dec 2022 | Alianza Atletico | Universitario | — |
| 13 Jun 2022 | Universitario | Alianza Atletico | Loan |
| 20 Jun 2019 | UTC | Universitario | Free |
| 7 Jan 2019 | Deportivo Municipal | UTC | Free |
| 31 Dec 2016 | UTC | Universitario | — |
| 16 Aug 2016 | Universitario | UTC | Loan |
| 1 Jan 2016 | U. San Martin | Universitario | — |
| 25 Aug 2015 | Universitario | U. San Martin | Loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | Primera División | Atletico Grau | 28 | 28 | 2463 | 1 | 3 | 6 | 0 | 6.81 |
| 2025/26 | CONMEBOL Sudamericana | Atletico Grau | 7 | 7 | 623 | 0 | 1 | 1 | 0 | 6.84 |
| 2025/26 | Primera División | Atletico Grau | 31 | 30 | 2675 | 1 | 1 | 7 | 0 | 6.81 |
| 2024/25 | Primera División | Atletico Grau | 33 | 33 | 2810 | 0 | 0 | 5 | 0 | 6.86 |
| 2023/24 | Primera División | Academia Cantolao | 29 | 28 | 2564 | 0 | 1 | 8 | 1 | 6.63 |
| 2022/23 | Primera División | Alianza Atletico | 11 | 7 | 644 | 0 | — | 3 | 1 | 6.62 |
| 2022/23 | Primera División | Universitario | 4 | 1 | 104 | 0 | — | 0 | 0 | 6.62 |
| 2022/23 | CONMEBOL Libertadores | Universitario | 1 | 0 | 17 | 0 | — | 0 | 0 | 6.70 |
| 2021/22 | Primera División | Universitario | 19 | 11 | 1136 | 0 | 1 | 4 | 0 | 6.77 |
| 2021/22 | CONMEBOL Libertadores | Universitario | 5 | 2 | 235 | 0 | — | 0 | 0 | 6.40 |
| 2020/21 | Primera División | Universitario | 16 | 10 | 1025 | 0 | — | 4 | 1 | 6.72 |
| 2020/21 | CONMEBOL Libertadores | Universitario | 3 | 3 | 188 | 0 | — | 1 | 0 | 6.60 |
| 2019/20 | Primera División | Universitario | 15 | 15 | 1301 | 0 | — | 7 | 0 | 6.77 |
| 2019/20 | Primera División | UTC Cajamarca | 11 | 9 | 770 | 0 | — | 3 | 0 | 6.77 |
| 2019/20 | CONMEBOL Sudamericana | UTC Cajamarca | 2 | 2 | 180 | 0 | — | 0 | 0 | 6.60 |
| 2018/19 | Primera División | Deportivo Municipal | 33 | 27 | 2396 | 1 | — | 8 | 0 | 6.80 |
| 2017/18 | Primera División | Deportivo Municipal | 35 | 28 | 2396 | 2 | — | 9 | 0 | 6.88 |
| 2017/18 | CONMEBOL Libertadores | Deportivo Municipal | 2 | 2 | 148 | 0 | — | 0 | 0 | — |
| 2016/17 | Primera División | UTC Cajamarca | 11 | 9 | 809 | 0 | — | 3 | 1 | — |
| 2016/17 | Primera División | Universitario | 2 | 1 | 115 | 0 | — | 0 | 0 | — |
| 2015/16 | Liga 1 | U. San Martin | 6 | 2 | 282 | 0 | — | 1 | 0 | — |
| 2015/16 | Liga 1 | Universitario | 6 | 1 | 237 | 0 | — | 2 | 0 | — |
| 2015/16 | Copa Inca | Universitario | 9 | 5 | 496 | 0 | — | 1 | 0 | — |
| 2015 | Pan American Games | Peru U23 | 2 | 2 | 149 | 0 | — | 1 | 0 | — |
| 2014/15 | Liga 1 | Universitario | 16 | 9 | 842 | 0 | — | 1 | 1 | — |
| 2014/15 | Copa Inca | Universitario | 4 | 2 | 155 | 0 | — | 1 | 0 | — |
| 2013/14 | Liga 1 | Universitario | 15 | 7 | 794 | 3 | — | 1 | 0 | — |
| 2013 | CONMEBOL U20 | Peru U20 | 9 | 8 | 644 | 0 | — | 1 | 0 | — |
| 2012/13 | Liga 1 | Universitario | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2012 | CONMEBOL Libertadores U20 | Universitario U20 | 4 | 4 | 358 | 0 | — | 1 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
| Competition | Season | Place |
|---|---|---|
| Liga 1 (Peru) | 2013 | Winner |
| Liga 1 (Peru) | 2020 | 2nd Place |
