Police said one bus passenger died, along with 20 people in the house who were all Buenavista residents.
Six people were in serious condition in hospital, but it was not immediately known if the injured were in the demolished house or the bus, police added.
At least five other neighboring houses were damaged but police said nobody was injured in them.
Police said the bus was trying to manage a curve just across the Buenavista Bridge when it went out of control and swerved to the other lane of the national highway before plowing through a waiting shed, four houses and a church.
Workers are still searching for people apparently missing amid the rubble of the demolished house, police added.
Police said the bus was bound for Butuan City from Cagayan de Oro City.
Bus driver Ulysses Gerardi, 35, who is believed to have fallen asleep at the wheel, surrendered to the Butuan City police, whose headquarters is some 16 kilometers from Buenavista.
On the other hand, Reggie Umandos, 26, the bus conductor, gave himself up in Davao City to Orlando Cachuela, owner of Land Car Inc., operator of the bus.
The fatalities are Restituto and Herminia Bonachita, their children Restijun, 5, Markjun, 3, and Jojo, 7; Juanito and Miriam Bonachita, and their son, Leonimar, 7; Gregoria Bonachita, 62; Marcelino Bonachita, 42; Alwin Bonachita, 17; Luisito Tundag, 32; Leonardo Delicano Jr., 38; Edgardo Delicano, 36; Gregorio "Icong" Aboc, 45; Concordio Pampe; Lolong Floribel; Maura Castillo, 45; Aurelio Castillo, 48; Rommel Castillo, 5; all Buenavista residents; and bus passenger Aida Dacquiquil, 29, a director of Butuan ChildCare and Therapy Center, and resident of Alviola Village, Ampayon, Butuan City.
Injured were Marwin Sanchez, 12; Henry Macasling, 37; his wife, Virginia, 29; Nelson Aragon, 39; and Bienvenido Acibal, 43. Ben Serrano