One person was critically injured and 16 others had minor injuries after the accident at FNB Stadium in the Soweto area of Johannesburg, the stadium management said in a statement.
It said it was conducting an investigation with police.
The crush happened when fans tried to push through the venue's gates.
The stampede came during a game between top South African teams Orlando Pirates and Kaizer Chiefs
Many people were reportedly unaware of what had happened, and the match continued until the end with Kaizer Chiefs winning 1-0.
Paramedics went to the scene and the situation was brought under control, public safety official Michael Sun said.
Eyewitness News, a South African outlet, quoted Mr Sun as saying that the alleged cause of the stampede was linked to disruption caused by people trying to sell or present fake tickets at a stadium gate.
Formerly called Soccer City Stadium, FNB Stadium hosted several matches during the 2010 World Cup, including the tournament opener and the final.