Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Club Nacional | 2024/25 – 2026/27 | 29 | 3 | 2 |
| Defensor Sporting | 2023/24 – 2024/25 | 59 | 1 | 2 |
| Danubio | 2022/23 | 36 | 2 | — |
| CA River Plate | 2017/18 – 2021/22 | 144 | 13 | 4 |
| Plaza Colonia | 2015/16 – 2016/17 | 14 | 0 | — |
| Rentistas | 2014/15 – 2015/16 | 29 | 3 | — |
| Corona Braşov | 2013/14 | 3 | 0 | — |
| Cerro Largo | 2012/13 | 23 | 0 | — |
| Wanderers | 2010/11 – 2011/12 | 3 | 0 | — |
| Uruguay U20 | 2011 | 3 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 8 Aug 2024 | Defensor Sporting | Club Nacional | € 60K |
| 10 Jan 2023 | Danubio | Defensor Sporting | Free |
| 11 Jan 2022 | CA River Plate | Danubio | Free |
| 11 Jan 2017 | Plaza Colonia | CA River Plate | € Free |
| 2 Feb 2016 | Rentistas | Plaza Colonia | € Free |
| 1 Aug 2014 | Corona Braşov | Rentistas | Free |
| 5 Jul 2012 | Wanderers | Cerro Largo | Loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | CONMEBOL Libertadores | Club Nacional | 4 | 4 | 353 | 0 | 0 | 0 | 0 | 4.49 |
| 2025/26 | Primera División - Clausura | Club Nacional | 8 | 4 | 389 | 0 | — | 1 | 0 | — |
| 2025/26 | CONMEBOL Libertadores | Club Nacional | 2 | 0 | 39 | 0 | 0 | 0 | 0 | 6.30 |
| 2024/25 | Primera División - Clausura | Club Nacional | 13 | 5 | 607 | 3 | — | 0 | 0 | — |
| 2024/25 | Primera División - Clausura | Defensor Sporting | 19 | 17 | 1466 | 0 | — | 4 | 1 | — |
| 2024/25 | CONMEBOL Libertadores | Club Nacional | 2 | 0 | 39 | 0 | 2 | 0 | 0 | 7.75 |
| 2024/25 | CONMEBOL Libertadores | Defensor Sporting | 2 | 2 | 180 | 0 | 2 | 0 | 0 | 7.75 |
| 2023/24 | Primera División - Clausura | Defensor Sporting | 37 | 35 | 3054 | 1 | — | 5 | 0 | — |
| 2023/24 | CONMEBOL Sudamericana | Defensor Sporting | 1 | 1 | 90 | — | — | 1 | 0 | 7.90 |
| 2022/23 | Primera División - Clausura | Danubio | 36 | 35 | 3067 | 2 | — | 2 | 0 | — |
| 2021/22 | Primera División - Clausura | CA River Plate | 27 | 26 | 2340 | 1 | — | 5 | 0 | — |
| 2020/21 | Primera División - Apertura | CA River Plate | 32 | 31 | 2796 | 3 | — | 2 | 0 | — |
| 2020/21 | CONMEBOL Sudamericana | CA River Plate | 6 | 6 | 483 | 0 | 3 | 0 | 0 | 8.50 |
| 2019/20 | Primera División - Clausura | CA River Plate | 31 | 24 | 2379 | 2 | — | 3 | 0 | — |
| 2019/20 | CONMEBOL Sudamericana | CA River Plate | 3 | 2 | 160 | 0 | 1 | 1 | 0 | 6.80 |
| 2018/19 | Primera División - Clausura | CA River Plate | 23 | 19 | 1740 | 6 | — | 2 | 1 | — |
| 2017/18 | Primera División - Clausura | CA River Plate | 22 | 18 | 1660 | 1 | — | 5 | 0 | — |
| 2016/17 | Primera División - Clausura | Plaza Colonia | 11 | 7 | 702 | 0 | — | 1 | 0 | — |
| 2016/17 | CONMEBOL Sudamericana | Plaza Colonia | 1 | 1 | 90 | 0 | — | 1 | 0 | — |
| 2015/16 | Primera División - Clausura | Plaza Colonia | 2 | 1 | 127 | 0 | — | 0 | 0 | — |
| 2015/16 | Primera División - Clausura | Rentistas | 8 | 5 | 446 | 0 | — | 0 | 0 | — |
| 2014/15 | Primera División - Clausura | Rentistas | 20 | 17 | 1575 | 3 | — | 3 | 0 | — |
| 2014/15 | CONMEBOL Sudamericana | Rentistas | 1 | 1 | 46 | 0 | — | 0 | 0 | — |
| 2013/14 | Liga I | Corona Braşov | 1 | 1 | 46 | 0 | — | 1 | 0 | — |
| 2013/14 | Cupa României | Corona Braşov | 2 | 2 | 180 | 0 | — | 0 | 0 | — |
| 2012/13 | Primera División - Clausura | Cerro Largo | 23 | 21 | 1912 | 0 | — | 2 | 0 | — |
| 2011/12 | Liga AUF | Wanderers | 3 | 1 | 126 | 0 | — | 0 | 0 | — |
| 2011 | CONMEBOL U20 | Uruguay U20 | 3 | 3 | 238 | 0 | — | 1 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
| Competition | Season | Place |
|---|---|---|
| Liga AUF (Uruguay) | 2024 | 2nd Place |
| Liga AUF (Uruguay) | 2015/2016 | 2nd Place |
| Copa Uruguay (Uruguay) | 2023/2024 | Winner |
| Copa Uruguay (Uruguay) | 2024 | 2nd Place |
| Super Copa (Uruguay) | 2025 | Winner |
| Super Copa (Uruguay) | 2024 | 2nd Place |
