Luke Moore came off the bench to score the only goal of the match as Swansea City claimed all three points to knock Manchester City off the top of the Premier League table.
The hosting Swans controlled large parts of the opening half and had a good chance to take the lead when Man City goalkeeper Joe Hart brought down Wayne Routledge inside the area with six minutes played.
However, Hart made amends by guessing correctly to turn Scott Sinclair's penalty wide of goal.
Roberto Mancini's City struggled to create chances in the first half, with Mario Balotelli wasting their best effort from a narrow angle.
Substitute Sergio Aguero had a chance to put Man City in front early in the second half, but he shot into the side netting after being put through by Mario Balotelli.
Micah Richards then called Swansea goalkeeper Michel Vorm into action with a low drive just after the hour mark.
Just as the match looked to be heading for a draw, Routledge crossed for an unmarked Moore, who sent a headed effort beyond the reach of Hart in the away goal.
City responded with a long range strike from Kolo Toure, but Vorm was equal to the defender's effort.
Richards thought he had found a leveller in injury time, but his headed effort was ruled out for offside.
The visitors continued to search for an equaliser, but they were unable to find a way past Vorm as they surrender top spot to rivals Manchester United.