Children from St Ives School, Cornwall, were uninjured in the crash on the A30 near Penzance at about 12:00 GMT.
Witness John Mackie said children were climbing out of the 62-seater coach owned by Williams Travel on to the grass verge.
The A30 was closed in both directions between Newtown Roundabout and Crowlas Cross while the coach was recovered.
For more on the coach crash and other news
The coach was travelling towards Penzance and swerved across the wrong side of the road before going up the verge.
St Ives School said all of the children, aged between 11 and 16, were "safe and well".
A coach carrying 30 schoolchildren to a swimming gala veered across a main road and crashed through a hedge.