The mishap occurred this afternoon when the private tourist bus, carrying 45 passengers, was going to Rishikesh from Badrinath and fell into the river while trying to overtake a truck, said Tehri Superintendent of Police Janmejaya Khanduri.
While 21 people died on the spot, four succumbed to their injuries on way to hospital, he said.
All the bodies have been fished out during a rescue operation that lasted for more than four hours, he said.
The injured were admitted to Rishikesh government hospital and the condition of five of them was stated to be critical, Khanduri said.
The pilgrims belonged to Mandsaur district of Madhya Pradesh.
Announcing a magisterial inquiry into the accident, Uttarakhand Chief Minister Vijay Bahuguna also asked the administration to provide an ex-gratia of Rs 1 lakh each to the next of the kin of the deceased and Rs 50,000 each to those seriously injured.