1) Sign up for Fastmail.
2) Sync all mail from GMail account to Fastmail (via the Fastmail web UI; you grant FM access to your GMail data through OAuth - once sync is complete you can revoke this access).
3) Set up an auto-forward rule in GMail for all incoming mail to go to your Fastmail address.
4) Set up a rule in Fastmail to put all incoming mail sent to your GMail address into a separate folder (or labeled with a special label if you're signed up for Fastmail's label beta). Any time you get email in that folder, that's a task for you to either unsubscribe or update the corresponding account to your new email address.
I'm currently in month #10 of migration. Most commonly used accounts were updated during the first couple of weeks. But be careful that the tail of services that are still configured to use your old email address tends to be long, and in my experience those are some of the more important emails that you don't want to miss. The ones that are only sent once every couple years.
Also, it really helps if you've been using GMail with a personal domain name (e.g. through Google Apps). In this case migrating is a matter of pointing the MX DNS records to Fastmail's servers. Bonus points: Fastmail allows wildcard recipients, so if you prefer to have unique addresses for each service you sign up for, you don't even need to set up a separate xyz@example.com alias. Just register with <whatever>@example.com and you'll get all email delivered to that address in your inbox, and you'll be able to specify it as the sender's address if you decide to reply to some of those mails. Having a separate email address for each web service also makes looking up who leaked what on haveibeenpwned.com more fun.
0) Get your own domain and set up MX record to fastmail servers
This way if you ever migrate again, you will not need to do it all over again. One word of advice - keep your registrar login and emails associated with the domains _not_ on your domain, otherwise it is going to present a problem should you ever need to fix anything related to domains.
Recently my provider decided to randomly cancel my domain, getting it back from transfer with everything out of date was painful.
Basically, if you register your domain through namecheap, then after setting up email at *@ximeng.net, don't update your email address to be namecheap@ximeng.net when changing the rest of your accounts. Reason being, if for some reason there is a problem with the domain, you don't want your only means of fixing that problem to potentially be invalid.
Therefore it wouldn't be a bad idea to keep the account associated with your registrar still on the original Gmail address (or if you are really paranoid, create a new email address through someone like protonmail just for your registrar account).
I have to manage a domain and have a basic understanding of how DNS works, that is unavoidable.
DNS is a bit complicated to describe in short reply but on a very high level: say I register a domain example.com. Registrars usually give you an interface to manage DNS where you can set A records (association with IP), you basically put there 2-5 IP addresses of the DNS servers serving your domain. You can also setup MX records that are used to resolve mail servers for your domain. Setting up fastmail is simple: you tell them that you want them to serve mail for example.com and setup couple of MX records pointing to the Fastmail servers (they give you the full host names).
Eventually, when I jumped to FastMail, I repointed my domain name to it, and most of my new emails started coming over automatically, since the email address is now something I control. I monitored Gmail for a while regularly to catch straggler services. (I chose not to forward to avoid complacency with stuff going to Gmail before reaching my FastMail account.)
First, do a one-time import from Gmail. Fastmail has an import tool that does this over OAuth. Took me ~45 minutes to import ~50,000 emails.
Next, setup IMAP and SMTP on Fastmail for your Gmail account. This way, you can continue to receive and reply to emails sent to Gmail, using Fastmail as the client. When replying to an email, Fastmail defaults to the right sender (identity) based on whom the email is sent to (abc@fastmail.com or abc@gmail.com).
An alternative is to setup email forwarding in Gmail, so you get a copy of emails sent to your old address.
If you don't have a custom domain, I highly recommend getting one and use that going forward. There might come a day when you want to migrate off Fastmail. With a custom domain, you just need to update the MX records.
See https://www.fastmail.com/help/account/migratetofastmail.html
No connection to them, just a happy customer!
- Frontier
- Green Man Gaming
- Paperspace
- Rainway
- SquareTrade
On top, I had some burts of motivation to step through my password manager vault occasionally and update accounts I don't log in to too much.