Adam Johnson scored against his former club as Sunderland shocked Manchester City with a hard-fought victory.
City had the better of the first half as Vincent Kompany hit the bar and Simon Mignolet made good saves from Yaya Toure and David Silva.
Sunderland took the lead when Johnson cut in from the right and his 25-yard shot beat Joe Hart at his near post.
City's lack of goals worries Mancini
Sergio Aguero was denied late on as City fell seven points behind Manchester United in the title race.
The Black Cats dealt admirably with everything the champions threw at them in the final 10 minutes, and their margin of victory could have been greater had they shown more composure when catching City on the counter-attack.
City will rue a number of missed chances in the first half, while their lack of width was exposed in the second as they struggled to break down the organised and determined Black Cats.
Manchester City have lost on each of their last three league visits to Sunderland - all by a 1-0 scoreline. This equals Roberto Mancini's worst losing streak at another stadium. He also lost three in a row at Everton from 2010 to 2012.
It is the third time in as many seasons that this fixture has ended in a 1-0 victory for the hosts, who have now won three of their last four matches to move seven points clear of the relegation zone.
Such worries will not linger for too long, on the evidence of this resolute performance.
The visitors started strongly, with Kompany's header hitting the bar from a corner and Yaya Toure's follow-up shot being saved by Mignolet.
The Belgium keeper kept his side in the game with another superb save from Silva after the Spaniard had been teed up from six yards by Aguero.
The skill and movement of City's front three - Aguero, Silva and Carlos Tevez - looked like overwhelming the hosts, but Sunderland became much more compact after the half-hour.
Steven Fletcher brought a good save out of Hart before half-time as Sunderland began to show belief.
The spirit which became the foundation of their performance was epitomised when winger James McClean tracked back and denied Tevez with a superbly-timed tackle.
Sunderland were terrific - O'Neill
City looked increasingly short of ideas in the second half, and it was no surprise when Johnson gave Sunderland the lead with a left-footed shot which was deflected in by Hart.
City complained the goal should not have been allowed to stand after Pablo Zabaleta appeared to be fouled by Craig Gardner in the build-up, but their protests were waved away.
Sunderland grew in stature and, led by on-loan Spurs full-back Danny Rose's superb defensive play, they repelled almost everything City threw at them.
Aguero had a shot turned wide by Mignolet and substitute Edin Dzeko fired straight at the keeper.
At the other end, City were hanging on as Stephane Sessegnon broke clear through the middle and was denied by Hart before Fraizer Campbell shot straight at the England keeper from only six yards.
City threw on defender Joleon Lescott as an emergency striker, but it only served to highlight their desperation and lack of ideas as they slipped to their first away defeat of the season.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.