If you're hoping to get lost in the rain on your romantic getaway, take a look at these details about year-round temperatures in Johannesburg: The hottest months are usually July and August, with an average temperature of 18°C, while the coldest months are February and January, with an average of -5°C. The snowiest months in Johannesburg are January, November, February and March, with each month seeing an average of 43 cm of snowfall.