Port Vale 0 Bradford City 1
After ten minutes of tussling between the two teams, Craig Bentham released some of his frustration by hitting an impressive 25-yard shot that narrowly sailed past the goalkeeper's left-hand post.
The home side replied with a chance of their own a minute later when Akpo Sodje played a neat one-two with Ross Gardner but the resulting shot was brilliantly saved by Donovan Ricketts.
Poor marking by Danny Whitaker almost let in Marc Bridge-Wilkinson for an opening goal but a solid stop by Joe Anyon prevented the former Vale player from scoring with his head.
After a quiet spell without much action, wing-back Jason Talbot tried to inject some energy into his side's attack before half-time with a curling long-range effort that failed to hit the target.
Michael Husbands looked keen to improve a patchy first-half performance only two minutes after the restart when he blasted a shot across the face of goal from the right byline.
The Bantams took the lead in the 54th minute when Jermaine Johnson tore down the right side to finally supply a delicate cross that Steven Schumacher duly dispatched past Anyon from six yards.
Another Johnson run almost ended in the visitors' second of the afternoon but Anyon stood up well once more to parry.
The Valiants weren't dead and buried yet and almost conjured an equaliser when Husbands' cross was met by Paul Harsley but the midfielder's 15-yard shot was pushed over the crossbar by Ricketts.
Substitute Nathan Lowndes only lasted 12 minutes on the pitch when a sickening collision with Ricketts looked to have hurt the striker but, despite getting back to his feet, he was substituted.
Any attempts to push on for an equaliser looked increasingly unlikely as an unbalanced formation left Vale with no fresh attacking ideas against Bradford's resolute defence.