Coventry City's ten-game unbeaten streak was finally brought to an end at the Ricoh Arena as Shrewsbury took all the points courtesy of Marvin Morgan.
The tall centre-forward notched a textbook poacher's goal early in the second half which proved the difference between the two sides despite City's numerous near misses.
Mark Robins made just one change to the side that beat MK Dons away at the weekend, opting to go with David McGoldrick after serving a one-match ban at the expense of Stephen Elliott.
The City bench also had two notable additions with the return of loanee James Bailey and a first look at striker Leon Clarke.
McGoldrick very nearly highlighted why Robins brought him straight back into the starting line-up after just 17 seconds when he burst into the area and poked a shot just wide of the near post.
It was the first signs of what was to be a frantic first half that City dominated, the Sky Blues carving out another opportunity after seven minutes when Gary McSheffrey's cut back found Carl Baker whose shot from ten yards was well saved by Shrews 'keeper Chris Weale.
Shrewsbury's chances in the first 45 minutes were few and far between but when they did create an opening they looked dangerous, a great example beign Luke Rodgers working his way around Cyrus Christie and only being denied by a brave stop from Joe Murphy.
City showed their desire to try an opening the scoring by any means including McSheffrey after 19 minutes when his 25-yard drive beat Weale but not the crossbar as it hit the underside and bounced down onto the line before Jermaine Grandison cleared the danger for the visitors.
Shrewsbury went close again themselves three minutes after the half hour when a low ball across the six yard box from Joe Jacobson narrowly missed the outstretched boot of Morgan when all it needed was a touch.
The second half was seven minutes old when Robins handed Leon Clarke his debut for the Sky Blues and the change very nearly had the desired effect as Clarke disrupted the Shrews' back four enough to present McSheffrey with a cast-iron opportunity he wasted by chipping wide.
Clarke then nearly opened his account for City after being on the pitch for just two minutes when he glanced a header from Blair Adams' whipped in cross just wide of the far post.
Baker then had a gilt-edged opportunity of his own two minutes before the hour when he picked up the ball ten yards out central to goal but cvould only drag his effort wide.
It was Shrewsbury that got the opener though on 62 minutes which was unfair on Murphy who had made a spectacular reflex save to deny Asa Hall's close-range header only to see Morgan react first to the loose ball to poke home from three yards.
The Sky Blues kept pressing though and Clarke nearly grabbed a leveller for City on 76 minutes after a well-worked corner kick saw McSheffrey's delivery pick out the striker on the penalty spot, his volley only stopped by a goalline clearance from Grandison.
City were racking up the close calls and near misses and this continued with ten minutes to go when McSheffrey pressed forward and fired at goal, Weale only able to parry to the effort but then provide a crucial block as Clarke steamed in for the follow up.
Attendance: 15,185 (1,413 away)
Coventry City: Murphy, Wood, Christie, Edjenguele, Adams, Moussa (Barton 80), Baker (c), Jennings (Bailey 72) , Fleck (L Clarke 52), McSheffrey, McGoldrick
Subs: Dunn (GK), J Clarke, Cameron, Elliott
Shrewsbury Town: Weale, Grandison, Jacobson, Jones, Purdie, Richards (c), Morgan, Taylor (Mambo 90), Goldson, Wildig (Hall 18), Rodgers (Bradshaw 83)
Subs: Anyon (GK), Woods, Smith, Gwilliams
Referee: D Deadman
Assistant Referees: R Atkin, R Bartlett
Fourth Official: S Plane