Migrating Email, Calendars, and Contacts from Office 365 to Google Workspace with macOS
Way back in the day I signed up for a free G Suite plan (now called Workspace). At the time you could have up to 10 users for free. I used this with a personal domain for email and just auto-forwarded messages to my personal @gmail.com account that was my primary email address. Around 2019 or so I thought I’d switch over to an Office 365 paid plan for my personal email, contacts, calendar, and start using my actual personal domain email address as my everyday email instead of my Gmail address. I wanted to use Office 365 because I was using it more for work and wanted to get comfortable with some of the admin capabilities that it had to offer, and I figured it would have feature parity (or close enough to it) with Gmail.
This didn’t work out so great. There were fewer fields in the Contacts for Office 365 (e.g. some relationships were missing like “mother” and “father”), and there was a persistent bug that changed a person’s birthday that I noticed whenever I edited their contact information outside of the Office 365 web interface. I also received more spam email than I ever did when I used Gmail.
So after about a year it was time to fully embrace Google Workspace (and still deprecate my old Gmail address because I wanted to use my own domain). The first step was to update my domain’s DNS MX records to point to Google’s servers for email. Once that was complete I still wanted to copy all of my emails, calendar events, and contacts from Office 365 into Google Workspace.
Migrating using macOS Apps
I use a MacBook Pro as my daily driver for most computing tasks. It turns out that using macOS’ built-in email and calendar clients made migrating those parts of my data to G Suite very easy. In the Calendar app, I selected each calendar, went to File > Export, and exported a .ics file. This could then be imported into my G Suite calendar. It just worked!
In the macOS Mail app, I added my new Google Workspace account, then dragged and dropped messages from my Office 365 account’s Inbox, Archive, Sent, etc. folders into their respective folders in the Google Workspace account. Before doing this I updated the preferences to download ALL attachments instead of just recent ones. This took a while to move hundreds of messages, but it worked just fine.
Migrating the contacts was also fairly easy because I was actually using the contacts from my old Gmail account instead of using Office 365 (because of the darn birthday bug). That was a simple export > import of all contacts using Google’s Contacts web app.
This might not work if you have several years’ worth of email messages, but for my use-case with only a few hundred email messages over about a year of use, it was a quick and viable solution.