Ready to migrate?
Admin Guide

Google Chat to Teams Migration Guide

This guide shows you how to migrate Google Chat and Google Spaces to Microsoft Teams using Cloudiway. Migrate messages, files, members, and metadata while preserving conversation history.

18 min read Updated: 2024-12-01 Google to Microsoft 365

Overview

This Google Chat to Teams Migration Guide shows you how to migrate your Google Chat messages and Google Spaces to Microsoft Teams. Cloudiway ensures that your messaging migration runs smoothly while preserving conversation history and metadata.

Performance Note: Both Google Chat and Microsoft Teams APIs have throttling mechanisms. For Spaces with a large number of messages, Cloudiway offers options to migrate only recent messages (1000 by default), archive older messages to HTML files, or filter messages by date.

Looking for our Google Chat to Teams Migration Solution?

Discover all features, pricing, and use cases for Google Chat migration.

View Solution Page

Migration Features

Feature Details
Discovery The discovery process (Get List) retrieves the list of Spaces and automatically populates the migration list.
Audit The Audit counts the number of messages, replies and files.
Pre-processing This task creates the Teams in the target tenant and migrates the membership.
Migration The migration task performs the migration of the messages and files. The source remains accessible and not altered (read-only mode).
Delta Passes Run delta passes to migrate the changes between passes.
Chat Migration Chat messages are also migrated.
Dashboard Monitor your migration through the Cloudiway dashboard.
APIs Migration can be fully automated through the use of the Cloudiway REST APIs.

What's Migrated

The following items are migrated during a Google Chat to Teams migration:

Google Chat Messages
Google Spaces
Members of Spaces
Messages and Replies
Metadata (Created by, Timestamp)
@Mentions
Emojis
Files

Limitations

Meeting-linked Google Spaces are not supported. These are automatically created by Google Meet whenever a Calendar event has Meet attached. The avatar is a small calendar/document icon, and the name typically includes the meeting date or a recurring-meeting label.

Prerequisites

Before you start, ensure you have the appropriate permissions and accounts configured.

Google Prerequisites

Google feeds need to be granted. Administrator credentials are required.

Google Admin Account

Google Workspace administrator credentials for connector configuration

Microsoft 365 Prerequisites

Migration uses a mix of Graph APIs and CSOM calls, which require specific permissions. An Entra ID application needs to be installed, and global tenant admin credentials are required.

Migration Account Requirements: We recommend creating an account dedicated to the migration. You can delete this account once migration is completed.

Microsoft 365 Teams License

The migration account needs a Microsoft 365 Teams License

SharePoint Administrator

The migration account must be a SharePoint administrator

MFA on the target migration account: the migration runs on app-only authentication and is not impacted by your MFA policies, with two exceptions. Both require MFA to be removed on the migration account configured in the target connector: the migration of direct messages (1-1 chats) into Teams, and delta passes into Teams channels once the team created in import mode has been closed. Both prerequisites are actively being worked on by our development teams and will be removed in an upcoming release. Read more about MFA and the Cloudiway platform.

Cloudiway Prerequisites

Two types of licenses are required for Google Chat to Teams Migration:

  • Licenses for migrating the Spaces
  • User licenses (CAL) for migrating the Google Chats

Contact Cloudiway Sales to request pricing and quotes.

Migration Process

The Google Chat to Teams migration follows these steps:

  1. Create the source and target connectors
  2. Discover the Spaces and users or upload your list from a CSV file
  3. Configure the target location and Target Connectors
  4. Fill the Mapping Table
  5. Optionally run an Audit to count the number of messages in each Space
  6. Run the Pre-Processing task to create the target teams and migrate the permissions
  7. Run the Google Chat to Teams migration
  8. Close the Team
1
Connectors
2
Discovery
3
Preprocessing
4
Migration

Step 1: Create Connectors

To facilitate the Google Chat to Microsoft Teams migration, the Cloudiway platform needs to communicate with both your source and target domains. You will need to set up a connector for each source tenant and each target tenant.

Google Connector

To configure your Google connector, follow the steps in the Google Workspace connector configuration guide.

Google Source Connector Configuration for Sites and Collaborations
Google Source Connector - Sites, Collaborations
Field Description
Cloudiway Google Service Account Use the Cloudiway-managed service account (recommended for most users)
Custom Google Service Account Expert mode - use your own Google Service Account
Domain Names Your Google Workspace domain(s) to migrate
Migration Account Google Workspace Super Admin email address
Migration Account Password Password for the Super Admin account

Microsoft 365 Connector

Follow the Microsoft 365 connector configuration guide to create the Microsoft 365 connector.

Microsoft 365 Target Connector Configuration
Microsoft 365 Target Connector - Sites, Collaborations
Field Description
Automatic Cloudiway automatically creates and configures the Entra ID Application (recommended)
Manual Manually configure your own Entra ID Application
Email Address Microsoft 365 Global Administrator email address
Administrator Password Password for the Administrator account
Regular O365 Tenant Enable for standard Microsoft 365 tenants. Disable for GCC or government tenants.
Grant Admin Consent Click to authorize Cloudiway to access your Microsoft 365 tenant with the required permissions
Performance Tip: For very large projects, you can create multiple connectors to run more migrations in parallel.

Step 2: Discovery

There are three ways to retrieve or upload your Google Spaces: Run a Get List, upload a CSV, or manually create a single entry. We recommend running the Get List task as it will automatically fill your migration list.

Get List

Automatically discover Spaces from your source tenant.

CSV Import

Upload a CSV file with the list of Spaces to migrate.

Manual Creation

Manually create individual entries for testing.

Option 1: Get List

The discovery task retrieves the list of all users of your tenant (for all domains defined in the Google Source connector). For each user, it discovers their Google Spaces and stores them in the list.

Select the Group List tab under the Sites product.

Group List menu
Group List tab in Cloudiway

Under MIGRATION, click on the Get List option:

Cloudiway Get Lists menu
Migration > Get List option

In the popup window, select your source connector and the type of elements you wish to retrieve (Google Spaces), then click Get to start the process.

Google Spaces GetList dialog
Select Google Spaces and click Get

Once the list is retrieved, you need to define the target locations for each entry.

Option 2: CSV Import

The second way to edit the migration list is to upload a CSV file.

Check the CSV file format guide for generating the CSV file correctly.

Click MANAGE > Import. Select the CSV File, the Source and Target Connectors, then click Upload.

CSV Import dialog
CSV Import dialog

After uploading a CSV file, there is no need to define the source and target location.

Option 3: Manual Creation

You can also manage and create your list manually. Click the MANAGE tab, and from the drop-down list click Create, then fill all the required fields.

Create Google Space Entry
Create Google Space Entry dialog

Step 3: Configure Target Location

You can choose where to migrate your Space:

  1. Into a team (General channel of the team)
  2. Into a specific channel
  3. Into a private channel

If you want to migrate into a specific channel, set the name of the team in the Target Name field, and the name of the channel in the Target Channel Name field. If you leave these fields blank, the Space will be migrated into the General channel of the team.

Target channel name configuration
Configure Target Name and Target Channel Name

If the team or the channel doesn't exist in the target, it will be created during the pre-processing task.

Merging Multiple Google Spaces into a Single Team

If you want to merge several Google Spaces into a single Team in the target, migrating each Google Space into a separate Team channel, you have to specify the same:

  • Target Name
  • Target Email Address Nickname

These both parameters refer to the target Team.

In each migration line item, specify a different Target Channel Name where each Google Space will be migrated into.

Example: To merge 3 Google Spaces into "Sales Team", set Target Name to "Sales Team" and Target Email Address Nickname to "salesteam" for all 3 entries. Then set Target Channel Name to "Channel A", "Channel B", and "Channel C" respectively for each Space.

Mass Modify Your List

If you have run a discovery and pulled all your Spaces, but don't want to edit the list one by one, you can use mass modification options:

  • Assign Target: Automatically assign a target connector to the selected entries
  • Add Prefix: Automatically rename and add a prefix to selected entries
  • Change Target Recipient: Automatically set the Recipient Type

In the Group List, check one or more objects that you want to modify, then go to MANAGE and select the action.

Step 4: Mapping Table

Permissions and metadata may contain email addresses. During the migration, these addresses must be converted into target accounts. The conversion is automatically done by the platform using the mapping table.

Cloudiway automatically populates the mapping table during the Discovery process. However, it is your responsibility to check and validate the mapping table before starting the migration, as entries may be missing or emails may be different at the target.

Critical: Any error in the mapping table will cause corruptions and incomplete migrations (loss of metadata, loss of permissions). If you make an error, you cannot rerun the migration as the delta pass will only propagate changes. You will have to erase everything and restart the migration with new licenses.

Step 5: Audit (Optional)

The audit is optional and purely informative. It connects to the source Space and counts the number of messages, replies, and files.

To run the Audit, in Group List, select an entry and click MIGRATION > Audit.

Audit results
Audit results showing message counts

Step 6: Preprocessing

The pre-processing tool performs two tasks:

  1. It connects to the Source Space and adds the migration account defined in the Google connector as owner of the space. This is mandatory by Google APIs, otherwise the migration account cannot access the space.
  2. It creates the team at the target if it doesn't already exist:
    • It uses the Graph APIs and gives the owner role to the migration account defined in the target connector
    • It migrates membership and ownership

To pre-process a Space, in the Group List, select an entry and click MIGRATION > Pre-Processing.

Step 7: Migration

The Google Chat to Teams migration tool leverages Microsoft Teams Import APIs to maximize throughput. Learn how Microsoft Teams Import APIs work.

In Group List, select an entry and click on MIGRATION > Start.

The migration will start as soon as there is a free spot on the platform. You can monitor your migration by clicking on an entry and checking the logs.

Teams Migration Logs
Migration logs showing progress

Step 8: Post-Migration (Close the Team)

When your migration is completed, run the Post Migration Task. This will close the Team that has been created in import mode.

Post Migration task
Post Migration task to close the team
Note: Private channels cannot be created in Import mode. If you are migrating to a private channel, you don't have to run the Post Migration Task.
Important: Once the team is closed, the import API cannot be used anymore. If you start a delta pass after closing the team, the delta pass will work but the metadata will not be injected into the messages.

Chat Messages Migration

From the group user list, simply select a user and start the migration to migrate their chat messages.

Troubleshooting

Cloudiway provides an extensive knowledge base with many resources, including common error messages, video guides, and downloads.

Please visit the knowledge base: https://help.cloudiway.com

Support tickets are opened through the platform. Once logged in, go to your project and select Help > Support. The chatbot will ask you a couple of questions and then open a support ticket.

More information regarding our support program is available on our Support Home Page.

Frequently Asked Questions

What is the difference between Google Spaces and Google Chat?

Google Spaces are group collaboration areas (similar to Teams channels), while Google Chat refers to direct messaging between users. Cloudiway migrates both: Spaces are migrated to Teams channels, and Chat messages are migrated to Teams chat.

Can I migrate to an existing Team or channel?

Yes, you can specify an existing Team and channel name as the target. If the Team or channel doesn't exist, it will be created during preprocessing.

What happens to message timestamps during migration?

Cloudiway uses Microsoft Teams Import APIs which preserve the original message timestamps and author information, ensuring the conversation history looks authentic in Teams.

Why do I need to close the Team after migration?

Teams created using the Import API are in a special "import mode" that allows historical message injection. The Post-Migration task closes this mode, making the Team fully functional. Without closing, users cannot post new messages.

Can I run delta passes after migration?

Yes, delta passes are supported and will migrate any new messages since the last migration. However, if you've already closed the Team, metadata won't be injected into new messages during delta passes.

How long does a Google Chat to Teams migration take?

Migration duration depends on the volume of messages and files. Both Google and Microsoft APIs have throttling limits. Cloudiway optimizes throughput while respecting these limits. Large Spaces with many messages may take longer.

What licensing do I need from Cloudiway?

You need two types of licenses: licenses for migrating Spaces, and user licenses (CAL) for migrating individual Google Chat messages. Contact Cloudiway Sales for pricing.

Can I migrate private channels?

Yes, you can migrate to private channels. Note that private channels cannot be created in Import mode, so if you're migrating to a private channel, you don't need to run the Post-Migration task.

Ready to Migrate Google Chat to Microsoft Teams?

Get a free migration quote in minutes — entirely self-service.