So firstly, I don't work for AWS or Amazon, or any Cloud provider. Just wanted to make sure that was clear.
After reading your very interesting comment I thought I'd do some maths on the costs SES should be charging you. Essentially at $0.10 per 1,000 messages, and sending "several million" or "seven figures" worth of messages per month, so a possible total of 9,999,999, you should be paying almost exactly $1,000 for that. That's not really "THOUSANDS", but it is substantially more than $4 haha :)
If you're sending 5,000,000, then the figured drops to $500/month.
Anyway your $4/month server is a very cool concept. Would you be willing to share the configuration? Perhaps you've written an Ansible Playbook to provision it for you?
EDIT: So essentially my point is this: it's not that expensive, compared to compute resources to actually run your application, to have someone else manage all of that for you.
But you have some things missing from your calculation:
1) Attachments (yes, SES charges separately)
2) Dedicated IP addresses (SES charges you separately for this)
3) S3 (where emails are stored
4) AWS Lambda (because you need a script/function, that processes incoming messages as they come in).
But yes, you're right, with SES its cheaper than others, couple of thousand tops
> costs a lot more
The point was super clear, and yet you managed to miss it.
@jitbit clearly stated that he and his colleagues evaluated several possibilities, and the decided to set up their own system.
It's literally short-term decision: it's a make-or-buy problem.
The make options surely takes some time, but it is a one-time expense with pretty much low maintenance and super-low operating-cost ($4/month). It also requires some study but hey, that's know-how that is going to stay in the company.
The buy options is a lot more costly, but gives the gift of ignorance: you are not required to know or do anything.
And if you are wondering what the costs are: setting up a basic mail server for a domain takes as little as a couple of hours. A little-more complicated might take a day, and a complex setup not more than a week, for a skilled person.
Considering other options, it might just be cost-effective to hire a consultant to set it up.
Source: i've been running my mailserver for years, and I've done consulting in setting up and troubleshooting mail servers.