West Ham's Michail Antonio scored a stunning overhead kick as Manchester City were held to a 1-1 draw, dropping more points in the Premier League title race.
The home side deservedly led at half-time thanks to Antonio’s brilliant 18th-minute strike, prompting Pep Guardiola to replace an anonymous Sergio Aguero with Phil Foden.
It took just five minutes for the England midfielder to fire in an equaliser, and he was the catalyst for a much-improved self-half City performance - though still a long way from their best.
And they should have taken all three points when Raheem Sterling was played in by substitute Kevin De Bruyne late on, but a heavy touch from the City forward allowed Lukas Fabianksi to smother his shot.
The Hammers will be encouraged by another point, following on from Sunday’s dramatic comeback at Tottenham, and given that their record in this fixture is atrocious.
But injuries have taken their toll on City, so much so that Guardiola named an unchanged starting line-up for the first time since October 2017, some 172 games ago.
Guardiola clearly wanted to build on the momentum from Wednesday’s Champions League win over Porto, but instead they looked weary in the first half and it was West Ham who took the initiative with Antonio firing them ahead.
Tomas Soucek began the move down the City left, laying the ball off to his Czech mate Vladimir Coufal.
Right-back Coufal, making his home debut, swung in a cross which Antonio, despite being surrounded by five defenders and Ruben Dias, acrobatically hooked over his shoulder and past Ederson.
City claimed Soucek had handled in the build-up but a VAR check ruled otherwise.
It was only the second goal West Ham had managed in six fixtures against the same opponents at the London Stadium – City had racked up 22 over the previous five.
Guardiola replaced Aguero with Foden and moved Sterling, who had been kept very quiet by Coufal, into a central striker’s role.
Within six minutes they were level, Cancelo tearing past Coufal and crossing for Foden to turn and fire home.
West Ham lost Antonio, and much of their attacking thrust, to injury and City pushed for a winner with Fabianski holding a De Bruyne free-kick before Arthur Masuaku came up with a goal-saving challenge to deny Mahrez.
Pablo Fornals fluffed an excellent chance for the Hammers when he made a mess of an attempted lob over Ederson, and Fabianski came to West Ham’s rescue to deny Sterling and Mahrez at the death.
Related football content
Responsible gambling
We are committed in our support of responsible gambling. Recommended bets are advised to over-18s and we strongly encourage readers to wager only what they can afford to lose.
If you are concerned about your gambling, please call the National Gambling Helpline on 0808 8020 133, or visit begambleaware.org.
Further support and information can be found at GamCare and gamblingtherapy.org.