Time to Read: About 4-5 minutes
Intended for: SharePoint and/or Teams admins doing Teams to Teams migrations
Key takeaway: Before you begin your Teams to Teams migration, learn about some key tips that will impact your migration plan.

In May 2020, Sharegate (the best SharePoint migration tool available, in my opinion) added a new feature–you are now able to migrate Teams from one tenant to another or within the same tenant. Prior to this release you would only be able to migrate files from the SharePoint site associated with each team.

Here are the top six things I learned while doing my first Teams to Teams migrations using Sharegate:

  1. Only Global Admins can migrate. The account that is doing the migration must have global admin access. You also need to migrate to and from the admin URL. So instead of sitename.sharepoint.com, you will use sitename-admin.sharepoint.com. Do not do what I did and waste time wondering why my SharePoint link wasn’t working.
  2. Yammer, Planner, Power BI, Stream, Forms, Flow and custom Wiki tabs do not migrate content (unless it is in the same tenant). You will see the Tab, but you will have to reconfigure the app in the Tab. If you are doing the migration within the same tenant, the content will migrate. In the migration report, the wikis show up as warnings that they did not migrate and will need to be recreated at the destination site. As I started digging, I realized that any channel that has a Wiki tab shows up even if there is no content. So, unless they know for sure that every Wiki is empty you will need to check the origin Wiki tabs for each channel in the report. For example, I recently migrated 12 Teams and only one channel in one Team was using a Wiki. The pages show up in the SharePoint site in a Teams Wiki Data document library as .mht files.
  3. Conversations from the Posts tab do migrate, but they look a little odd. See below – it shows me (the migrator) as having retrieved it from the source Team. So, my name shows up like this for every conversation. In this case the client was fine with that and was communicating to the team to expect to see my name. My recommendation is to use a Global Admin account such as “SP Admin” or “Teams Admin” to do the migration so a username isn’t showing as I think that could be confusing.

    The most 50 recent conversations show up in Posts tab, and the archived versions show up in a new tab in the Channel called ‘Message History’.
  1. Sharegate cannot do an incremental Teams migration. I let the client know that I’ll just do a SharePoint incremental migration with the content but that any conversations won’t be updated if we need to do the incremental migration. I recommended taking screenshots of any necessary conversations that were missed.
  2. Private chats do not migrate. This is because they are stored in the Exchange mailboxes of individual users and not in SharePoint or Teams. I asked Sharegate about this and they indicated that they are looking at further developing this option but there are roadblocks related to Exchange. I’m surprised Sharegate doesn’t call this out in their Copy Teams limitations documentation as it is something that users need to be made aware of. They may not understand that it isn’t a part of the Teams that will be migrated, and this caused issues with my client. It is very important to let users know in advance, as many people have key information in their chat history.
  1. Private Channels do not migrate with Sharegate. And you cannot currently make a private channel public. Here is how I am handling this:
    • Recreate the private channels as public in the destination Team in the Teams Admin center.
    • In the source Teams Admin center, add the Global Admin account that is migrating the content as an owner of the private channel.
    • Go the source private team in Teams and click on Files and Open in SharePoint. Copy the link and use this as the source.
    • Go the destination Channel you created and click on Files – this ‘activates’ the folder in the document library, so it shows up in Sharegate. Click on Open in SharePoint to grab the destination URL.
    • Then I am accessing the source private Channel content in Sharegate using the SharePoint content migration tool (the private Channels show up as SharePoint site collections in the origin).
    • In the destination I navigate to the associated SharePoint site, navigate to Documents > ‘Channel Name Folder’ and migrate the content there. This client wanted the Channels to be public and was fine with the conversations not migrating. They were primarily concerned with the content.
    • If you did any user or group mappings, you will need to import it for each migration you need to do.

Overall, I was pleased with the process and results. I do think we need a way to migrate the Private Chats and Private Channels and hope to see that soon from either Microsoft or Sharegate. I hope this helps you as you plan your Teams to Teams migration using Sharegate!