Preston opened the scoring in the 34th minute when a short throw-in by Paul McKenna on the left fell to Brian O'Neil who fired over a pinpoint cross which Ricardo Fuller met with a six-yard bullet header.
Seven minutes later Marlon Broomes was adjudged to have fouled Gary McAllister in the penalty box and the referee awarded a penalty to Coventry, which Steve Staunton hit left-footed into the top left-hand corner of the net sending the Preston keeper the wrong way.
Fuller made it 2-1 just before half time when Richard Cresswell found McKenna and he put Fuller through and he drew the keeper before scoring from close range.
Eddie Lewis went off with an injured left knee and was replaced by Michael Keane. The first half lasted 52 minutes and Broomes was booked for a foul on Youssef Safri after 51 minutes.
In the 60th minute, Patrick Suffo was sent off for a foul on Broomes and Chris Lucketti was booked for Preston and Safri was booked for protesting.
Preston made it 3-1 when good work by McKenna and O'Neil found Cresswell and he hit a left-foot shot from the left-hand side in at the near post.
Coventry made it 3-2 when a long pass by Michael Doyle from the left found Andy Morrell and he hit a 20-yard left-foot shot into the bottom corner of the net.
Preston substitute Keane scored in the 87th minute with a shot from just inside the penalty box, after a cross by Fuller from the right wing.
Right at the end of the match, Doyle was also sent off for Coventry for a foul on Lee Cartwright on the touchline, but the fourth official added another five minutes before the game finished after a total of 103 minutes.
Preston: Gould, Jackson, Lucketti, Broomes, Alexander, Etuhu, O'Neil, McKenna, Lewis, Fuller, Cresswell. Subs: Cartwright, Keane, Healy, Lynch, Lucas.
C.Lucketti, 61, unsporting behaviour
Coventry: Shearer, Whing, Konjic, Staunton, Warnock, Barrett, McAllister, Safri, Doyle, Adebola, Suffo. Subs: Arphexad, Shaw, Mansouri, Jorgensen, Morrell.
M.Doyle, 90, violent conduct
Referee: E Evans (Manchester)