Gianluigi Donnarumma - 5/10:
A frustrating afternoon for the Italian, who faced just two shots on target and conceded from both. While Jackson's opener was clinical, Donnarumma was guilty of a costly error for the second goal in the 60th minute, allowing Jackson's effort to squirm underneath him far too easily. He had little to do with his hands otherwise, though he remained heavily involved in the build-up play as City dominated possession.
Abdukodir Khusanov - 6/10:
Starting at right-back before shifting into central defence after the break, Khusanov was the most stable member of the starting back four. He managed to stay out of the referee's notebook and remained diligent in his positioning, contributing to City's 47 clearances as they tried to mop up Villa's counter-attacking long balls.
Ruben Dias - 5/10:
The captain struggled to organise a defensive line that looked uncharacteristically vulnerable. His risky crossfield pass put Marc Guehi under pressure in the build-up to the opening goal, and while his general distribution remained of a high standard, his inability to contain Jackson's movement was a decisive factor in the defeat.
Marc Guehi - 4/10:
A difficult outing for the centre-back. His poor control from a Dias pass allowed John McGinn to rob the ball and set up Jackson for Villa's sixth-minute opener, and he was later cautioned in the 32nd minute for a cynical foul. Struggling with the pace of Villa's transitions, he was hauled off at half-time by Maresca in a tactical reshuffle.
Josko Gvardiol - 6/10:
Operating in his hybrid role, Gvardiol was a constant outlet on the left, contributing to City's 27 crosses. Defensively, he was less exposed than his central team-mates, though he struggled to offer cover when Villa shifted the play rapidly to the opposite flank during their counter-attacks.