Stephen McGowan was abducted while on holidays with his family in Timbuktu in November 2011.
No ransom has been paid to secure his release, said the authorities.
According to CGTN's Yolisa Njamela, Stephen McGowan was held captive for almost six years.
He was abducted by the Islamist terror group in November 2011 at a hotel in Timbuktu along with a Swedish and a Dutch national.
McGowan was in Timbuktu as a tourist, traveling by motorcycle. International Relations Minister Maite Nkoana-Mashabane says McGowan was released last Saturday. The South African government had not paid ransom for his release.
McGowan is undergoing medical check-ups, and is in good health and spirits, according to his family.