Three pupils were taken to hospital with “serious but not life-threatening” injuries and 12 others suffered minor injuries in the accident in Winchester in England at 8.10am on Thursday.
Inspector Andy Tester, of Hampshire Police’s roads policing unit, said a further 57 children on the bus, operated by Stagecoach, and the driver were unhurt.
All of the youngsters on board were travelling to Henry Beaufort School in Winchester and are aged between 11 and 16.
Mr Tester said: “When officers and other emergency services arrived they found a number of people coming out of the bus and it was clear the bus had collided with the bridge.
“So we have got everyone off the bridge and assessed all of their injuries.
“The children were very, very distressed, they had obviously been in a very traumatic incident. A number of them were injured, it was a very difficult scene to deal with.
“Officers, firefighters and ambulance staff did really well to take control of the incident and made sure we assessed everyone’s injuries and secured the scene.”
Jake Coates (14) who lives nearby and had just been picked up by the bus, said the driver had taken a shortcut because the service was running 10 minutes late.
Describing the scene, he said: “The first thing I was thinking, had anyone been crushed on the top of the bus or anything really bad had happened up on the top.
“When we got out of the bus, I could see people jumping out of the back windows and workers from nearby were catching people.
“It was quite scary, I was really shocked, I didn’t know if anyone was still inside the bus, trapped.
“A lot of people were screaming, they were shouting like they were going to die, a lot of dust came through as if the bridge was going to collapse.”
He said some of his friends had suffered cuts to their legs and one to their top.
Jake said the bus was being driven by a new driver but he had not been going fast.
He continued: “The bus came this route today because it was a couple of minutes late, it might have been 10 minutes late, so it took a different… tried to take a shortcut, which didn’t go well.”
His mother, Caroline Coates (43) said she and her husband ran to the scene to help when they heard the crash.
She said she was relieved when she realised Jake had not been hurt and added: “The children were sat on the side, obviously quite upset, crying, bleeding.
“I went to another girl who was bleeding from the head and I stayed with her.
“It was quite a shock, quite upsetting. There was a lot of crying, wandering around, trying to get hold of their parents and the school, and checking an ambulance had arrived.”
She added: “Obviously it shouldn’t have happened, they have single-deckers that use this route.”
Robert, another pupil at Henry Beaufort School, said he was uninjured but “shaken” after the crash.
The 15-year-old, who did not want to disclose his surname, said: “I was on the lower deck. I was on my phone when it actually happened. We went under the tunnel and I heard a crash, and I didn’t think it was as major as it was, I didn’t know what tunnel we were under.
“It took a little while to realise what was happening … part of the roof fell down to the side of the bus that I was on.
“I waited for the people on the top deck to get off, and at that point I saw some of the bad injuries people had. I think everyone was in shock.
“When we got off the bus, everyone sat down on the grassy bank outside. People started to panic and phone parents, some people started to cry.
“It took like an hour maybe while everyone was sorted until we started to leave.”
Henry Beaufort School headteacher Sue Hearle said: “This is a distressing incident and we are extremely relieved it was not more serious.
“With the help of Hampshire County Council’s home to school transport and educational psychology teams we will be supporting all the students involved and their families.
“I do not want to speculate on the circumstances leading up to the incident but our thoughts go out to all those affected.”