Nacional In June 2011, he participated in the
2011 U-20 Copa Libertadores. In the first game,
Nacional beat
Libertad 1–0 with a goal by
Romero. In the second match, they beat
Jorge Wilstermann 3–1 with goals from
Bueno, Marchelli and again
Romero. In the third and final game,
Nacional drew 0–0 with
Universitario, and qualified for the quarterfinals. On June 20, they were defeated by Mexican side
América 1–0, which led to their elimination. His development in the youth squad lead him to sign a senior contract with the club in early 2012.
Loan to Juventud In mid-July 2012, he was loaned to
Juventud de Las Piedras to make his professional debut and have more chances in the first team. In his second match with the club, he scored his first official goal in the 1–0 home victory against
Central Español. On October 7, he was the man of the match against
Bella Vista, assisting and scoring a goal in his team's 2–0 victory. His third goal came six days later, in a 1–1 away draw against
Fénix.
CA Fénix After a slow start during his first season on loan with
C.A. Fénix, Cavallini emerged as the club's most prolific goal scorer in the Apertura of the
2014–15 Uruguayan Primera División season. He joined them permanently before the start of the 2015 Apertura.
Peñarol Cavallini joined
Peñarol on January 10, 2017. He scored his first goal against
Montevideo Wanderers on February 26. He was loaned to
Liga MX side
Puebla on August 31, 2017.
Puebla Cavallini was loaned to
Liga MX side
Puebla on August 31, 2017, becoming the first Canadian to play in Mexico's top tier since
Isidro Sánchez Macip in 2010. He debuted for the club against
Cruz Azul on September 9, coming on in the 64th minute for
Félix Micolta in a 0–0 draw. He scored his first goal for Puebla against
Necaxa on September 16. After scoring 13 goals in 25 matches for Puebla in the
2017–18 season, the club would sign him to a four-year contract in June 2018.
Vancouver Whitecaps FC In December 2019, Puebla and
Major League Soccer side
Vancouver Whitecaps FC agreed to a transfer, with Cavallini signing a three-year deal with the club ahead of the
2020 MLS season. He made his debut in Vancouver's season-opening 3–1 loss to
Sporting Kansas City on March 1, 2020. Cavallini scored his first regular-season goal for Vancouver on September 6, netting the opener in a 3–2 victory over
Toronto FC In August 2022, he joined
Whitecaps FC 2 on loan for a match in
MLS Next Pro.
Tijuana In February 2023, Cavallini returned to Mexico and signed with
Tijuana. On February 10 he made his debut for Xolos against
Atlético San Luis, coming on as a substitute in an eventual 1-0 victory. Cavallini scored his first goal for Xolos on March 3 against
Atlas. ==International career==