Step 1: Domain preparation
Users have to follow these steps to prepare the domain
Make sure that you have a license for Target Office 365
Then, create admin accounts in both the source and target for a smooth migration.
Now, users have to create user mailboxes, room/resource mailboxes, and distribution groups in the target.
Perform AD DS consolidation using AD DS tools and sync the source domain with the target domain manually or using synchronization (if needed).
It is mandatory to train end users regarding the post-migration use of Microsoft 365.

Step 2: Domain Verification
In Microsoft 365 start verification of the target tenant domain.
Then, add the source domain in the target Microsoft 365 admin center and create TXT records in DNS.
Note: Make sure the domain is in use only by one tenant. Else, the verification will fail. After completing this process, it will take around 72 hours for the change to be noticed.

Step 3: Schedule Migration
First, generate a list of user mailboxes that are to be migrated, and for mapping create a CSV file.
Write down the lowest value of TTL on the MX record (of the primary email domain).
Disable directory sync for the source tenant (from Microsoft 365 admin center) to avoid sync of any modifications in the source tenant account AD DS to the Microsoft 365 platform. Minimum 24 hours will be needed to complete the disabling process.

Step 4: Migration stage
Top inbound mail flow
Stop inbound mail flow to the source tenant by changing the primary MS record to an unreachable value or by using any third-party application. As you have noted the lowest value of TTL on MX record of your primary email domain in the preparation stage, you can easily plan the time of this step.

Preparing source tenant
Before the Office 365 Tenant to Tenant Migration process, the primary mail domain should be erased from all objects in the source tenant.
Reset the default email address to the initial email address of Microsoft Office 365.
Delete all the Lync licenses from the source tenant with the help of the Lync Admin Portal.
Then, reset the default email address of distribution lists, rooms, and resources to the initial domain.
From all tenants, objects remove the secondary email address
In the Windows PowerShell, run the command Get-MsolUser -DomainName XYZ which will retrieve all the objects that are still using the primary email address or refusing the removal.
Preparation of target domain
This process involves verifying the source tenant in the target domain.
First, configure the auto-discover CNAME.
When you use AD FS, then configure a new domain in the target tenant for AD FS.
Now, activate the new user accounts in the target domain and then assign licenses.
On the new users, set the source domain as the primary email address. Also, communicate the passwords to end users.
When the user mailboxes are active, change mail routing and point the MX record to the new Office 365 email address.
Finally, test the mail flow in and out of the target tenant.

To know more about how to migrate email from GoDaddy to Office 365 visit Apps4Rent.