City signed off the season with a strong display against League Two champions Swindon.
It was an encouraging way to finish for the home side, who had most of the play at a bitterly-cold Valley Parade.
Swindon's 1,255 away support ensured a decent atmosphere for the last game and the visitors had to be alert as City began brightly.
But the Bantams could not find a clean shot on goal and their best effort from David Syers was blocked by the sliding Jay McEveley.
James Hanson had the first real chance on 17 minutes from a Nahki Wells pass but could not get enough power on his shot.
There was little incident in either goalmouth and Kyel Reid wasted a promising run with a wayward finish just before the break.
The winger then led a breakaway from Swindon's first corner before City over-complicated matters on the edge of the box and the opportunity was wasted.
Wells almost converted Hanson's flick-on at the start of the second half and then went close with a shot on the turn.
But City should have gone in front after 66 minutes as Will Atkinson sent Syers away. The midfielder controlled the pass with a good first touch, drew keeper Wes Fotheringham and then fired straight at him.
Syers did have the ball in the net five minutes later with a thumping half-volley but it was ruled out by referee Graham Salisbury for Hanson's challenge on the keeper.
Paolo Di Canio's Swindon had been second best for much of the game but they mounted a late flurry.
Sub Luke Rooney hit the side-netting from a counter-attack and Jon McLaughlin, back in City's goal for the first time since the Crawley game, tipped over a Paul Caddis free-kick.
Swindon also felt they should have had a late penalty for handball against Simon Ramsden.