I can't imagine ever staying with someone who cheated on me.
However I've heard a variety of reasons why people do.
1. They blame themselves in some way.(took their mate for granted/neglect or the "other woman/man" is seen as a competitor who must be defeated. Never surrender!
2. The thought of divorce was too much after the shock of the betrayal. Felt they'd "invested" too many years to just walk away.
3. Really didn't care because they are there for financial reasons.
4. Had children together, established a solid image in the community.
5. Too proud to admit friends/parents were right about him/her.
6. Fear/hate starting over and getting back into the dating scene.
7. The cheating was a meaningless one-night stand and not an affair.
8. Doesn't believe in divorce under any circumstances. (Work on it)
9. They have no interest in sex. Being discrete is what matters most.
10. Still very much "in love" and can't imagine living without him/her.
Last but no least they are cheating too!