President Cyril Ramaphosa has signed into law a carbon tax to cut emissions in the continent's worst polluter.
The tax, a rare step for an emerging economy, will be levied from June 1 on greenhouse gases from fuel combustion and industrial processes and emissions, the treasury said on Monday, drawing cautious praise from environmentalists.
"Climate change represents one of the biggest challenges facing humankind, and the primary objective of the carbon tax is to reduce greenhouse gas emissions in a sustainable, cost-effective and affordable manner," the treasury said in a statement.
The tax was first planned in 2010, but has been delayed due to opposition in a country struggling with low growth and unemployment at nearly 28%.
"President Cyril Ramaphosa has communicated the urgent need for action around the climate crisis," WWF said in a statement, describing it as a landmark moment for South Africa.
"While there is still much to be done for the tax to become more effective, we recognise this is a significant first step."
The ministry said the tax was part of South Africa's efforts to meet the global climate change agreement negotiated in Paris in 2015.
Set at R120 ($8.30) per tonne of carbon dioxide, the tax will be largely offset by allowances to lower it to an effective rate of between R6 and R46 per tonne in the first three years.
South Africa - which relies largely on coal for its energy supply - is the 14th largest polluter in the world and the largest in Africa, according to Greenpeace.
"We definitely welcome this. It is very, very overdue," said Melisse Steele, senior campaign manager at Greenpeace.
"It is a major step, but Greenpeace has expressed our concern that we don't think that the carbon tax will be effective enough and the tax level is inadequate."
The tax is set to rise at 2% above inflation, currently at 4.5%, until 2022 and in line with inflation afterwards.