An eight-year-old girl, the only survivor, sustained serious injuries but is now in a stable condition.
The bus crashed through a barrier and caught fire when it hit the ground in the north-eastern Limpopo province.
Thirty-four body bags have been taken from the scene but only nine bodies are identifiable, authorities say.
The passengers were pilgrims travelling from Botswana’s capital, Gaborone, to an Easter service in the town of Moria.
The vehicle lost control and went off a bridge on the Mmamatlakala mountain pass between Mokopane and Marken, around 300km (190 miles) north of Johannesburg, according to South African public broadcaster SABC.
Department of Transport spokesperson Colin Msibi told the BBC’s Newsday programme that the girl who survived is currently “in hospital, I’m told in stable condition”.
“What we suspect is that when the bus hit the barrier of the bridge, the child was ejected out of the bus, and that is how the child was able to survive,” Mr Msibi said.
Rescue operations went on late into Thursday evening and continued the next morning.
Limpopo health official Phophi Ramathuba told South African broadcaster eNCA that body parts from separate crash victims may have been put into different body bags, which is why so far only nine bodies have been identified.
Transport Minister Sindisiwe Chikunga, who went to the scene of the incident, extended her “heartfelt condolences to the families affected by the tragic bus crash”.
She said the South African government would help repatriate the bodies and hold a full inquiry into the cause of the crash.
“Our thoughts and prayers are with you during this difficult time,” she added. “We continue to urge responsible driving at all times with heightened alertness as more people are on our roads this Easter weekend.”
South Africa has a poor road safety record.
Ms Chikunga told eNCA the road the bus fell from is “winding with sharp bends, hairpin bends, a road that I’d never advise any person who is driving a heavy vehicle such as a bus, such as a truck, to use”.
President Cyril Ramaphosa expressed his condolences to Botswana and to loved ones of the crash victims, a statement from his office said on Thursday evening.
In an Easter message released before the crash, Mr Ramaphosa had urged citizens to “do our best to make this a safe Easter”.
It should “not be a time where we sit back and wait to see statistics on tragedy or injuries on our roads”, he added.