Often companies use G Suite at the beginning of their business. Later they switch to Office 365 as it provides more specific tools for management and security.
If you find yourself here, probably, you need to migrate your data from G Suite to Office 365 and you don’t know how to do it. This process is truly quite complex and it would be great to know a few tips before pressing any “OK” buttons.
Things you need to know
First, beware of limitations. Google allows users to migrate only 2 GB of data per day. Based on this, it is worth making a migration plan for the most important data needed to support business processes.
Second, there are some things that Google allows and not allows to migrate. Things you can migrate are:
- Emails (inbox, folders, labels)
- Calendars and notifications
Some data don’t have an analogy in Office 365 so the following won’t be migrated:
- Chat message and calendar attachments
- Chats and chat history
- Appointments and tasks
- Google Groups for Business, Google Categories
- Email attachments that link to Google Drive
How to migrate this data? You can do it manually, modify or just leave. It is always good to agree with the data owner for every particular case as it is unique for every situation.
Now, pay attention to specific data policies. It usually depends on the company but many of them decide to keep such data as ex-employee emails or outdated documents. Such data isn’t critical for your business but may be helpful during possible investigations or litigation hold. Both Google and Office 365 have their Legal Hold features as a part of the most expensive subscription plan which may not be reasonable for you to take. So make sure you know what to do with this data and enact the Office 365 Litigation Hold.
The final thing you would like to do before launching the migration process is backup. It will help to keep all the data safe during migration and protect from accidental / intentional deletions and ransomware. Also, the quality Office 365 backup software can be considered as a cheaper alternative to Google Vault and Office 365 Litigation Hold.
Ready? Then let’s start.
- Create a Google Service Account.
Open Google Developers Console, login as admin on the domain that will be migrated. Create a new project and fill down all appropriate information. Then, go to Create Service Account and find the Service account name. Type in the name and click Create. See the Grant users access to this service account section? Press it and select JSON option, after that click Create.
Now, go to Email in the Service Account and find Unique ID on the Service Account Details page. You will need that ID so better save it for yourself. Also, if you see Enable G Suite Domain-wide Delegation, tick the box. If you don’t see a box, then it should be enabled.
- Enable APIs
Open Developer’s page, select the project you have created and enable APIs that you need. You would require the following APIs:
- Tasks API
- Contacts API
- Google Contacts CardDAV
- Google Calendar API
- CalDAV API
- Google Drive API
- Gmail API
- Admin SDK
You can verify all the necessary APIs are enabled. Click API in the upper left and view the APIs in the dashboard.
- Provide access to Service Account
Go back to your Google Admin panel, find Advanced settings and open Manage API client access. According to the Service Account information you created earlier, copy the Client ID and paste into the Client Name. In API Scopes, add the required API URLs, separate them with commas but without spaces.
Then, click Authorize and make sure that the list shows correct items. Note that it may need up to 24 hours for settings to apply.
- Subdomain for Mail Routing to Office 365 and G Suite domain
Open your Google Admin panel again, select Domains and click Manage domains. Choose Add a domain or a domain alias > Add another domain. There you need to put a domain name. It will be used for email routing to Office 365. If you will create a subdomain of your primary domain, verification will go faster. Now, make sure that your subdomain is verified, click Skip Google MX setup and select I use another mail server (another server is your new Office 365 server). Open your DNS provider and update DNS to have MX record at the created subdomain.
Make the same actions for Office 365. After your subdomain is verified, click Set up Google MX records and follow your DNS provider’s instructions.
Alright, we almost got it. Before migration, make sure that you have prepared all MailUsers for all users migrating from the G Suite. Here’s the instructions on how to do it.
- Creating a migration batch
Open Office 365 Admin center and select Exchange. Click Recipients>Migration>New (plus). Then, choose Migrate to Exchange Online. Now you should see the New Migration Batch window where you need to select G Suite (Gmail) migration and click Next.
You need to create a .csv file with the list of users that will migrate. Once done, click Choose file, select your .csv and press Next. Now, type the email address of a Google Workspace user and then go to the Specify the service account credentials using the JSON key file section. Select the JSON file from your computer and click Next on the new migration batch page.
Type the New migration batch name. Then, enter the Target delivery domain name — the one you created before for routing G Suite mail to Office 365. Next page will allow you to customize some features like choosing report recipients. Once everything is confirmed and double checked, click New.
Now you can see your batch and its status if you open the Exchange admin center and then select recipients and migration. When the batch status will be Synced , you will be able to complete the batch manually or it will be done automatically (it depends on your selected options). Once it is done, make sure that the batch status is Completed.
Congratulations! Migration from G Suite to Office 365 is completed.