Switching from Gmail to What?

In my ongoing quest to DeGoogling My Life I decided to explore alternatives to Gmail. I had a few requirements: I had to bring my own domain(s). This was something I had previously had through Google Workstation with support for multiple domains and aliases. I wanted the service to be privacy-focused. I was willing to pay for a premium service as long as it felt worth it. I realize most people probably think it’s ridiculous to pay anything for email at all, but what you give up in privacy for free email isn’t worth it, in my opinion.

Gmail to Proton Mail

First I tried Proton Mail for about a month. Initially, I really liked it. They have apps for every platform I care about (Linux, Android, Mac), plus a pretty decent web client. They support Gmail-style labels and folders. The import process from Gmail was a snap. I manage my DNS through Cloudflare, and I’m pretty comfortable setting DNS up for email at this point, having gone through this process for multiple domains.

Proton Mail’s Encryption in Practice

They tout that your email is encrypted, but there are major caveats to this. Any email you send to other Proton Mail users is automatically end-to-end encrypted. They also support PGP encryption, which is one of those things that is theoretically nice, but in reality is a pain to implement and requires your contacts to use PGP encryption as well. So in reality if you want end-to-end encrypted email the easiest solution is for you and your contacts to all be using Proton Mail, but let’s be realistic, you’re not going to convince your contacts to change email providers for you, much less convince them to exchange PGP keys. They do encrypt your data at rest using what they call zero-access encryption, which claims no one except you are capable of reading your emails.

Issues with Android App

Over several days of use, some things really began to bug me about Proton Mail though. My biggest complaints primarily involved their Android app, which is really buggy. I was experimenting with different signatures and for weeks the mobile app was using an old cached signature in my emails rather than the one I set up on the desktop app. Several settings seemed to reset to their defaults frequently, for example it kept trying to add a unique mobile signature, which defaults to this tacky “Sent with Proton Mail”. No matter how many times I turned off threaded (or conversation) view in the app it seemed to mysteriously turn itself back on.

Most infuriating was the fact that the unread indicators were unreliable. I would mark emails as read and archive them only to have them show up again as unread. Phantom emails from days prior would suddenly resurface. Or worse, it would show an unread email in a folder but nothing showed up when I searched unread.

No Suppport for CalDav Calendars

The straw that broke the camels back though, is I had already gone through the pains to setup Baikal as a CalDav server, which finally gave my iPhone wife and my Android self a shared family calendar. Proton Mail does not support syncing with CalDav calendars though. Proton does have a calendar feature/app, and it seems fine, if somewhat basic. Truthfully, I love Google Calendar and I haven’t found anything that quite replaces it yet, especially on Android. What this meant practically though was that any invites I received to my email address showed up on my Proton calendar, but there was no way to easily copy them to my CalDav server so they’d show up on our shared family calendar. Maybe there is a way to hack together some kind of solution, beyond manually download events as .ics files and importing them in Thunderbird.

Proton Mail to FastMail

This led me to search for email providers that support CalDav sync. The first one that immediately jumped out at me was FastMail, because I had heard good things about them before. I decided almost immediately to give them a try since they offer a 30 day free trial. I figured the biggest thing I had to lose was the 15 minutes it took me to reconfigure my DNS again. In a weird twist, my experience with FastMail has been almost been the opposite of my experience with Proton Mail. It started out being a pain, as I had several issues with importing mail and contacts. But now that I’ve used it for a while and those issues have mostly been resolved, I’ll say I like it a lot.

FastMail Compared to Proton Mail

I think in all the areas that ultimately mattered to me from an email perspective, FastMail seemed either equal to or better than Proton Mail. They are difficult to compare fully, because Proton Mail includes the whole Proton suite of applications, and that may or may not matter to someone, but it meant little to me. I already have a VPN, so I didn’t care about the Proton one. FastMail and Proton Mail both offer highly customizable email rules engines, with Fastmail supporting RegEx (!) in their rules engine. FastMail supports either folders or labels, but not both. FastMail offers clients for all the same platforms, but their clients work better.

Issues Importing Mail and Contacts

The biggest issues I had with FastMail was importing mail and contacts. First of all, I quickly realized that exporting from Proton Mail directly to FastMail was a non-starter. I have every email I’ve ever received since 2008 to import, which is a lot. The recommended way to get them into FastMail from Proton Mail is in batches of 1000 using the Proton Mail Export Tool.

The much more acceptable solution for me was to import from Gmail and just manually forward emails from Proton Mail that I cared about, otherwise live with a one-month gap in my email history from when I was using Proton Mail. I have both a personal Gmail account and a Google Workspace account to import from. Importing from both turned out to be a snap using FastMail’s wizard, and it actually took much less time to import them than when I went through the same process with Proton Mail.

Where I really suffered was importing contacts though. I tried multiple times to import from my CardDav server, Baikal. Every time it would fail on import. It emailed me a log every time. Oddly enough it would successfully import a few hundred of my contacts each time, but then fail. I tried instead to export the contacts from Thunderbird as a csv file and importing them that way, but got a mysterious “Unable to Connect to Server” error each time I tried to import it.

Reaching out to Support

I eventually emailed support for help. The first thing I’ll say is that it took them a few days to get back to me. I will note at this point I had decided to pay for a month’s worth of service because it was only $6, and there are a couple of limitations they put on people during the free trial period to deter spammers. At any rate, by this point I was a paying customer, and it took me 3 hellish days to hear back from them. You don’t realize what a hassle it is to be missing contacts in your email client until you realize you need to type everyone’s email in manually - things you take for granted when everything is centralized in the Google or Apple ecosystem.

Support basically indicated that they would need to escalate it to the development team and it would take several days to get resolved. I sent a follow up email indicating my disappointment and honestly letting them know that if I couldn’t import my contacts I couldn’t switch to them. Then mysteriously, my contacts appeared within hours. So I don’t know exactly what happened, but the contacts were imported in the end, so it worked out for me. This experience did leave somewhat of a sour taste in my mouth for their customer service experience though. I would hope to get faster response times and a more communicative customer service team.

CalDav Integration

After all that, adding my CalDav calendar turned out to be simple and painless. After using it for a week or so, I really like the FastMail Calendar, actually. It works pretty well. It’s fast and easy to add events to it. You can configure it so your calendar appears in agenda-view as a sidebar in your email inbox. Not much to say here, it just works and is painless. I’m still experimenting with which calendar app to use for Android.

Final Thoughts

When it boils down to it, both Proton Mail and FastMail offer a Gmail-like experience in a desktop environment. FastMail’s implementation seems a little smoother and less buggy than Proton Mail’s, especially when it comes to the mobile experience. Furthermore, now that I have experienced the pain of exporting from Proton Mail, it’s obvious to me that lack of data portablity is a major issue with Proton Mail. Will I stay with FastMail long term? Who’s to say, but their support for CalDav makes it likelier. Now that I’ve gone through the seemingly harrowing experience of migrating email providers twice in a month now, I’ve realized that switching isn’t really all that bad.

Why not Self-host Email?

A few people have asked me about self-hosting email. To me, email is one of those high-availability services that just makes more sense to pay someone else to handle it. I don’t want to miss an important email because my power was out, for example. Plus, I’ve dealt with deliverability issues in the past when I’ve experimented with hosting my own email server, and I just don’t want to deal with the administration and headache that comes with resolving those kind of issues.