Thoughts on email hosting

It happens to me all the time. I have some idea or other need and before I know it I've registered a few new domains. Eventually I may need to setup some email addresses on those domains. Then I need to decide if I really want to pay ~$5-6 per month to setup email by setting it up with Google Workspace Essentials (née G Suite), Fastmail, ProtonMail or their ilk.

Before you know it you have a handful of different email addresses on different domains for various needs and you're paying $50+ per month for that privilege. And let's be honest, most of these addresses get just a few emails per week, if any.

It's 2021. While email is becoming less and less the backbone of any new venture, it's still a core and required piece of being an Internet citizen. It shouldn't be this complex to manage and setup email for all of your domains.

There are definitely benefits to keeping all of our email accounts entirely separate:

  • You want to separate business from personal.

  • You want each domain to have its own password and 2FA/security key setup for security. Not great if you have everything under one account or admin control — if one account gets hacked, they're all hacked.

While certain email providers can let you maintain separate user accounts together, they all seem to have the same sort of admin setup where an admin account can still control user accounts. That's not quite what I'm looking for.

For something so common, it should be easy and not cost an extra $5 per month just to setup one more custom domain and a few addresses. I often don't need all the assorted Google Workspace functionality, in fact I often prefer not having yet another Google account show up in the user account dropdown.

What I'm getting at is nothing novel: just easy and reliable turnkey email hosting. But a solution that is optimized for keeping accounts separate for security but somehow allowing for one account to pay for them. Similar to how you need to fetch an auth code to transfer a domain, perhaps you just need a payment code to setup billing.

You can go down the rabbit hole of self-hosting (Helm is an interesting solution here but I don't want the server inside my house) and dealing with maintenance, deliverability issues and reliability. That's not something I'm interested in.

There's also a breed of services like Migadu that offer one place for you to manage your domains and setup hosting for each. It actually seems exactly what I want, though I do have one concern about having one service, under the same login, manage everything for all email hosting for every domain I own. It just feels like it's consolidating everything and making it dramatically easier for an attacker to gain access to everything in one go. It would be interesting if they had a way to have one payment account, but individual, 2FA logins for each domain (basically removing the notion of any sort of organization admin that can control all domains).

What about email aliases?

I'm holding off for an ideal solution like that but for now, there's an adjacent set of solutions for slightly different needs. If you don't absolutely need to have emails/domains kept separate and don't mind mixing up the inbox, you can use email aliases.

Aliases let you send and receive email for another address on another domain, but all inside a different email inbox. So if your primary G Suite email is yourname@domain.tld, you can have an email alias that lets you send and receive email from that inbox for your other email account nickname@otherDomain.tld. There's just one inbox though, but it's up to you to filter and organize as you please.

This could be handy for emails/domains you have that are related: for example you may have a business domain and then a few emails on a different domain for the product owned by the business.

I recently discovered thanks to some replies to that tweet above. ImprovMX makes setting up email forwarding for any custom domain easy and I've used it for one of my domains so far. The only thing I don't feel great about is that using this method, you'll have to specify an SMTP server to send your email with and unfortunately that connection is password-only, no two-factor auth (even if 2FA was feasible you'd probably have to be asked with every email you send and email clients aren't designed with that in mind).

Separately, someone also mentioned, which helps you make unique, temporary email address aliases. This is similar to how Sign in with Apple can hide your real email from the service if you enable the "Hide my email" setting. With SimpleLogin you can create all sorts of aliases that forward email to your real email, and completely hide your address. You can of course disable/delete the alias at anytime. I think I'll be trying it out in the future when signing up for new things.