Only overseas-based Springboks with more than 30 Test caps will be eligible for national selection after July 1, the national rugby organisation said Friday.
Currently, a South African national rugby coach can choose a player irrespective of how often he has been capped or where he is based.
The move is an attempt to halt the brain drain as South Africans are lured to Britain, France, Ireland and Japan by salaries many times higher than they earn locally.
The rule change comes into effect after a season-opening three-Test home series against France during June.
In Rugby World Cup years, however, any South African can be chosen, no matter where he is based.
Japan stages the next World Cup in 2019 with the group draw scheduled for May 10 in Kyoto.
"We are sending a message to young players that if they want to play for the Springboks they must remain in South Africa," said rugby boss Mark Alexander.
"The coach (can) select exceptional players who may be based overseas provided they have (more than) 30 Test caps for the Springboks.
"How to balance the need to select the strongest possible team against the challenges of having such a large number of players based overseas has been a subject of long debate.
"We have made this change in what we believe are the best interests of the Springbok team, but we will review it periodically in conjunction with the national coach."
Ulster loose forward Marcell Coetzee will hope to play against France in Pretoria, Durban and Johannesburg as he has 28 caps.
South Africa are following in the footsteps of Australia, who considered foreign-based players with at least 60 caps for the 2015 World Cup in England.
Record three-time world champions New Zealand choose only local stars.