First of I recommend this video that analyses the bad boy well:

https://youtu.be/Gx-AL4nqm4I

Now here's my experience. I realised this when I was rewatching Beverly Hills, television really screwed us up with these "bad boys with a soft core" idea. In Beverly Hills you have Dylan the bad boy and and Brandon the good guy. I remember when I was little I really disliked Brandon and liked Dylan. After rewatching I realised why.

Dylan the bad boy is much mkre mature. He tries to better himself, he's learning, growing, has insecurities, is loyal and non-judgemental. Of course even my little self recognised that's a better guy. Brandon on the other hand is smug, judgemental, think he knows better than others, controls his sister, slut shames and doesn't respect women much.

I checked other portrayals in other shows and film. This is pretty much how these tropes were presented. No wonder I grew up thinking nice guys (actuall nice guys) are boring and lame. In reality bad boys are not misunderstood, they're assholes who will manipulate, hurt and just generally treat you badly. So it takes a while for some of us to relise we've been brainwashed. (Same thing for men just with a diferent type of girl).

There are some reasons outside of that. The main one being that when you're young you want an easy way to get out of your comfort zone. It's exciting. Plus most of us like confidence and unfortunatelly when you're young, there aren't many confident good guys. Most who are confident are arrogant and they're often assholes.