Tyler Walker's goal gave Coventry their second win in 11 games as they moved three points clear of the Sky Bet Championship relegation zone after a 1-0 win over Cardiff.
Walker, a summer signing from Nottingham Forest, pounced to score the winner after 54 minutes, dinking over Alex Smithies after Sean Morrison failed to guide a backpass to his keeper.
Smithies had kept Cardiff in it until that point, thwarting Jordan Shipley, Ryan Giles and Gustavo Hamer but his misunderstanding with his skipper led to a third defeat in five games for the Bluebirds.
Cardiff had felt aggrieved not to be ahead at half-time as two Coventry defenders collided to divert a free-kick into their own net but Morrison was adjudged to have pushed one into the other.
Smithies' first save came on 12 minutes as Hamer dinked a smart ball over the Cardiff defence to find Shipley but the visiting keeper spread himself well to save.
Giles then twice went close for the hosts with a deflected curling effort that landed on the roof of the net and a well-hit strike from distance that Smithies fielded well.
Cardiff almost went ahead in fortunate fashion after 19 minutes as Joe Ralls' cross nearly sneaked in but Marko Marosi clawed it away and Marlon Pack glanced a header wide from the resulting corner.
Winger Giles, on loan from Wolves, was impressing for the Sky Blues and he sprinted from his own half before cutting in on his left foot and forcing a diving save from Smithies.
A minute later, Cardiff thought they were ahead as Pack's dangerous inswinging free-kick flew in off a Coventry body but referee Jeremy Simpson disallowed the goal for a nudge by Morrison.
Coventry had a golden chance to go ahead early in the second half as Sam McCallum's left-wing cross picked out Hamer unmarked eight yards out but his powerful header was straight at Smithies.
But the mix-up between Morrison and Smithies gifted them their 54th-minute lead and Walker could have had a second two minutes later, blazing wide from just inside the box after more lax defending.
Marosi had to go off in injury time after a nasty collision with Morrison but it mattered little as the Sky Blues kept back-to-back league clean sheets for the first time this season and left Cardiff with just one win in eight.
Coventry City: Maroši (Wilson 90+5), Dabo, McFadzean, Hyam, McCallum, Sheaf, Kelly (C), Hamer (O’Hare 78), Shipley (Østigård 90), Giles, Walker.
Subs not used: Thompson, Allen, Bakayoko, Bapaga, Jobello, Biamou.
Cardiff City: Smithies, Bacuna, Morrison (C), Nelson, Bennett, Pack (Vaulks 67), Ralls (Harris 90+5), Wilson, Hoilett (Ojo 59), Murphy (Glatzel 59), Moore.
Subs not used: Phillips, Bamba, Benković, Bagan, Whyte.