The truck was carrying 69 passengers when it "failed to negotiate a curve and overturned" at a business centre in the district of Tsholotsho on Saturday evening, according to Zimbabwe Broadcasting Corporation (ZBC).
Among the 21 known deaths, 15 people died at the scene and six in hospital, reported ZBC. A further 21 people were wounded in the accident.
Traffic accidents are common in Zimbabwe, where roads are riddled with potholes due to years of underfunding and neglect.
In June, 43 people were killed in a bus crash in the north of the country, along the highway leading to neighbouring Zambia.