I've also written another article on The right way to migrate from Gmail to G Suite email, which may be of interest.
So lets see how I went about moving a GoDaddy hosted email address to G Suite.
The domain being moved was first set up in the G Suite Admin Console. This was accessible under Domains > 'Add/remove domains'.
The 'Add a domain or domain alias' button brought up a popup for the next step.
My primary G Suite domain was igorkromin.net and I didn't want to have the new domain as an alias since I wanted to be able to control its email addresses independently from the primary. So in the popup I selected 'Add another domain' and entered the domain name I was moving from GoDaddy to G Suite i.e. 'rawsparts.com.au'.
After this there were a few domain ownership verification steps. The 'Activate domain' link displayed all the available options for this, which I won't cover here.
Eventually I had the ownership verified and could continue with the rest of the setup.
Setting up MX records on the domain was next. Since I used CloudFlare as my DNS host, I made my changes there. However, if you're not sure where to make this change, a good bet is in GoDaddy DNS Manager.
I took out all of the existing MX and TXT records and added in the ones that Google uses (as listed here).
After a while the domain became Active in the G Suite Admin Console. It took a bit of time until this change was detected. It wasn't possible to move onto the next steps until the domain was listed as Active.
At this point the domain was set up to receive email but no users were created so no emails would actually arrive. In the Users part of the G Suite Admin Console I selected 'Add user' and created a user with the same name as was set up on GoDaddy. I could have used a different name, but I wanted to keep the email address the same.
Now the user was set up and ready to receive emails, but none of the existing emails were available yet.
The next step was to copy all of the existing emails from the GoDaddy servers over to G Suite. This process was started in the 'Data migration' part of the G Suite Admin Console. I wanted to migrate Emails, so that's what I selected.
The next step had some options on how G Suite would connect to GoDaddy's servers. The automatic option didn't work for me, so I had to find the hostname of the IMAP server that GoDaddy used. This could be found in the Email section of the GoDaddy cPanel by clicking 'Configure Email Client' in the dropdown options for the email address being migrated. I downloaded the 'IMAP over SSL/TLS' configuration file for iOS to find out the IMAP server details.
Inside the downloaded file were values like this:
So the IMAP server value based on the above example values was "xxxxx.prod.iad2.secureserver.net:993". I selected IMAP from the dropdown in G Suite, entered the IMAP server and the email address/password used on the GoDaddy side.
After clicking 'Connect' the next screen showed that G Suite was able to connect successfully. I then entered the migration start date using a value well before when the original email address was first created to make sure that all of the emails were copied over. I also selected to copy deleted and junk emails just in case.
The next step was a bit confusing because the migration screen showed 'No migration in progress'. Here I had to select the G Suite user I created earlier (which is the same email as on GoDaddy originally) to actually start the migration.
A popup was shown that let me enter the email address being migrated from (the GoDaddy IMAP one set up above) and the G Suite user that was going to receive all of the emails.
After selecting the source and target emails I was told that the migration was in progress.
Eventually the migration status was changed to 'Completed' and I could exit the migration. It was essential to Exit Migration to continue, this sent a migration report that showed the number of copied emails, any errors encountered, etc.
At this point the email address from the old GoDaddy server was working on G Suite, it was able to send and receive emails and technically this was all that was required. The next step was not strictly necessary in normal cases, however since I was running PrestaShop and using the standard PHP mailto() functionality, GoDaddy's servers had to be configured to route email via G Suite and instead of handling it locally. If I didn't perform this step, any emails sent by PrestaShop to the email address I migrated to G Suite would still be handled by GoDaddy's servers and hence would not show up in G Suite.
To make this change, I went to the 'MX Records' section of the GoDaddy cPanel.
After selecting the domain I was moving emails on from the dropdown, I clicked on 'Remote Email Exchanger' and clicked 'Change'. I then added the top three Google's MX servers from the previous steps and saved the configuration.
Now the migration was truely over.
If you haven't signed up yet, Google G Suite is definitely worth it. The first month is free and then it's only $5 per user and gives you 30Gb of storage space on the basic plan.