New Zealand launched a fightback against South Africa in Cape Town following a dismal start to the series but remain 133 runs behind the hosts.
The home side declared with a 302 lead in the afternoon session after dismissing New Zealand for 45 yesterday.
Despite their poor first innings, the visitors managed to steady their time at the crease through Brendon McCullum, who surpassed a half-century by one run before tumbling for an lbw by Robin Petersen.
New Zealand were able to add to their run-rate and remain in contention as South Africa's bowlers struggled to replicate yesterday's form on the pitch.
The hosts did, however, manage to claim the wicket of Kane Williamson on 15 runs as well as Daniel Flynn for 14 but the home side kept composure with Dean Brownlie, who remains not out on 69.
New Zealand closed the day on 169-4 in their second innings.