After two years of being unable to secure a contract and continue playing in Europe, Dida returned to Brazil to resume his career. On 24 May 2012, Portuguesa signed him for the remainder of the Brasileiro season as a replacement for departing goalkeeper Weverton. He made his debut on 26 June in a 1–0 win over São Paulo, and on 1 July, helped in holding Santos to a goalless draw in a match that was billed as a duel of generations between Dida and Santos' young star Neymar, who was 18 years his junior. Dida made 32 starts and conceded 31 goals as Portuguesa avoided relegation from the Campeonato Brasileiro top flight, but he departed after the season when his contract expired.