Match ends, Manchester City 1, Wolverhampton Wanderers 0.
Raheem Sterling converted a controversial penalty to reach 100 Premier League goals and give Manchester City victory in a one-sided contest with 10-man Wolves.
Sterling kept his cool to roll his 66th-minute spot-kick past Jose Sa after a lengthy VAR check ruled Joao Moutinho had illegally blocked Bernardo Silva's cross, even though it seemed to hit the Wolves midfielder on his armpit.
The decision compounded Wolves' frustrations given they were annoyed at Raul Jimenez's dismissal for two yellow-card offences within seconds of each other near the end of the opening period.
Not that the visitors could have any complaints on the balance of play. City had 24 shots compared to Wolves' three. Sa made three excellent saves, Conor Coady headed an Ilkay Gundogan effort off the line, Max Kilman blocked a goalbound Phil Foden effort and Jack Grealish somehow failed to convert Sterling's far-post cross with the goal at his mercy.
Kilman brought a save out of Ederson at the end but Wolves have failed to score in their past four games and managed just one goal in their past six.
In contrast, City have now six Premier League games in a row to maintain their place at the top of the table and keep the pressure on title rivals Liverpool and Chelsea.
Jimenez's folly
As the first half drew to a close the atmosphere had been growing increasingly edgy amid allegations from City fans of Wolves' time-wasting, and play-acting in the case of Roman Saiss, who went down in his own area after getting an unseen, accidental finger in the eye from Sterling.
Yellow cards for Ruben Dias and Rodri for fouls on Adama Traore meant it was inevitable Jimenez would get one for dragging Rodri back close to halfway as the interval approached.
For the Wolves striker to then actively block Rodri's free-kick from a couple of yards was an act of folly. Referee Jon Moss had no choice other than to brandish a second yellow at Jimenez, who threw his skull cap down on a couple of occasions as he very slowly made his way off.
The dismissal condemned Wolves to a second-half rearguard effort in which Sa was particularly effective.
Sadly for Grealish, the same was not true of him. The introduction of Kevin de Bruyne for the £100m man came not long after his miss, which was poor and a long way short of the form that attracted Pep Guardiola to him in the first place.
Ederson was a bystander for most of the half. But the Brazilian was alert when it counted to keep out Kilman's header and, in the process, complete the 100th clean sheet of his City career.
- Reaction to Man City v Wolves, plus the rest of Saturday's Premier League matches
- 'His contribution to this club is massive' - reaction from Man City's Pep Guardiola
- 'The first yellow card is a crazy decision for me' - reaction from Wolves' Bruno Lage
Head clash reminder
Jimenez's recovery from a fractured skull has just been recounted in an excellent documentary made by Wolves that has been available to watch on the BBC.
The sight of Kilman and Neves clashing heads in the first half was a sickening reminder of that awful day at Arsenal, when Nuno Espirito Santo's immediate fear was that the Mexican's life was in danger.
Thankfully, it was soon apparent that the damage this time was not comparable. Kilman had blood running down his face and required a headband, while Neves was checked over before he too was allowed to continue.
The incident is bound to trigger discussion around the need for temporary concussion substitutes, although, given the history with Jimenez, it is hard to imagine the Wolves medical staff would have allowed either man to continue had there been any doubt about their fitness to do so.
As it turned out, Kilman completed the full 90 minutes and Neves lasted 82 before he was replaced by Francisco Trincao as Wolves boss Bruno Lage searched in vain for an equaliser.
City are next in action against Leeds at Etihad Stadium on Tuesday at 20:00 GMT, while Wolves play Brighton on Wednesday at 19:30.
Player of the match
CoadyConor Coady
Manchester City
Avg
Squad number20Player nameBernardo Silva
Average rating6.56
Squad number27Player nameJoão Cancelo
Average rating6.48
Squad number31Player nameEderson
Average rating6.25
Squad number47Player nameFoden
Average rating6.23
Squad number16Player nameRodri
Average rating6.16
Squad number3Player nameRúben Dias
Average rating6.10
Squad number7Player nameSterling
Average rating6.06
Squad number14Player nameLaporte
Average rating6.04
Squad number8Player nameGündogan
Average rating6.04
Squad number11Player nameZinchenko
Average rating5.99
Squad number17Player nameDe Bruyne
Average rating5.95
Squad number9Player nameGabriel Jesus
Average rating5.75
Squad number10Player nameGrealish
Average rating5.21
Wolverhampton Wanderers
Avg
- Squad number16Player nameCoadyAverage rating
8.06
- Squad number23Player nameKilmanAverage rating
7.93
- Squad number1Player nameJosé SáAverage rating
7.71
- Squad number3Player nameAït-NouriAverage rating
7.36
- Squad number27Player nameSaïssAverage rating
7.15
- Squad number8Player nameRúben NevesAverage rating
6.91
- Squad number22Player nameNélson SemedoAverage rating
6.69
- Squad number28Player nameJoão MoutinhoAverage rating
6.68
- Squad number32Player nameDendonckerAverage rating
6.62
- Squad number26Player nameHwang Hee-chanAverage rating
6.28
- Squad number10Player nameDaniel PodenceAverage rating
6.17
- Squad number37Player nameTraoréAverage rating
5.96
- Squad number11Player nameTrincãoAverage rating
5.70
- Squad number9Player nameJiménezAverage rating
4.32
Line-ups
Man City
Formation 4-3-3
- 31Ederson
- 27CanceloBooked at 81mins
- 3Rúben DiasBooked at 40mins
- 14Laporte
- 11Zinchenko
- 20Bernardo Silva
- 16RodriBooked at 43mins
- 8GündoganSubstituted forFodenat 56'minutes
- 7Sterling
- 9Gabriel Jesus
- 10GrealishSubstituted forDe Bruyneat 74'minutes
Substitutes
- 2Walker
- 5Stones
- 6Aké
- 13Steffen
- 17De Bruyne
- 25Fernandinho
- 26Mahrez
- 47Foden
- 80Palmer
Wolves
Formation 3-5-2
- 1Sá
- 23Kilman
- 16Coady
- 27Saïss
- 22Nélson Semedo
- 32DendonckerBooked at 78minsSubstituted forPodenceat 87'minutes
- 8NevesBooked at 45minsSubstituted forMachado Trincãoat 82'minutes
- 28João Moutinho
- 3Aït-Nouri
- 9JiménezBooked at 45mins
- 37TraoréSubstituted forHwang Hee-chanat 67'minutes
Substitutes
- 2Hoever
- 5Marçal
- 10Podence
- 11Machado Trincão
- 15Boly
- 17Fábio Silva
- 21Ruddy
- 26Hwang Hee-chan
- 39Cundle
- Referee:
- Jonathan Moss
- Attendance:
- 52,613
Match Stats
- Possession
- Home71%
- Away29%
- Shots
- Home24
- Away2
- Shots on Target
- Home10
- Away1
- Corners
- Home14
- Away1
- Fouls
- Home12
- Away5
Live Text
Post update
Full Time
Second Half ends, Manchester City 1, Wolverhampton Wanderers 0.
Post update
Corner, Wolverhampton Wanderers. Conceded by Ederson.
Post update
Attempt saved. Maximilian Kilman (Wolverhampton Wanderers) header from the right side of the six yard box is saved in the top centre of the goal. Assisted by Daniel Podence with a cross.
Post update
Attempt blocked. Phil Foden (Manchester City) right footed shot from the centre of the box is blocked. Assisted by Raheem Sterling.
Post update
Attempt saved. Raheem Sterling (Manchester City) right footed shot from outside the box is saved in the bottom left corner.
Post update
Attempt saved. Phil Foden (Manchester City) left footed shot from the left side of the box is saved in the centre of the goal. Assisted by Oleksandr Zinchenko.
Substitution
Substitution, Wolverhampton Wanderers. Daniel Podence replaces Leander Dendoncker.
Post update
Foul by Oleksandr Zinchenko (Manchester City).
Post update
Nélson Semedo (Wolverhampton Wanderers) wins a free kick in the defensive half.
Substitution
Substitution, Wolverhampton Wanderers. Trincão replaces Rúben Neves.
Booking
João Cancelo (Manchester City) is shown the yellow card for a bad foul.
Post update
Foul by João Cancelo (Manchester City).
Post update
Hwang Hee-Chan (Wolverhampton Wanderers) wins a free kick in the defensive half.
Post update
Attempt saved. Rodri (Manchester City) header from the centre of the box is saved in the centre of the goal. Assisted by Phil Foden with a cross.
Post update
Corner, Manchester City. Conceded by José Sá.
Post update
Attempt saved. Gabriel Jesus (Manchester City) left footed shot from a difficult angle on the left is saved in the bottom left corner. Assisted by Kevin De Bruyne.
Post update
Foul by Rodri (Manchester City).
Post update
Rayan Aït-Nouri (Wolverhampton Wanderers) wins a free kick in the defensive half.
Booking
Leander Dendoncker (Wolverhampton Wanderers) is shown the yellow card for a bad foul.

- Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment

Comments
Join the conversation
Never a penalty Mr Moss.
Quote
“How that was a penalty I will never know, that is an incredible decision.”
All the empty seats behind that goal would agree.
You got robbed Wolves.
Never a pen but you know how it works when playing City.
From a neutral.
Wolves: 5 fouls = 3 bookings = 60% yellow card rate.
Man of the match: Jonathon Moss (Man City).
Needed a lot of help there.
Jimenez decision: Show consistency across all the matches as that is NOT currently happening.
Penalty: a “Big 6 decision” given.
Moss obviously offended by the choice of deodorant Moutinho is using!
Garbage. On the balance if play, it would have been 0-0 without that joke of a penalty decision. Moss needs to retire. Why do they keep refs who keep on making themselves the talking point over and over.
If I made a mess like that at work I'd be out on my ear.
But this week they were robbed blind by an incapable referee, the soft yellow and the quite ridiculous penalty decision. Unlucky, and yes I would have said the same if it was given to liverpool . Good win for City but they scraped and undeserved win thanks to John Moss.