Ederson Some incredible passing from his own six-yard box, and he made a vital save right at the death 7
Kyle Walker His pace was important, and his run created City's best chance. Forced off through injury 7
John Stones Absolutely magnificent performance, calm when needed, aggressive, and his timing had to be spot on. Might have scored as well 9
Aymeric Laporte Not far behind Stones in the hero stakes, heading everything, getting his positioning perfect so Ederson had no saves 8
READ MORE: Man City stole trademark Atletico tactic to survive Champions League battle
Joao Cancelo His defending has improved enormously, and he did a solid job in both full-back roles 7
Rodri Bossed midfield in the first half but he also flagged and was a little over-run as Atleti stepped it up 7
Ilkay Gundogan Made the most of the spaces Atleti were leaving, but should have scored when he hit the post 7
Bernardo Silva No shortage of industry but his incessant running took its toll and he had to be subbed 7
Riyad Mahrez His pass created City's big first-half chance, and he remained a threat 7
Kevin De Bruyne Tried to drive City forward but Sunday's efforts seemed to have taken something out of him 6
Phil Foden Took a hefty whack that left him with a Zabaleta-esque head bandage, but still perky and challenging 7
Subs
Raheem Sterling
(for De Bruyne 65) restored City's threat 7
Nathan Ake
(for Walker 74) slotted in at left-back 7
Fernandinho
(for Bernardo 79) brought some guile 7
Not used: Steffen, Carson, Dias, Grealish, Zinchenko, Delap, Edozie, McAtee, Lavia
Sign up to our City newsletter so you never miss an update from the Etihad Stadium this season.