An imperfect solution is better than no solution. The following also worked to improve the toxicity in (the infamous FPS pvp genre game) "Dawngate."
Secondly, treating symptoms of player toxicity won't work. You can have muting, or kickbans, or report griefers/trolls, or make it so dumb game-losing mistakes hurt the team less. Those all address symptoms.
Encouraging players themselves to be less toxic is dealing with root cause.
Have a toxicity rating system. It doesn't affect the gameplay, nor chevrons, nor OS. None of the bullshit "oh your exp is faster, or your OS updates faster now u play better".
1, Players start at 16, the minimum is zero, the maximum is 32.
2, Each vote to kickban you, you lose one point.
3, Players must manually vote you +1, for you to gain 1 point, per player that votes you. GAINING A BETTER NOT-TOXIC REPUTATION SHOULD BE DIFFICULT AND TIME-CONSUMING.
The key thing is, lobbies can filter for toxicity, the same way they have minimum chevron limits, or min/max OS limits. The toxicity rating should not include ANYTHING ELSE. Playing with people with similar bad toxic ratings in itself is the punishment, and the point is for people to never want that again, so they won't be toxic, so they can play with others who are NOT toxic. Just like shadowbanning into cheater-only lobbies.
A suggestion/refinement for this I have is, private games and unranked games cannot affect the toxicity rating. It might be worth undoing this specific change a year later based on player feedback.
An ideal improvement is an actual randomized ranked matchmaking, and only toxicity votes from there matter (preventing the system being gamed by multiple accounts, or friend-voting, an account only able to vote 1 other account once is a stop-gap if there are no limits on account-creation since BAR is a free game).
Please suggest improvements.