The crash near Stonehaven, in Victoria's south, about 8.20am on Wednesday morning closed a highway west of Geelong.
Victoria Police said a girl died at the scene and a boy was flown to hospital with serious but not life-threatening injuries.
It's believed the bus was making a turn onto the Hamilton Highway when it tipped.
There were 28 students on board ranging from primary to secondary school aged.
Eight other students were injured while a further 11 were taken to hospital for observation, Victoria Police said in a statement.
The 76-year-old driver was also injured but has since been released from hospital and is assisting police.
Victorian Premier Jacinta Allan said her thoughts were with the students and their families.
"We stand ready to support you in every way we can," the premier said.
Deputy Prime Minister Richard Marles said the incident will affect many in the tight-knit Geelong community.
"My heart breaks hearing the devastating news of a school bus incident and death of a student in my hometown of Geelong," Mr Marles said on social media.
Regional healthcare provider Barwon Health said 13 people were being treated at Geelong University Hospital, 12 of them children.
Two people are in a serious condition, with one being transferred to Melbourne's Royal Children's Hospital.
Victoria's transport department reported the Hamilton Highway closed in both directions between Burnside Rd and Friend-In-Hand Rd due to a serious collision, with the closure under police control.Â