Romelu Lukaku got the first on the scoreboard from the spot, having won a penalty, then added a swift second.
Chelsea asserted themselves well very early in the game by controlling the play. The fact they had the ball in the net twice before the break shows they were also capable of opening up Wolves' defence -- even if the goals were ruled out. Despite looking stretched at times, the defence did enough to ensure Edouard Mendy didn't have to do anything for large periods. Will be very encouraging that they scored two goals so quickly in the second period.
Chelsea's play was pedestrian at times in the first half, and there were also periods where the hosts showed a lack of creativity. Plenty of set pieces were completely wasted before half-time, while the second ruled-out goal showed a lack of conviction. They will also be worried by how easy it was for Wolves to counter at points. There will be frustration around Chelsea's contribution to Wolves' first goal and their inability to see out the game.
Manager rating (out of 10)
Thomas Tuchel, 6 - Made a change at half-time and the team came out showing far more intent, going two goals up within 13 minutes. Considering his side has won one of their past three games, he can be very pleased with the performance for most of the second half and result. His late changes weren't enough to hold on to the three points.
Player ratings (1-10; 10 = best, players introduced after 70 minutes get no rating)
GK Edouard Mendy, 6 -- Had nothing to do until he made a good save to deny Pedro Neto shortly before half-time, though he could have been punished for pushing the ball back into a dangerous area. After another long period without anything to do, he rushed out to deny Hwang Hee-Chan. There was nothing he could do to deny Trincao or Coady.
DF Cesar Azpilicueta, 7 -- Showed his defensive intelligence to ensure Jonny didn't get a clear chance but was booked in the 28th minute for catching Neto with an arm to the face. Made some great bursts forward in the second half and often defended well.
DF Thiago Silva, 5 -- Cleaned up well when it seemed Neto might get through early on before he stole the ball from the winger in his own box. Was lucky Saiss couldn't find the target after he completely missed a cross into the box, then saw Trincao hit a late shot wide after being unable to tackle the winger. Didn't do enough to stop Coady scoring late on.
DF Antonio Rudiger, 5 -- Some of his balls forward looked speculative, while he could have scored himself in the build-up to Loftus-Cheek's goal being disallowed. Could have done more to stop Trincao cutting in for Wolves' goal.
MF Reece James, 6 -- Often defended well, making a key header to deny Neto at the back post. Hit an attempt comfortably over the crossbar. Came agonisingly close to finding the corner after catching out Jose Sa with a clever free kick. However, he was poor for Coady's late equaliser.
MF Mateo Kovacic, 6 -- Played a nice pass to create a chance for Werner, then found Lukaku in a good position with a lovely ball. Also moved the ball well in deeper positions. Drove into the box well but his shot was saved. Was dispossessed in the buildup to Wolves' goal then got in Rudiger's way as Trincao cut inside.
MF Ruben Loftus-Cheek, 7 -- Moved the ball well throughout and was unfortunate to have a goal ruled out for offside. Drove Chelsea forward impressively at times.
MF Marcos Alonso, 5 -- Many of his set-piece deliveries were uncharacteristically poor, with one free kick going straight into the wall. Could have done better defensively at times.
FW Christian Pulisic, 8 -- Was Chelsea's most creative player, working some room for himself but being unable to find the target. The winger then slid through a nice ball for Werner's disallowed goal. Capitalised on Wolves' mistake and slipped Lukaku through for the second goal. Overhit his pass for Werner when he could have played the German in on goal.
FW Romelu Lukaku, 9 -- In the first half, he saw his first shot blocked, missed Kovacic's pass after making a good run, then kept Saiss off before hitting a decent shot that was saved. His determination to dispossess Saiss led to the penalty that he confidently dispatched, then the Belgian soon added another with a clinical finish.
FW Timo Werner, 6 -- Made some intelligent runs and was unlucky to see his shot saved by Sa, then got behind Saiss, but his goal was ruled out for a foul on the Moroccan player. Was denied by a fantastic save early in the second period but struggled with his end product after that.
Saul Niguez, 6 -- Replaced Alonso at half-time and did the basics well while also getting into some nice positions in the middle at times.
Kai Havertz, N/R - Replaced Lukaku in the 91st minute and hit a shot wide after getting a bit of space for himself in the box.