A brave battle by Shrewsbury Town went unrewarded in a thrilling Carling Cup first round tie.
The visitors were unlucky not to score in the opening period and found themselves a goal down four minutes after the break when Calvin Zola netted his first goal for Tranmere with a shot into the left-hand corner after being set free by Iain Hume.
It needed a terrific save by Rovers keeper John Achterberg to deny a 40-yard effort by Darren Moss in the 61st minute, but Town drew level on 68 minutes. Luke Rodgers blasted home from close range following a free-kick into the box by Ryan Lowe.
The Merseysiders tipped the balance in the 80th minute following a long clearance by Achterberg. Hume was again the creator to set up Jason McAteer who found that the target with a lobbed effort from 14 yards.
Scott Howie in the Town goal got a touch but it was enough to keep the ball out.
John Grant had a great chance late on to force extra-time but miscued his shot which eventually went off a defender for a fruitless corner.
Grant was unlucky with three good first-half efforts. He volleyed over with one of them and shaved the outside of a post with another.
Howie did well to turn aside a deflected shot by David Beresford in the 32nd minute and Zola had an effort blocked on the line five minutes later and then deep in first-half injury-time Howie made flying save from a Paul Hall header.
Beresford was always lively for the victors and there was some fine work from McAteer, Hume and Mike Jackson.
Tranmere defender Ryan Taylor collected the only caution of the game for a 45th minute foul.
Ben Smith and Ryan Lowe were superb in midfield for the Shrews. Skipper Darren Tinson did well in defence and Jamie Tolley proved lively after going on as a 59th minute substitute.