PLATFORM
Microsoft Teams Migration Tool
MigrationFox migrates Microsoft Teams channels between tenants and from Slack to Teams. Channel messages, threaded replies, and attachments are transferred — preserving conversation history so your team can pick up right where they left off. Channel rosters are enumerated and reported in the post-migration export so you can add members during cutover (Microsoft's Teams migration mode prevents direct member writes during the import phase).
What Gets Migrated
MigrationFox uses the Microsoft Graph API's Teams migration mode to import content into destination channels. Here is what transfers:
- Channel messages — every message in standard and private channels
- Threaded replies — reply chains are preserved under their parent message
- Attachments — files shared in messages are uploaded to the channel's SharePoint document library
- Sender attribution — messages are attributed to the original sender (requires Azure AD user mapping)
- Timestamps — original sent dates are preserved using migration mode's
createdDateTimeoverride
Tenant-to-Tenant Migration
When two organizations merge or an organization restructures its Microsoft 365 tenants, Teams data needs to move between tenants. MigrationFox handles this by reading from the source tenant's Graph API and writing to the destination tenant using Teams migration mode.
The process works in three phases:
- Discovery — scan source teams and channels, count messages and attachments
- Provisioning — create destination teams and channels in migration mode
- Transfer — import messages and replies with original timestamps and sender attribution. Attachment references are preserved in the post-migration export so you can manually attach during cutover.
After migration completes, MigrationFox finalizes the channels to exit migration mode and make them available to users.
Slack-to-Teams Migration
Moving from Slack to Microsoft Teams is a common scenario during platform consolidation. MigrationFox reads Slack channel history via the Slack API and imports it into Teams channels using migration mode. Slack threads become Teams reply chains. Files referenced in Slack messages are downloaded and included in the post-migration export so you can manually attach them in Teams during cutover (direct file-to-channel upload during message import is in our roadmap).
User mapping between Slack and Azure AD is done by matching email addresses. Messages from unmapped users are attributed with the Slack display name in the message body.
Migration Mode
Microsoft Teams migration mode is a special API state that allows bulk import of historical messages with backdated timestamps and sender attribution. MigrationFox creates channels in migration mode, imports all content, and then completes the migration to make channels fully functional. This is the only way to preserve original message dates and authors during a Teams migration.
Key Features
- Parallel channel processing — multiple channels migrate simultaneously for faster completion
- Attachment handling — files are transferred from source to the destination channel's SharePoint library
- User mapping — sender attribution is preserved via the original author's display name on each migrated message; channel rosters are reported in the post-migration export for cutover
- Progress tracking — real-time message counts and channel completion status in the dashboard
- Error recovery — failed messages are logged and can be retried without re-migrating the entire channel
Migrating Teams to Google Chat
Switching from Microsoft 365 to Google Workspace? Teams channels migrate to Google Chat spaces, message-attached files land in a dedicated Shared Drive, and the channel's full document library migrates in parallel via a companion SharePoint to Google Drive job. Walkthrough: Teams to Google Chat migration guide.
Pricing
Teams migrations are billed at $0.50 per GB of attachment data transferred. Message-only migrations (no attachments) are billed by message volume. Your account starts with 2 GB free — no credit card required.