In a fairly even first half, devoid of any real clear-cut chances, the hosts looked the brighter of the two sides and threatened down both wings.
But it was the Saddlers who took the lead through a superb George Nurse strike after the defender charged through midfield to smash home his first in Walsall colours.
In the second half it was backs against the wall defending for Walsall and it was just a matter of time before the Bantams scored. Eventually, Connor Wood was taken out in the air by goalkeeper Liam Roberts for a penalty and substitute Billy Clarke tucked it home.
Bradford were desperate for a winner as the clock ticked on but Walsall stood firm with some last ditch defending to hold onto a point. The Saddlers have now extended their unbeaten league run to 12 games.
Darrell Clarke made three changes to the side that drew with Exeter City on the weekend, starting in a 4-4-2 formation.
Hayden White, Danny Guthrie and Caolan Lavery came into the side as Cameron Norman, Stuart Sinclair and Emmanuel Osadebe dropped to the bench.
Jake Scrimshaw, who signed on deadline day on-loan from Bournemouth, made his first Walsall squad as he took his place on the bench.
Stuart McCall kept the same starting XI that beat Mansfield Town on Saturday, also starting in a 4-4-2 formation.
Young Wolves striker Austin Samuels, who is on-loan at Bradford, made their bench.
The hosts almost took the lead after 10 minutes when Dylan Mottley-Henry delivered a superb cross across the Walsall goal. A shot from Harry Pritchard was deflected over and a Lee Novak effort from the resulting corner was blocked just yards out.
Clayton Donaldson and Novak were making themselves a nuisance up front and the Bantams looked dangerous going forward, with some good Saddlers defending keeping them at bay as neither side enjoyed an abundance of chances.
Despite that, it was Walsall that took the lead after 23 minutes. Nurse picked up the ball on half-way and drove through the midfield, drifting beyond several Bradford players. He reached the edge of the box and smashed the ball in off the far post with his left boot for his first Walsall goal.
Only minutes later, Elijah Adebayo then had a strong effort saved well by former Walsall goalkeeper Richard O’Donnell.
Nurse and James Clarke combined to close out Novak who seemed to be in on goal after meeting a Donaldson flick-on.
Some half-chances came and went for both sides, including a header just over the bar from Clarke, but neither side could fashion another clear chance. Mottley-Henry continued to look lively and had a left-footed effort flash over the bar.
Following two minutes of added time and a fairly even game, Walsall entered the break leading 1-0 courtesy of Nurse’s wonderful strike.
As the second half got underway, Tyler French replaced Bryce Hosannah for the hosts.
The Bantams started the half brightly and instantly put the Walsall defence under pressure with a handful of set pieces. Anthony O’Connor should have done better when he met a corner at the back post but the defender could only direct his header wide.
The Saddlers were camped in their own half as Bradford continued to push forward, as Mottley-Henry consistently posed a threat on the right.
Roberts came to Walsall’s rescue after an hour when he saved a well-placed strike from Donaldson who had been found on the edge of the box. From the resulting corner, Roberts stepped up again to catch a point blank header from Novak. Had the striker directed it either side of the goalkeeper he would have equalised from two yards.
Wood then beat Rory Holden to the ball at the back post but he directed his header wide of the post. Clarke then did well to block a Novak strike as the hosts continued to push for a goal.
Walsall did see some opportunities spurned on the counter-attack with the final pass missing. Dan Scarr also headed directly at O’Donnell when he met a free kick.
In the 76th minute Bradford finally scored through a Clarke penalty. Wood was taken out in the air by goalkeeper Roberts and substitute Clarke tucked it away down the centre of the goal.
Minutes later, White was lucky to stay on the field when he appeared to pull back Novak as the last man when the striker raced through on goal. He received a yellow card instead.
The hosts pushed for a winning goal but the Walsall defence stood firm to share the points. Walsall have now gone 12 consecutive games unbeaten in the league and sit 10th in the division after seven games.
Bradford: O’Donnell, Hosannah (French, 45), O’Connor, Richards-Everton, Wood, Mottley-Henry, Watt, Cooke, Pritchard (Clarke, 67), Donaldson (Guthrie, 79), Novak.
Subs not used: Hornby, Longridge, O’Connor, Samuels.
Walsall: Roberts, White, Scarr, Clarke, Nurse, Holden, Kinsella, Guthrie (Bates, 76), McDonald (Osadebe, 88), Adebayo, Lavery (Scrimshaw, 82).
Subs not used: Rose, Norman, Jules, Sinclair.