Attendance: 5,148 (968 visitors)
Jordy Hiwula's sixth goal of the season helped to grab a share of the spoils for City from their trip to Walsall this Saturday.
Hiwula, who has previously enjoyed two loan spells at Walsall, pounced to fire home on the rebound from close range after Saddlers shot-stopper Neil Etheridge had saved his initial shot.
Hiwula's goal in front of City's travelling supporters levelled things up for Stuart McCall's men just four minutes after Isaiah Osbourne had fired Walsall into the lead shortly after the restart.
In an entertaining encounter, City engineered the first chance of note when Hiwula flicked James Meredith's cross into Mark Marshall's path in just the fourth minute but the winger's rising drive was brilliantly tipped over by Etheridge.
Later in the half, Etheridge was also forced into smart saves to repel drives from both Josh Cullen and Hiwula.
Walsall had their moments in the opening period but they struggled to trouble Colin Doyle too greatly in the Bantams' goal.
In a search for goals, McCall switched to a back three for the second period, bringing on attacker Marc McNulty for Darby.
Buoyed by the presence of an extra forward on the pitch, City initially started quite brightly after the interval, with Cullen seeing another shot saved by Etheridge.
Walsall were soon in front, however, just four minutes after the break when they took advantage of a swift attack forward.
Scott Laird's ball into the middle dropped into the path of Osbourne, the midfielder moved into a shooting position before drilling in a low angled drive past Doyle and into the far bottom corner.
City nearly had the perfect response to going behind when Meredith teed up Hiwula but the striker skewed wide with a shot from a great position roughly eight yards out.
Hiwula made amends for that miss in City's next meaningful attack though, the forward firing in from close range after Etheridge had blocked his first effort.
Following Hiwula's equaliser, both sides created chances in their quest to claim victory.
Simeon Jackson and Jason McCarthy both saw well-struck shots pushed away by Doyle while McCarthy also had a header cleared from right in front of goal by a watchful Cullen.
For City, James Hanson and McNulty had efforts saved while Marshall fired wide from inside the box.
Neither side could find the game's third goal, however, meaning City finished their away fixtures for 2016 with a point in their pocket.
FT: Walsall 1 Bradford City 1
90+1min: YELLOW CARD - Vincelot is booked for a late challenge on Osbourne just inside Walsall's half of the pitch.
90min: There will be three minutes of time added on at the end of the match.
84min: SUB - Walsall bring on Erhun Oztumer for Bakayoko.
81min: McNulty's half-volley on the turn from Cullen's low cross into the area is held by Etheridge.
81min: Great interplay between Vuckic and McNulty nearly sees both of them with an opportunity to shoot for goal but the ball eventually bounces through into the grasp of Etheridge.
80min: Hanson's great ball out to Marshall finds the winger in space down City's right wing. The winger moves into the box before cutting inside on his left foot and firing wide with a drive.
79mn: SUB - Walsall bring on Andreas Makris for Jackson.
75min: Meredith's cross into the box is just behind Hanson, the striker still manages to get a header in but the looping effort lacks the necessary and Etheridge is able to step back and claim the ball.
69min: Hanson heads forwards with a downward header following Dieng's free-kick from distance into the box but Etheridge is easily able to gather.
68min: SUB - The Bantams make their own substitution at the same time, bringing on Haris Vuckic for Hiwula.
68min: SUB - Walsall bring on Franck Moussa for Cuvelier.
67min: Meredith fires over a hanging cross into the six yard box that Etheridge has to tip away via the slightest touch with his fingertips.
64min: Hiwula tries his luck from outside the area but the dipping drive is held by Etheridge.
62min: McCarthy connects with a powerful header from Cuvelier's resulting corner that needs to be headed clear from right in front of his own goal line by Cullen.
62min: McCarthy strides forward into space down Walsall's right flank before firing in a fierce rising drive from an angle that Doyle pushes over.
58min: Receiving the ball wide from McNulty, Marshall plays the ball back into the path of the Scottish striker, who is now inside the box. McNulty squares the ball to Hiwula, he isn't able to connect first time before eventually firing in with a shot that bobbles through to Etheridge.
56min: Jackson is played into space just outside City's box. With a recovering Vincelot trying to put pressure on him, the striker fires in a powerful angled drive from inside the area that Doyle does well to push around his near post.
55min: Marshall's free-kick from just outside the box hits the wall, Law is first onto the loose ball but his well-struck effort on the half volley flashes wide.
53min: GOAL!!!!!!!!!!!!! Walsall 1 Bradford City 1 - City are level through Hiwula! The striker is played through on goal, his initial shot is blocked by Etheridge but the ball bounces back to him and he is able to convert from close range.
52min: Jackson turns away from Vincelot before striding clear down Walsall's left flank. Now in the box, Jackson looks to get a shot away but a recovering Vincelot sees out the danger.
52min: Hiwula misses a great chance for City! After receiving the ball via a great pass from Law, Meredith moves towards the byline before firing low into the middle. The cross finds Hiwula in a great position from roughly eight yards out but his shot is sliced wide.
50min: Osbourne's low drive from distance is easily held by Doyle.
49min: GOAL - Walsall 1 Bradford City 0 - The Saddlers take the lead through Osbourne. Laird's low cross into the box from a swift Walsall attack forward eventually drops into the path of Osoburne, the midfielder moves into shooting space before firing in a low angled drive into the far bottom corner.
47min: Meredith's low cross into the box is cleared only as far as Cullen just outside the area and his low drive is pushed away by Etheridge.
46min: The Bantams restart the match.
HT SUB: The Bantams bring on Marc McNulty for Darby just before the restart. It appears that Dieng is now going to play in a defensive role following Darby's withdrawal.
HT: Walsall 0 Bradford City 0
45min: There will be one minute of time added on at the end of the first half.
44min: Hiwula takes a touch from a Stephen Darby cross into the box before firing in a rising drive on the turn that is well held by Etheridge.
42min: Matt Preston heads wide from Cuvelier's testing corner delivery.
39min: Law plays the ball across to Josh Cullen from a short corner routine and the midfielder's drive for goal from outside the area is pushed away by Etheridge.
38min: Marshall's hanging cross into the middle is headed down into the mix by Hanson but O'Connor is on hand to clear with a timely header of his own.
34min: Bakayoko looks to burst clear into City's penalty area from the left flank as Walsall spring forward on the counter-attack but a watchful Dieng slides in with a well-timed tackle to put the ball behind.
33min: Laird's low cross into the box is bravely taken by Doyle at the feet of Jackson just as the striker looked to pounce from close range.
33min: McCarthy's teasing cross into the middle is cut out by Romain Vincelot before Dieng fires clear the loose ball before Cuvelier can look to latch on inside the area.
32min: Chambers' well-placed pass from deep finds the run of Jason McCarthy, who is bursting forward from right back. McCarthy pulls the ball back from wide low into the box but a recovering Marshall intercepts before playing back for Doyle to kick clear.
25min: Cuvelier's free-kick from wide towards the far post finds James O'Connor unmarked but the ball is slightly too tall for the defender and his glancing header on the stretch flies off away from goal and out of play for a goal kick.
23min: Play is stopped briefly while Florent Cuvelier receives a spot of treatment after an accidental clash with Meredith. Cuvelier is soon back on the pitch and play continues.
19min: Etheridge falls to cleanly claim a Marshall corner delivery first time, leading to a brief scramble in the Walsall penalty area. A foul is eventually given on the Saddlers 'keeper, however, releasing the pressure on the hosts.
14min: Scott Laird fires for goal direct from a free-kick around twenty-five yards out but Doyle is able to gather up the effort on the bounce.
10min: Nicky Law looks to get a shot away just outside the box but his eventual effort for goal sails comfortably wide of goal after the midfielder received pressure from Isaiah Osbourne.
9min: Timothee Dieng lets rip from roughly twenty-five yards out, the effort is well-struck but Etheridge behind it and clings on first time.
4min: Mark Marshall is denied by a great save from Neil Etheridge! Jordy Hiwula flicks on James Meredith's low cross into the box, the ball falls nicely for Marshall but his fierce drive on the angle is pushed over the bar via a fantastic reflex stop from the Walsall shot-stopper.
1min: Amadou Bakayoko heads for goal from Simeon Jackson's cross but the effort lacks any real power and Colin Doyle is easily able to gather up.
0min: Walsall kick off the match.
WALSALL LINE UP:
Etheridge, McCarthy, O'Connor, Preston, Laird, Chambers, Edwards, Osbourne, Cuvelier, Jackson, Bakayoko
Subs: MacGillivray, Dobson, Oztumer, Ginnelly, Toner, Makris, Moussa
Moussa for Cuvelier (68), Makris for Jackson (79), Oztumer for Bakayoko (84)
BRADFORD CITY LINE UP:
Doyle, Darby, Vincelot, Knight-Percival, Meredith, Marshall, Cullen, Dieng, Law, Hiwula, Hanson
Subs: Sattelmaier, McNulty, Vuckic, Morais, McArdle, Kilgallon, McMahon
Bradford City substitutions:
McNulty for Darby (46), Vuckic for Hiwula (68)
Bradford City cautions:
Referee: B Toner
Assistant Referee: A Hendley
Assistant Referee: N Smith
Fourth Official: J Law