Manchester City closed the gap on Premier League leaders Liverpool to four points as Leroy Sane’s winner ended the Reds’ unbeaten start to the season at Etihad Stadium.
Sane fired into the bottom corner 18 minutes from time after Roberto Firmino had pulled the visitors level.
Sergio Aguero scored a superb opener from a narrow angle in an incident-packed first half.
Sadio Mane had earlier struck a post with John Stones clearing off the line.
The defender’s initial clearance rebounded off goalkeeper Ederson and was agonisingly close to ending up in the hosts’ net before Stones hooked it away.
Liverpool also felt City captain Vincent Kompany was lucky to escape with a yellow card for a challenge on Mohamed Salah.
The win sees City move into second place, two points above Tottenham.