The bus was packed with children as young as 10, said rescuers who added around 20 passengers suffered injuries.
“Rescuers have removed all bodies from the bus and cranes are lifting the bus to see if there are people pinned underneath,” a government spokeswoman said.
The bus crashed through a bridge safety barricade on the busy Tuen Mun Road in the New Territories, before falling down a 50 metres cliff.
Officers were questioning the truck driver with which the bus collided.
“At some point both drivers applied their brakes, you can see from the scene the large skid marks,” a police official said.
Several passengers died instantly and local television showed rescuers pulling out bodies from the wreckage.
Among the dead was the driver of the ill-fated bus, confirmed the managing director of the bus company Kowloon Motor Bus Holdings Ltd.