The 29-year-old spent time on loan with Swindon earlier this season, scoring twice in six appearances.
The former Cheltenham, Bournemouth and Rotherham man could make his debut for the Bantams in Saturday's League One game against Fleetwood.
The Valley Parade side are currently 11th in the third tier, five points outside the play-off places.
Find all the latest football transfers on our dedicated page.
Bradford City have signed Birmingham City striker Wes Thomas on a three-month loan deal.