One other consideration if you want to run your own email server - when your network is down or your email server is down, you need to have a backup MX server somewhere otherwise you will lose emails. The best option for a backup MX server is in some other country that is likely to be unaffected if someone hooks an anchor on the Southern Cross cable and breaks it. Really good backup MX services will have multiple geographically spread servers that will all accept your emails. But a good backup MX service is not so cheap. And having a backup MX service negates some of the advantages of running your own SMTP server, as some spambots send to the MX server without ever trying the main SMTP server address. I currently use DuoCircle:
https://www.duocircle.com/email/email-backup-mx/
which is an excellent service, but you pay for what you get.