Juve hold on for the win! It’s smash-and-grab but you don’t care where the points come from at this point of the season.
Sassuolo were brilliant in the first half but couldn’t finish their chances and Berardi missed their best, Buffon keeping out his early penalty.
Rabiot and Ronaldo made them pay with two clinical finishes before the break, though the hosts did fight back after the interval through Raspadori.
Ronaldo’s goal was his 100th for Juventus and Dybala joined him on three figures to kill the game off with a beautiful finish at the end of a lovely counter-attacking move.
Buffon, who announced this week that he is leaving the club at the end of the season, replaced Wojciech Szczesny in goal and immediately showed he has lost none of his ability as he brilliantly kept out Domenico Berardi’s spot-kick.
The chances kept coming and going for the home side, and their profligacy proved costly as Adrien Rabiot drilled home the opener in the 28th minute, before Ronaldo reached another goal landmark just before the break.
Sassuolo continued to do everything but score, until Giacomo Raspadori did finally beat Buffon just before the hour mark.
Dybala also reached a century of Juve goals, with a fine finish six minutes later to ensure they kept pace with their top-four rivals Atalanta, AC Milan and Napoli, who all won in the latest round of matches, with two games to play.
Juve move up to fifth, one point behind fourth-placed Napoli and three behind AC Milan and Atalanta.
They have champions Inter and Bologna to come in their final two fixtures, while Sassuolo will look to bounce back against Parma and Lazio. Tonight’s defeat leaves them eighth.