Sri Lankan cricket team in South Africa in 2016–17

[1] After the initial tour schedule was announced, the dates were moved slightly to accommodate South Africa's domestic T20 tournament.

He named his stand-in Faf du Plessis as replacement, a move that was confirmed by Cricket South Africa (CSA).

[3] Immediately prior to this series, du Plessis was found guilty of ball tampering during the second Test against Australia that took place in November 2016.

[9] Duanne Olivier was added to South Africa's squad following the second Test to replace Kyle Abbott, who earlier had quit international cricket to sign for the English team Hampshire as a Kolpak player.

[19] On the day before the first ODI, Sri Lanka dropped Isuru Udana, Thikshila de Silva and Seekkuge Prasanna replacing them with Lahiru Kumara, Vikum Sanjaya and Jeffrey Vandersay.