Leonardo arrived to Europe at an early age, making his senior debuts with Cypriot club Enosis Neon Paralimni in 2012.
In April 2012, it was announced that Leonardo signed a three-year contract with Ukrainian club Tavriya Simferopol with an effective date of 1 July 2012.
After promising performances in Cyprus, Leonardo made a return to Ukraine and signed with Metalurh Donetsk on a three-year deal in January 2013.
[5] He scored his first competitive goal for the club on his 23rd birthday, finding the back of the net in the 84th minute of a 5–1 home league victory over Yenisey Krasnoyarsk.
[11] On 24 July 2016, Leonardo made his competitive debut for Partizan, coming off the bench as a second-half substitute for Miroslav Radović in the goalless draw against Bačka.
[16] By the end of the year, Leonardo scored six more league goals, including two braces in two home wins over Napredak Kruševac (3–2) in November,[17] and Spartak Subotica (2–0) in December.
[20] On 11 July 2017, Leonardo netted his first goal in UEFA competitions, giving Partizan a 2–0 home win over Budućnost Podgorica in the first leg of the Champions League second qualifying round.
[24] He scored four goals to give his team a 4–3 home victory over Al-Rayyan in the fourth round of matches in Group B of the AFC Champions League.