The police said the accident occurred when a bulldozer on Wednesday slid off a mountain road and crashed on to a school bus on a highway below.
The children, some as young as five, were going home when the 40-ton bulldozer fell at least 13 feet and crushed their bus.
Authorities said 36 people were injured, including the drivers of the two vehicles and a teacher on the bus.
Bogota Mayor Luis Eduardo Garzon ordered an investigation to determine why the bulldozer, which had been digging up asphalt, slid off the mountain road.
"There aren't words. What's happened here is profoundly painful," Garzon said.