Els had five of his eight birdies on the back nine at the par-72 Leopard Creek Country Club to share the best round of the day with Joost Luiten, who had a hole-in-one. Oliver Wilson had the other.
Els totaled 13-under 203 ahead of Sunday's final round. Lee Slattery (67) is second.
'This is the round I've been looking for,' said Els, who birdied the first two holes. 'I just had to play the way I wanted to and that start settled me down.'
Luiten had a hole-in-one on the par-3 12th and finished with six birdies. He won a car for his 7-iron tee shot on the 192-yard hole. Wilson had a hole-in-one on the par-3 16th, hitting a 5-iron 208 yards into the cup.
'Its my first hole-in-one in a tournament, so I'm delighted,' said Luiten, who played on the European Challenge Tour and qualified for next year's main European Tour.
Second-round leader Omar Sandys shot a 74 and is seven shots behind Els.