After 19+ years of hosting my own email - It's worth it!
Imagine someone revokes your access or deletes all your emails because of an error, at the scale of gmail or outlook.com it just happens.
For spam there is one solution:
- implement greylisting. It just solves the problem.