"The human rights abuse of sex workers in South Africa is alarming and demands immediate attention," reads the study issued by the Sex Workers' Education and Advocacy Taskforce (Sweat).
"Sex workers experience violence during arrest by police officers who routinely beat them, pepper spray them and sexually assault them."
The study was based on interviews with 308 sex workers, mostly in Cape Town, by the Women's Legal Centre. The sex workers were mostly women, but included men and transgender persons.
The report included first-person narratives from people who recounted being forced to perform oral sex or being gang-raped by police officers. They reported police officers assaulting them, often with pepper spray.
The study found police officers did not identify themselves or wear name tags when committing their offences.
"Police officers commit these crimes with impunity. They remove their name tags so that sex workers are unable to identify them and they instil such fear in the sex workers that they are afraid to report these crimes to the authorities," reads the report.
Arbitrary arrests were still common, despite a 2009 order from the Western Cape High Court that police could not arrest sex workers unless they intended to prosecute them.
Of the sex workers interviewed, 138 said they had been arrested, but only 21 ever appeared in court.
"This is a clear violation of the right to defend oneself in court and not to be arbitrarily deprived of one's freedom."
Most of those arrested, 117, were fined.
According to the study, sex workers were also open to exploitation for money. In a case in Cape Town, police came to a sex worker's flat and asked for a bribe.
"I gave one of them R10 because I knew he was hungry," the sex worker recounted.
Western Cape police spokesperson Captain Frederick Van Wyk said none of the allegations in the study had been reported to the police.
"We urge anyone with information about these acts of behaviour by our police members to come forward and lay formal complaints to be investigated," Van Wyk said.