The visitors had booked their place in the Coppa Italia final after a goalless draw with Napoli last week, and looked to build on that performance. Gennaro Gattuso’s men, meanwhile, came into this game in dire need of points, after suffering consecutive defeats against Genoa and Atalanta.
Nevertheless, despite missing a plethora of first-team players, Napoli managed to take all three points against Juventus who were without Paulo Dybala, Arthur and Aaron Ramsey.
Juventus started on the front foot, threatening to break forward and put pressure on the Napoli defence.
Midfielder Federico Bernardeschi saw his shot drift inches wide of the target before Giorgio Chiellini conceded a penalty at the other end after fouling Amir Rrahmani.
Lorenzo Insigne, who had missed his three previous penalties, made no mistake from the spot, scoring his 100th Napoli goal and put the hosts in the lead at half-time.
In the second half, Juventus piled on the pressure and threw men forward, but an equaliser was not to be.
Cristiano Ronaldo drove a thumping shot wide off the target before missing a glorious opportunity from close range, sending a well-struck volley straight at Napoli shot-stopper Alex Meret.
Federico Chiesa also came close to restoring parity, driving a belter, but Meret stood tall to thwart the Juventus player. Meret was again there to deny Ronaldo, blocking a shot with his feet, before denying Alvaro Morata from six yards to keep a fabulous clean sheet.
With the win, Gennaro Gattuso’s men have now leapfrogged AS Roma to move to fourth in the points table, two points behind Juventus, whose title defence looks in disarray.
On that note, let us have a look at the player ratings of both teams.
Napoli Player ratings
Alex Meret 8.5/10
It was a world-class performance from the Napoli shot-stopper. The 23-year-old Alex Meret produced several astonishing saves to keep his side in the game and frustrate Juventus.
Meret did well to deny Cristiano Ronaldo in both halves, while also making brilliant stops to keep out Federico Chiesa and Alvaro Morata’s goal-bound efforts.
Mario Rui 7/10
It was an energetic outing from Napoli’s marauding full-back. Mario Rui provided support at both ends of the pitch.
He charged down the left to provide support for the attack, while also recovering to make vital blocks against the Juventus attackers. Rui finished the game with three interceptions and one tackle, while also winning two of his four attempted ground duels.
Nikola Maksimovic 7/10
Nikola Maksimovic was a key player in the Napoli defence following an injury to Kalidou Koulibaly.
He was quick to snuff out any danger, not hesitating to clear the ball to safety. Playing alongside Amir Rrahmani, he made seven clearances while winning all his attempted ground duels. However, he was guilty of giving the ball away loosely on a few occasions.
Giovanni Di Lorenzo 7/10
Giovanni Di Lorenzo was solid down the right side of the Napoli defence, where he stood tall against Cristiano Ronaldo and Chiesa. While he was not as attack-minded as Mario Rui, he drove forward on a few occasions to support his colleagues up front.
Amir Rrahmani 7/10
In the absence of Kalidou Koulibaly, the Kosovo international proved to be a reliable presence. Amir Rrahmani made several clearances and also won the penalty, which Insigne converted after a VAR review.
Tiemoue Bakayoko 7/10
It was a routine outing from the former Chelsea midfielder. Tiemoue Bakayoko made his presence felt in the Napoli midfield, making two tackles and one interception, while also winning five of his 11 attempted midfield duels.
Hirving Lozano 6.5/10
It was a classy performance from the Mexican international, who terrorised Juventus on the right flank.
While Hirving Lozano failed to find his target with a series of passes, he had a superb defensive outing, especially when Napoli played from the back and sought to protect their slender lead.
Piotr Zielinski 5.5/10
The Poland international had a sub-par performance against Juventus. Piotr Zielinski kept his passes tidy and accurate, but was more involved in the second half before he was replaced by Eljif Elmas on the hour mark.
Matteo Politano 5.5/10
Napoli’s silky forward Matteo Politano struggled to deal with the Juventus defenve on the night. He failed to get past his marker, finishing the game without an attempt on goal. He was hooked off in the 65th minute.
Lorenzo Insigne 7.5/10
Lorenzo Insigne was Napoli’s most threatening attacker on the night. He probed the Juventus defence, troubling the visitors with his threatening runs into the box.
He scored the only goal of the night from the penalty spot, his 100th in a Napoli shirt. Interestingly, Insigne had missed his three spot-kicks against Juventus.
Victor Osimhen 5/10
The Nigerian international has continued to struggle in front of goal since returning from his lengthy injury lay-off.
Victor Osimhen offered no attacking threat, as he was marked out by the dogged Juventus defence, before being replaced in the 75th minute.
Player Ratings for Napoli substitutes
Fabian Ruiz 6/10
It was an energetic contribution from the former Real Betis man, as he ran tirelessly and was simply all over the pitch.
Fabian Ruiz joined his defence to help protect his side's lead. He was also accurate with his passing, which was over 90%.
Eljif Elmas 5/10
Eljif Elmas had a poor outing off the bench, as the Macedonian was merely a spectator after coming on for Piotr Zielinski.
Andrea Petagna 5/10
The 25-year-old Italian came on for striker Victor Osimhen in the final quarter-hour, but was just as unimposing as the Nigerian.
Stanislav Lobotka 5/10
The midfielder was brought on in the 88th minute of the game to see out the win, and he did just that.