Massimiliano Allegri's side had needed just one more point for a 35th Scudetto and their latest title triumph helped ease some of the pain of their shock Champions League exit at the Juventus Stadium to Ajax on Tuesday.
And a come-from-behind 2-1 win over Fiorentina was enough to give them a 20-point lead on nearest rivals Napoli with five games to play.
Serbian defender Nikola Milenkovic put Fiorentina ahead after less than six minutes.
But Alex Sandro's diving header on 37 minutes and an own goal from Fiorentina defender German Pezzella after a Ronaldo cross in the 53rd minute sealed another title to ease their European disappointment.
"It was a great season and I adapted well. We won the Scudetto and the Italian Super Cup, which is not easy to achieve," said Ronaldo.
"It didn't go well in the Champions League but next year it will be better.
"I'm staying at Juve, 1,000 percent."
It was the 34-year-old's sixth domestic league title, having won three with Manchester United and two with Real Madrid.
The Portuguese star now has 28 trophies in total, including the Euro 2016 title with Portugal.
Bolstered by five-time Ballon d'Or winner Ronaldo, Juventus dominated the domestic league with the best attack and defence.
He has scored 19 goals and had six decisive crosses, and is in the running for the top scorer award along with Sampdoria's Fabio Quagliarella, who has 22 goals and AC Milan's Krzysztof Piatek on 21.
Juventus have lost only two matches, against Genoa and SPAL, with 28 wins and three draws.
Their eight straight title sees them overtake French club Lyon for the record of consecutive victories in the top five European leagues.
Juventus also equalled the record for the earliest the Italian title has been won, with five games to spare, achieved by Torino in 1948, Fiorentina in 1956 and Inter Milan in 2007.
Juventus succeeded despite having been hit hard by injuries with defender Giorgio Chiellini out along with Sami Khedira, Mario Mandzukic, Paulo Dybala and Douglas Costa.
Ronaldo threatened early, but defender Milenkovic gave Fiorentina hope of a first win in eight trips to the Allianz Stadium.
Giovanni Simeone had the ball in the back of the net on 25 minutes but the goal was ruled offside, before Sandro got his head to Miralem Pjanic's corner to pull the teams level before the break.
Ronaldo pushed forward after the break, crossing for Federico Bernardeschi, but Pezzella clumsily turned into his own net.
Allegri brought on teenage star Moise Kean in place of Bernardeschi on 74 minutes, but the 19-year-old could not add to his six goals in his previous six appearances.
Meanwhile, Juventus remain on track to match the record 102 points achieved under Antonio Conte in 2014.