Another 10 passengers were injured in the crash, which happened at about 6am local time in Sawai Madhopur district, 235 miles south of New Delhi.
Rescuers have recovered 32 bodies from the river.
The bus rammed through the bridge’s railing during an overtaking manoeuvre, police officer B L Soni said.
An investigation into the crash is under way.
More from India
India police hunt ‘happiness minister’ over alleged murder
Released Chennai Six member Nick Dunn says ‘seeing mam is best ever present’
Shashi Kapoor: Bollywood legend dies aged 79
Nestle fined after tests show high ash content in noodles
Bounty offered for head of Bollywood actress Deepika Padukone
‘At least three dead’ and more missing after factory collapses in India
The vehicle was on its way to the town of Lalsot after picking up passengers from Sawai Madhopur railway station.
India has the largest number of fatalities from road accidents in the world, according to police figures, with more than 100,000 people dying each year.