We know it's a mix of things that cause people to leave, rarely just one thing:
Your supervisor/boss doesn't have your back. In my view, this is a core responsibility of decent leaders who want to keep employees and show them they are valued.
You're performing, but regular (annual) pay increases are not given.
No teamwork. You're on your own in projects that require teamwork. You're the employee left to work the weekend or evening events. Alone.
You know you're contributing. You know you're a valuable player (colleagues and outsiders mention your contributions/value), but you're treated as if you're in the way. Sometimes this is a sign that you're viewed as a threat or you're getting "too much attention."
You know you're in a catty environment because you hear a core group constantly talking about other employees--you know they're doing that with you, too.
Some rules for some people; no rules for others. And it's flaunted.
All of this, and you're overworked.
Your boss "plays favorites." Very obviously.
And you have the crappiest office in the building. :)
You start experiencing signs of pretty severe stress, including health issues, anxiety, depression.
Feel free to add your own.