The bus tumbled down a 300-metre (1,000-foot) ravine after leaving the western city of Huehuetenango late on Sunday, said Mario Cruz, spokesman for volunteer fire teams at the scene.
"The bus was totally destroyed," Cruz told Reuters.
Rescue workers used cables to haul up corpses and five survivors, who were rushed to hospital.
The public transport bus was travelling to Barillas, a town in the mountainous region near the Mexican border, when fog or rain likely played a role in causing it to swerve off the dangerous road, officials said.
Rescuers were still working to remove two bodies trapped in the wreckage.