The Bantams fell to their first defeat of pre-season, with a 2-1 loss at Chesterfield.
Early goals from Danny Rowe and Stefan Payne meant - despite an improved second-half performance - City were beaten at the Technique Stadium.
The hosts took the lead inside the opening two minutes when a cross into the box from the right-hand side was scrambled into the back of the net by Rowe.
The Spireites doubled their advantage when Jack Clarke played a through ball to Payne - who seemingly beat the offside trap before slotting past City goalkeeper Richard O’Donnell.
James Rowe’s side nearly added another when Miller’s cross was headed over the crossbar by Saidou Khan.
City went agonisingly close to pulling a goal back when Andy Cook picked out Oliver Crankhaw - whose effort came back off the post.
However, Derek Adams’ men did get their goal four minutes into the second half, having introduced 11 half-time substitutes, when Callum Cooke’s cross from the right-hand side was headed in by Paudie O’Connor.
The Bantams went close again when Charles Vernam’s left-footed effort went narrowly wide of the goal.
The visitors came within a couple of inches of finding an equaliser when Levi Sutton’s cross was headed against the crossbar by Vernam before it eventually bounced wide off Lee Angol.
City then nearly earned a draw in second-half stoppage time when Cooke’s cross once again found the head of O’Connor - who had his effort excellently denied by the opposing goalkeeper.
Despite continuing to push for a leveller until the final whistle, the Bantams were unable to break down the hosts’ stubborn defence - meaning they were edged out on the evening.
CITY FIRST-HALF XI: Richard O’Donnell; Finn Cousin-Dawson, Jorge Sikora, Fiacre Kelleher, Reece Staunton; Matthew Foulds, Abo Eisa, Gareth Evans, Kian Scales; Oliver Crankshaw, Andy Cook.
CITY SECOND-HALF XI: Sam Hornby, Oscar Threlkeld, Paudie O’Connor, Niall Canavan, Liam Ridehalgh, Elliot Watt, Levi Sutton, Callum Cooke, Alex Gilliead, Lee Angol, Charles Vernam.
GOALS: Paudie O’Connor (49’).
CHESTERFIELD: Scott Loach; Jeff King, Calvin Miller, Gavin Gunning, Laurence Maguire; James Grimes, Manny Oyelke, Saidou Khan, Jack Clarke, Danny Rowe, Stefan Payne. Subs: Curtis Weston, Liam Mandeville, Jak McCourt, Nathan Tyson, Joe Rowley, Trialist One Trialist Two, Trialist Three.
GOALS: Danny Rowe (2’), Stefan Payne (6’).