Born in Registro, São Paulo, Gustavo joined Taboão da Serra's youth setup in 2013.
[1] On 29 January 2014, after being one of the top goalscorers of the year's Copa São Paulo de Futebol Júnior, he signed for Criciúma.
[2] Gustavo made his senior debut on 16 February 2014, coming on as a second-half substitute for Ricardinho in a 2–1 Campeonato Catarinense home win against Chapecoense.
[6] Returning to Tigre in 2016, Gustavo became a starter and scored six goals during the season's Catarinense, with two braces against Camboriú and Chapecoense.
[8] On 22 July 2020, Gustavo joined K League 1 club Jeonbuk Hyundai Motors on a deal running until December 2023.