Ryan Lowe's strike lifted Tranmere off the foot of League One and inflicted Bradford's first home defeat.
The first half was goalless although Rovers midfielder Chris Atkinson came close with a header while City's Mark Yeates had a penalty claim turned down.
After the break Tranmere midfielder Max Power volleyed wide, before Lowe fired them ahead from inside the box.
Yeates's shot clipped the bar and Gary Jones almost equalised for City in injury-time but Tranmere held on.
There was some anger from the Bradford bench in the first-half when Tranmere skipper Ian Goodison looked to have caught Kyel Reid with an elbow in front of the dug-out, but referee Darren Drysdale issued a caution rather than a red card.
Phil Parkinson's Bantams were unbeaten in their last seven matches, winning five, while Rovers - who climb to 21st in the table - were without a win in five.
Sorry, we were unable to load match stats, please try again.