Manchester City extended their winning run to 20 matches and moved 13 points clear at the top of the Premier League as John Stones' second-half strike was enough to seal victory over a resilient West Ham United.
Stones fired home his fourth goal of the season from Riyad Mahrez's neat lay-off to keep Pep Guardiola's side in control of the title race.
Fourth-placed West Ham gave City a decent game at Etihad Stadium and fought back to level through Michail Antonio before the break, after Stones' central-defensive partner Ruben Dias had put the hosts in front.
But Guardiola, likened to celebrity chef Heston Blumenthal by Hammers counterpart David Moyes before Saturday's fxture, once again came up with the right ingredients as his side improved following the second-half introductions of Gabriel Jesus and Phil Foden.
City's unbeaten record now stretches to 27 games and they will equal their longest run without defeat under Guardiola if they do not lose against Wolves on Tuesday.
Man City: Ederson (5), Walker (6), Dias (8), Stones (8), Zinchenko (7), Gundogan (6), Fernandinho (6), Mahrez (6), De Bruyne (7), Torres (6), Aguero (5)
Subs: Gabriel Jesus (6), Foden (6), Rodri (NA)
West Ham: Randolph (6), Johnson (5), Coufal (7), Dawson (7), Diop (6), Cresswell (6), Soucek (6), Rice (6), Lingard (7), Fornals (6), Antonio (7)
Subs: Benrahma (NA), Bowen (NA)
Man of the match: Ruben Dias.