Debutant Tyler Roberts came off the bench to score one and make one as Walsall came from three goals down to draw with promotion hopefuls Bradford.
Shay McCartan’s 30th-minute tap-in put the Bantams ahead before Dominic Poleon squeezed home a second on the stroke of half-time.
A Luke Leahy own goal made it 3-0, but the left wing-back made amends with a powerful header to reduce the arrears.
Roberts then headed home Leahy’s cross to make it 3-2 and Amadou Bakayoko completed the comeback with a stooping header from a Roberts centre.
In a scrappy start, Walsall had the game’s first chance on 13 minutes when Joe Edwards drilled a low right-footed shot narrowly wide after being teed up by Amadou Bakayoko.
Bradford responded with Tony McMahon curling a 30-yard free-kick into the arms of home keeper Mark Gillespie, while Kieron Morris sliced an effort wide at the other end.
The Saddlers could have taken the lead midway through the half, but both Bakayoko and Luke Leahy were unable to force the ball over the line after a massive scramble from Edwards’ corner.
Instead, it was City who broke the deadlock on the half-hour, Alex Gilliead finding Charlie Wyke, who crossed low for McCartan to fire home from close range.
And the Bantams – last season’s beaten play-off finalists – doubled their advantage seven minutes before the break.
A Tom Field cross wasn’t dealt with by the Walsall defence, enabling Poleon to squeeze a low shot just inside the far post.
Jon Whitney’s men had a huge chance to halve the deficit moments later, but Morris scuffed well wide after being intelligently slipped in by Edwards.
The Saddlers made a nightmare start to the second half, falling 3-0 down as a McMahon free-kick was flicked on by Kilgallon and deflected in off the unfortunate Leahy.
The former Falkirk man quickly atoned for his own goal as he powered home a 55th-minute header from Nicky Devlin’s inviting far-post cross to reduce the arrears.
On 61 minutes, it was 3-2.
Leahy was again involved, delivering a fine left-wing cross for debutant substitute Roberts to thump a lovely header past Colin Doyle at the near post.
Walsall threw the kitchen sink at City in search of an equaliser, with Leahy heading straight at Doyle from Adam Chambers’ diagonal ball and Bakayoko hooking a volley over the bar.
And the Saddlers deservedly levelled with three minutes remaining, Bakayoko stooping to head home Roberts’ sumptuous cross at the far post.
Stuart McCall’s visitors almost grabbed victory at the death but Daniel Pybus lashed wildly over from 12 yards.
Team: Gillespie, Wilson, Donnellan, Guthrie, Devlin, Leahy, Chambers, Edwards, Morris (T Roberts 53’), Oztumer, Bakayoko.
Subs not used: L Roberts, K Roberts, Kinsella, Cuvelier, Kouhyar, Candlin.