South Africa hold off All Blacks fightback in Cape Town to level series

South Africa held off a late New Zealand rally to win the second Test of 'Rugby's Greatest Rivalry' in Cape Town on 29 August 2026, levelling the series at 1-1; captain Siya Kolisi returned to the starting XV. Cheslin Kolbe took the kicking duties and notched up 18 points in a player-of-the-match display as the Springboks edged the visitors.
The All Blacks had travelled to Cape Town knowing a win would make them the first New Zealand side to win back-to-back Tests in South Africa since 1996, but South Africa produced a dominant display in the basics and a more clinical edge across the 80 minutes. New Zealand still outscored the Springboks on tries by four to three, and Ardie Savea’s late score on 77 minutes narrowed the gap, but a final turnover by replacement Cameron Hanekom settled the closing stages. New Zealand head coach Dave Rennie had warned his side they would need to "go deeper" after the first Test, a message referenced before this match.
Rassie Erasmus made late personnel changes to his matchday plan: Handre Pollard was fit, then injured and withdrawn in the week; Kolbe was injured, then declared fit and named on the wing; and the head coach reversed his whole front row in the hours before kick-off, producing five changes from the squad announced on Monday. Those selection shifts included the Springbok captain Siya Kolisi returning to the starting side.
The scoring began quickly when hooker Deon Fourie found his target in the line-out, the South African maul carried into the 22 and Jesse Kriel crashed over, with Kolbe adding the conversion. Referee Angus Gardner, a late replacement for Nika Amashukeli, presided over a fast early period during which Damian McKenzie made a clean break that almost put Will Jordan away and Eben Etzebeth disrupted New Zealand’s five-metre line-out. Cam Roigard and Ruben Love then combined to level the scores for New Zealand.
South Africa responded as Kolbe kicked a penalty and Damian de Allende powered over from another maul, stretching the lead to 17-7; New Zealand hit back when Savea burst from a line-out and McKenzie finished after slick passing to make it 17-14. In the final sequence before half-time Kolbe forced a five-metre scrum, Erasmus brought on Malcolm Marx and Ox Nche who won a penalty, and from the resultant pressure Siya Kolisi crashed over to give the hosts a 10-point advantage at the interval.
New Zealand needed to score first after half-time but conceded possession in Springbok territory and a soft penalty which Kolbe converted, then Marx won a breakdown penalty and Kolbe stretched the lead to 16 points with around 30 minutes remaining. The All Blacks backline, led by Roigard, produced another attack that finished with Leroy Carter touching down in the left corner, and later Jordan’s movement freed Savea who crashed over on 77 minutes to cut the deficit. Lock Lood de Jager was sent to the sin-bin for a high tackle, and Hanekom’s turnover in the breakdown proved decisive in the closing moments.
Scoring summary and match statistics as published: Tries: Kriel, De Allende, Kolisi. Cons: Kolbe 3. Pens: Kolbe 4. Tries: Roigard, McKenzie, Carter, Savea. Cons: Love 3. South Africa named: Willemse; Kolbe, Kriel, De Allende, Hooker; Feinberg-Mngomezulu, Reinach; Nche, Marx, Louw, Etzebeth, Nortje, Kolisi (capt), Du Toit, Wiese. Replacements: Fourie, Steenekamp, Du Toit, De Jager, Esterhuizen, Hanekom, Van den Berg, Libbok. New Zealand named: McKenzie; Jordan, Tupaea, J Barrett, Carter; Love, Roigard; Bower, Taylor, Lomax, Holland, Vaa'i, Parker, Jacobson, Savea (capt). Replacements: Aumua, Numia, Newell, Tuipulotu, Lakai, Preston, Lienert-Brown, Moorby. Assistant referees: Karl Dickson (England), Sam Grove-White (Scotland).
The series now stands at 1-1 with two Tests to play; the third Test is scheduled for next Saturday in Soweto, Johannesburg, where both teams will contest the decider.