Resurgent Coventry claimed their fourth win in five League One matches at the expense of Colchester.
Franck Moussa poked in a cross from Gary McSheffrey before William Edjenguele then headed a quick second.
McSheffrey had initially been adjudged offside in the build-up to Edjenguele's goal, but referee Trevor Kettle overturned the decision.
Tom Eastman's header made it 2-1, but Sky Blues top scorer David McGoldrick tapped in a third late on.
McGoldrick's 12th goal of the campaign (and his 10th in as many games) helped Coventry move above Colchester up to 15th in the League One table.
VIEW FROM THE DRESSING ROOM
Colchester United manager Joe Dunne told BBC Essex:
"I'm absolutely stumped. The second goal has completely changed the game.
"The guy who scored is not offside, but there's a guy attacking the ball and going into my goalkeeper who's in an offside position. How can he not be interfering with play?
"Generally I think officials have a hard enough job as it is, but we've had a couple of calls now, in the last three games, that have aided in us not being able to win.
"It's very disappointing because I think we've been in the game all night."
Sky Blues boss Mark Robins told BBC Coventry & Warwickshire:
"You won't see a better goal than our first one. It was outstanding. The second goal was a good finish and the third was clinical.
"They put us under a lot of pressure, but we dealt with everything they threw at us.
"Clinton Morrison came on and, at the end of a game, that could have been a story as we all know what he can do.
"But we held firm, broke away and scored a great third goal on a counter attack."
Live Text Commentary
Full Time The referee blows his whistle to end the game.90:00 +1:44
Franck Moussa takes a shot. Save by John Sullivan. Corner taken by Carl Baker from the left by-line, clearance by Magnus Okuonghae.90:00 +1:11
Cyrus Christie concedes a free kick for a foul on Jabo Ibehre. Michael Rose takes the free kick.89:00
Free kick awarded for an unfair challenge on Adam Barton by Tom Eastman. Carl Baker takes the direct free kick.86:40
The assist for the goal came from Adam Barton.86:40 Goal scored
Goal! - David McGoldrick - Colchester 1 - 3 Coventry A goal is scored by David McGoldrick from inside the box to the bottom right corner of the goal. Colchester 1-3 Coventry.85:57 Booking
Booking The referee shows Anthony Wordsworth a yellow card.85:41
Free kick awarded for a foul by James Bailey on Clinton Morrison. Direct free kick taken by John Sullivan.84:40
Anthony Wordsworth crosses the ball, Brian Wilson takes a shot. Save by Joe Murphy.83:43
Franck Moussa has a shot on goal from outside the box which misses right.82:09 Substitution
Substitution Andy Bond joins the action as a substitute, replacing Craig Eastmond.82:09
Clinton Morrison gives away a free kick for an unfair challenge on Richard Wood. Indirect free kick taken by Joe Murphy.79:58
Freddie Sears fouled by Blair Adams, the ref awards a free kick. Freddie Sears takes the direct free kick. Corner taken by Anthony Wordsworth from the right by-line, Tom Eastman takes a shot. Joe Murphy makes a save.79:25
Carl Baker takes a shot. John Sullivan makes a save.78:13
The offside flag is raised against Steven Jennings. John Sullivan restarts play with the free kick.77:44
David McGoldrick takes a shot. Save by John Sullivan.76:53 Substitution
Substitution Adam Barton joins the action as a substitute, replacing Gary McSheffrey.76:36
Carl Baker produces a right-footed shot from just outside the penalty area that goes harmlessly over the target.75:02
Unfair challenge on Brian Wilson by Gary McSheffrey results in a free kick. The free kick is swung in left-footed by Anthony Wordsworth, clearance made by William Edjenguele.73:30
The referee blows for offside against Clinton Morrison. Joe Murphy restarts play with the free kick.
Shot from just outside the box by David McGoldrick goes over the bar.71:04 Booking
Booking Steven Jennings goes into the book for unsporting behaviour.70:02
Assist by Anthony Wordsworth.70:02 Goal scored
Goal! - Tom Eastman - Colchester 1 - 2 Coventry Tom Eastman scores a headed goal from inside the penalty area. Colchester 1-2 Coventry.69:32
Free kick crossed by Anthony Wordsworth,69:32 Booking
Booking Gary McSheffrey is shown a yellow card.69:16
Foul by Carl Baker on Freddie Sears, free kick awarded.67:53
David McGoldrick challenges Craig Eastmond unfairly and gives away a free kick. John Sullivan takes the direct free kick.67:53 Booking
Booking David McGoldrick booked.66:06
Steven Jennings restarts play with the free kick.66:06 Booking
Booking Clinton Morrison receives a yellow card.64:10
Free kick awarded for an unfair challenge on Anthony Wordsworth by Steven Jennings. Free kick crossed left-footed by Anthony Wordsworth, Richard Wood makes a clearance.62:52
Unfair challenge on Craig Eastmond by Steven Jennings results in a free kick. John Sullivan takes the indirect free kick.61:18 Substitution
Substitution Clinton Morrison comes on in place of Ian Henderson.61:18
Free kick awarded for a foul by Michael Rose on Carl Baker. Steven Jennings takes the direct free kick.59:09
Shot from just outside the area by Cyrus Christie misses to the right of the target.57:05
Cyrus Christie produces a right-footed shot from the edge of the box and misses to the left of the goal.54:06
Inswinging corner taken left-footed by Anthony Wordsworth from the right by-line, Richard Wood manages to make a clearance.53:24
A cross is delivered by Cyrus Christie, Header on goal by David McGoldrick from inside the box goes harmlessly over the target.50:33
Ian Henderson challenges Cyrus Christie unfairly and gives away a free kick. The ball is delivered by Carl Baker, David McGoldrick takes a shot. Blocked by Tom Eastman. David McGoldrick produces a right-footed shot from inside the area that goes over the bar. Anthony Wordsworth takes a outswinging corner from the left by-line played to the near post, clearance made by Blair Adams.50:04
The ball is sent over by Blair Adams, Tom Eastman makes a clearance.48:17
Unfair challenge on Brian Wilson by Gary McSheffrey results in a free kick. Indirect free kick taken by Magnus Okuonghae.47:42
The offside flag is raised against Gavin Massey. Joe Murphy restarts play with the free kick.45:01
The match restarts for the second half.45:01 Substitution
Substitution Gavin Massey on for Marcus Bean.45:00 +1:58 Half time
Half Time The match has reached half-time.42:34
Shot by Michael Rose from a long way out goes over the target.41:11 Booking
Booking The referee shows Ian Henderson a yellow card for unsporting behaviour.38:45 Booking
Booking Booking for Marcus Bean for dissent.36:55
Assist by Carl Baker.36:55 Goal scored
Goal! - William Edjenguele - Colchester 0 - 2 Coventry William Edjenguele grabs a headed goal from inside the six-yard box. Colchester 0-2 Coventry.35:11
Outswinging corner taken right-footed by Carl Baker from the right by-line to the near post. The ball is crossed by Carl Baker,33:30
The assist for the goal came from Gary McSheffrey.33:30 Goal scored
Goal! - Franck Moussa - Colchester 0 - 1 Coventry Franck Moussa fires in a goal from close in low into the middle of the goal. Colchester 0-1 Coventry.32:41
Centre by Brian Wilson.30:22
Freddie Sears takes a shot. Anthony Wordsworth takes the inswinging corner, Tom Eastman produces a header from deep inside the six-yard box that clears the bar.28:21
Marcus Bean takes a shot. The assistant referee signals for offside against Jabo Ibehre. Free kick taken by Joe Murphy.27:52
Blair Adams concedes a free kick for a foul on Craig Eastmond. Magnus Okuonghae takes the direct free kick.25:12
William Edjenguele produces a left-footed shot from long distance which goes wide right of the goal.22:21
Unfair challenge on Jabo Ibehre by Richard Wood results in a free kick. Anthony Wordsworth restarts play with the free kick.20:37
Brian Wilson takes a shot. Save by Joe Murphy.18:00
The ball is delivered by David McGoldrick, Gary McSheffrey takes a shot. Save by John Sullivan.16:01
James Bailey challenges Marcus Bean unfairly and gives away a free kick. Michael Rose restarts play with the free kick.15:24
Shot from just outside the area by Carl Baker misses to the right of the target.14:27
Craig Eastmond challenges Steven Jennings unfairly and gives away a free kick. Richard Wood takes the free kick.13:35
Centre by Cyrus Christie, clearance made by Brian Wilson.12:44
Shot by Anthony Wordsworth from outside the box goes over the target.11:58
Anthony Wordsworth takes the inswinging corner, James Bailey manages to make a clearance.6:10
Carl Baker crosses the ball, save made by John Sullivan.4:07
Carl Baker takes the outswinging corner, clearance by Magnus Okuonghae.2:08
The assistant referee flags for offside against Carl Baker. John Sullivan restarts play with the free kick.0:00
The game kicks-off.
Live data and text provided by our data suppliers