On-loan QPR striker Tom Hitchcock put the visitors in front against the run of play in the 14th minute.
Strike partner Chuks Aneke slipped a throughball between the legs of defender Dan Seaborne and Hitchcock coolly struck across goalkeeper Joe Murphy and into the bottom corner from the right side of the penalty area.
Coventry were deservedly level nine minutes before the break when Chris Maguire's inswinging corner was flicked home by Franck Moussa.
City then took the lead in the 56th minute when Callum Wilson got up to convert a penalty after he was felled by Crewe keeper Ben Garratt.
The hosts looked to be in the ascendency after that but Crewe equalised in the 66th minute.
Maguire and Jordan Clarke gave the ball away in midfield, allowing Hitchcock to race through and square for Aneke to tap in.
City pushed for a winner and only a brave block from George Evans prevented Leon Clarke from finding it.