Skip to content
T-Minus 365Try CloudCapsule

Migrating from GoDaddy to Office 365

Nick Ross · Updated

Many customers you come across will be on GoDaddy’s Office 365 platform. Migrating these customers to regular Office 365 requires that you either perform a migration or defederate the tenant. Defederating does not require a migration or downtime. Click here (opens in new tab) to see that solution.

Your MX records on GoDaddy are the same as when you are on Office 365. For this reason, you must remove your primary domain from GoDaddy and recreate it in Office 365. If done correctly, downtime should be limited to 5-15 minutes. In this article, i am going to give you best practices to follow using the BitTitan migration tool.

**Please Note** This is a highly level overview of the migration steps using BitTitan. For a complete step-by-step guide with screenshots, follow this link (opens in new tab). While this guide is specific to BitTitan the same concepts can be followed using any tool.

Set Up the Destination Environment

CheckList:

Provision a Net New Tenant in Office 365

  • They will be provisioned with the .onmcirosoft domain
  • This can be purchased directly or under the CSP model through a distributor

In 365 Admin Center, Go to Setup>Domains>Add Domains

.

  • *Note* This is where you will go to add the domain and verify with a TXT record after you remove from GoDaddy. For now users will have the .onmicrosoft.com as their primary SMTP address

Add Users and Apply Licenses

  • Add One at a time
  • Bulk Upload via Powershell
  • Bulk Upload Via CSV

#Bulk Import Users with Passwords Powershell#

Import-Csv -Path 'FilePath' | foreach {New-MsolUser -UserPrincipalName $_.UserPrincipalName -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -Password $_.Password -ForceChangePassword $False}

Set Impersonation rights for the admin user (opens in new tab)

Connect to 365 Exchange Online with Powershell (Link in title) and run the following:

New-ManagementRoleAssignment -Role ApplicationImpersonation -User <admin_user_name>

Prepare the Source Environment

CheckList:

Set Impersonation rights for the admin user (opens in new tab)

Connect to GoDaddy's Exchange Online with Powershell (Link in title) and run the following:

New-ManagementRoleAssignment -Role ApplicationImpersonation -User <admin_user_name>

Plan Downtime Window (opens in new tab)

Determine when you will be removing the domain from GoDaddy. Notify users accordingly

Notify GoDaddy of Planned Domain Removal

Let GoDaddy know about your planned removal 24hrs prior to avoid delays

Upgrade Software on Workstations

If applicable, install the latest Office 365 software to all users workstations

Set Up A BitTitan Account

Create a Login (opens in new tab)

Click the Link to create a BitTitan username and password.

Create a Customer

Enter Primary Domain name and customer name

Send Out Agent to Re-configure Outlook Profiles

CheckList:

*NOTE* BitTitan comes with a tool called Deployment Pro which re-configures Outlook profiles after the migration. This can be pushed out either through GPO or email.

Determine whether sending out agent via GPO or Email

Click Here for GPO Instructions (opens in new tab)

Click Here For Email Instructions (opens in new tab)

Track Users with Agent Installed

Devices will register and match users email address to computer in a one-to-one relationship. Each computer will have a "Heartbeat"

Prepare Migration Endpoints

CheckList:

Set up your source and destination endpoints in the BitTitan Portal

  • The source endpoint can be found under Office 365
  • Destination is Office 365
  • Provide Admin Credentials for each endpoint

Autodiscover Users

  • Clean Up User List as Needed
  • Remediate UPN issues by clicking on Pencil icon next to users
  • Source should contain .com address and destination should contain .onmicrosoft.com address

Verify Credentials

  • This will tell you if there are errors
  • Most Typical Errors are Insufficient Impersonation rights, wrong admin creds
  • Shows “Completed Verification” upon success

Subscribe Users

  • Select All Users>Click last Icon on top toolbar with 3 lines
  • “Apply User Migration Bundle”
  • Takes a 3-5 Minutes to propagate

Start Migration

CheckList:

Run Prestage Pass bringing mail from GoDaddy to Office 365

  • This will bring over a bulk of the data before we remove the domain
  • Set Prior to 60 days
  • Any user whose status changes to “Failed” is almost 100% due to server timeout.
  • Simply Re-Run these users

Run Full Pass to bring over remaining Mail, Calendars, Contacts, Notes, Rules

  • Start once Full-Stage Pass has completed
  • Can Run Up to 10 Delta Passes
  • Make sure everyone goes into a “Completed Status”

Domain Removal From GoDaddy

Checklist:

Bulk Update all Users UPNs to .onmicrosoft.com domain in GoDaddy

  • To Remove the domain, we need it removed from all records in the portal.

$UserCredential = Get-Credential

Connect-MsolService -Credential $UserCredential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session -AllowClobber
$testpath = test-path c:\temp; If ($testpath -eq $false) {new-item -type directory c:\temp}; $dataout = @();
Get-MsolUser -All | ? {$_.UserPrincipalName -match “domain.com”} | % {Set-MsolUserPrincipalName -ObjectId $_.objectId -NewUserPrincipalName ($_.UserPrincipalName.Split(“@”)[0] + “@domain.onmicrosoft.com”); $dataout += “$($_.UserPrincipalName)” ; $_.UserPrincipalName };$dataout | out-file c:\temp\UPNChangeOutput.txt

Remove all alias with the domain

$Records = Get-mailbox -ResultSize Unlimited| where {$_.emailaddresses -like “smtp:*@domain.com”} | Select-Object DisplayName,@{Name=“EmailAddresses”;Expression={$_.EmailAddresses |Where-Object {$_ -like “smtp:*domain.com”}}}

foreach ($record in $Records)
{
write-host “Removing Alias” $record.EmailAddresses “for” $record.DisplayName
Set-Mailbox $record.DisplayName -EmailAddresses @{Remove=$record.EmailAddresses}
}

Remove All Groups with the Domain

Get-MsolGroup -all | ?{$_.emailaddress -match “domain.com”} | Remove-MsolGroup -force

Remove the Domain

  • The portal will notify you if there are any users/groups who still have the domain attached to their profile
  • Work with GoDaddy if you need additional assistance

Recreate Domain in 365

Checklist:

Add the Domain to 365

  • These steps are basically the reverse of what we just performed in GoDaddy
  • In the 365 Admin Center, Go to Setup>Domains>Add Domains
  • Add the domain and verify with a TXT record (can take about 5min before you can recreate)

Bulk Update all Users UPNs to .com domain

$UserCredential = Get-Credential

Connect-MsolService -Credential $UserCredential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session -AllowClobber
$testpath = test-path c:\temp; If ($testpath -eq $false) {new-item -type directory c:\temp}; $dataout = @();
Get-MsolUser -All | ? {$_.UserPrincipalName -match “domain.onmicrosoft.com”} | % {Set-MsolUserPrincipalName -ObjectId $_.objectId -NewUserPrincipalName ($_.UserPrincipalName.Split(“@”)[0] + “@domain.com”); $dataout += “$($_.UserPrincipalName)” ; $_.UserPrincipalName };$dataout | out-file c:\temp\UPNChangeOutput.txt

Bulk Upload Distribution Lists

Create Two CSVs

  1. One has the Distribution Group Name and Primary SMTP Address
  2. One has the Group name and the members apart of that group

Import-Csv -Path ‘File Path’ | foreach {New-Distributiongroup -Name $_.Name -PrimarySmtpAddress $_.Address }

Import-Csv ‘File Path’ | foreach {Add-DistributionGroupMember -Identity $_.DL -Member $_.Alias}

Post-Migration Clean Up

Checklist:

Make Sure DMA Agent Ran Successfully

  • DMA status will go into “Completed” after succesfull authentication by end user
  • Any user that fails authentication 3x will go into an “error” status
  • These users you will need to reschedule and make sure they have the correct 365 password

Mobile User Reconfiguration Guides

Mobile Users can follow the following guides to setup their mailbox on their phone:

Iphone (opens in new tab)

Android (opens in new tab)

Spread the word

Facebook (opens in new tab) Twitter (opens in new tab)

See how your Microsoft 365 tenant measures up in about a minute.

CloudCapsule scans 300+ security controls, shows what to fix first, and keeps watching for drift after you fix it. Whether you manage one tenant or fifty, it’s the complete Microsoft 365 security workflow.

Try CloudCapsule for Free

No credit card required. Results in < 2 minutes.

Learn More at CloudCapsule.io

The weekly update

One email a week with what changed in Microsoft 365, plus new guides and videos.

Unsubscribe anytime. Privacy Policy

Keep reading

Defederating GoDaddy 365

Migrations

Last Updated: 11/24/2025 I updated this doc to include more FAQs and updated PowerShell for Resetting users passwords. Be careful if the existing licensing from GoDaddy includes Proofpoint (email security). × Non-Technical Users If you would like to work with an expert provider to perform the defederation on your behalf, please fill out the form […]

Migrating from GoDaddy to Office 365

Migrations

Many customers are on some form of GoDaddy for email, whether that be IMAP or 365 syndicate program. Migrating from this environment can be tricky even when using a 3rd party tool like BitTitan or Skykick. Moving off of GoDaddy’s Office 365 program requires defederating the tenant. I have steps of how to do that […]