Bulk Convert Exchange Online User Mailboxes to Shared Mailboxes
Question details
An administrator needs to automate the conversion of approximately 950 licensed Exchange Online user mailboxes to shared mailboxes, set up forwarding rules, and remove licenses following a company merger.
- Product
- Exchange Online
- Device & OS
- not provided
- Scenario
- Post-merger IT consolidation requiring bulk modification of mailbox types, mail routing configurations, and license management for a large group of users.
- Observed behavior
- The goal state is to have all 950 user mailboxes successfully converted to shared mailboxes, configured with specific forwarding rules, or converted to mail users, with their Microsoft 365 licenses safely removed to optimize costs.
Ensure you have Global Administrator or Exchange Administrator privileges in your Microsoft 365 tenant, and prepare a CSV file containing the target user identities. Always test your conversion script on a small group of 2-3 mailboxes before executing the bulk change on all 950 users.
Use Exchange Online PowerShell for Bulk Conversion
The most efficient and reliable method to convert hundreds of mailboxes simultaneously is by using Exchange Online PowerShell cmdlets.
By utilizing PowerShell in combination with a CSV file, administrators can automate the conversion process, apply forwarding addresses, and handle external mail users without manually clicking through the Microsoft 365 Admin Center for every user.
Open PowerShell as an administrator and run the 'Connect-ExchangeOnline' cmdlet. Sign in with your Global Administrator credentials.
Use a script to loop through your CSV file and run the 'Set-Mailbox -Identity "user@domain.com" -Type Shared' command for each targeted user mailbox.
If incoming emails need to be routed elsewhere, apply the 'Set-Mailbox -Identity "user@domain.com" -ForwardingSmtpAddress "target@domain.com" -DeliverToMailboxAndForward $true' command.
If an external mail user is required rather than a shared mailbox, use the 'New-MailUser' cmdlet to create the necessary objects.
Once the mailboxes are successfully converted and retention policies are verified, use Microsoft Graph PowerShell or your approved licensing commands to remove the Exchange Online licenses from the users.
A Lightweight Office Alternative for Your Post-Merger Organization
While backend infrastructure tasks like bulk converting Exchange mailboxes require complex PowerShell scripting, your daily document collaboration doesn't have to be difficult. WPS Office offers a free, lightweight, and highly compatible alternative to Microsoft Office, making it easy to unify document workflows across newly merged teams.
- 1. Download the Installer: Visit the official WPS Office website and download the free installation file for your operating system.
- 2. Install WPS Office: Run the setup file and follow the simple on-screen instructions to install the suite on your device.
- 3. Sign In and Sync: Open WPS Office and create a free account to unlock cloud storage and sync your documents across devices.
- 4. Start Collaborating: Open any existing Microsoft Office files seamlessly and begin working with your team.

Frequently Asked Questions
Do I need to assign a license to a shared mailbox in Exchange Online?
Generally, shared mailboxes do not require a separate license unless they exceed 50 GB in storage size, require an in-place archive, or have a litigation hold applied. Always verify the mailbox size before removing the original user license.
Can I bulk convert mailboxes using the Microsoft 365 Admin Center UI?
The Microsoft 365 Admin Center is designed for single mailbox conversions. For bulk operations involving hundreds of users, Exchange Online PowerShell is the only practical and supported method.
What happens to the user's OneDrive data when I remove their Exchange license?
Removing a user's Microsoft 365 license will flag their associated OneDrive data for deletion based on your organization's retention policies (typically 30 days). Ensure you back up or transfer necessary files before stripping licenses.
How do I safely test my PowerShell bulk conversion script?
Create a test CSV file containing only 2 or 3 test user accounts. Run your PowerShell script against this limited list, then manually verify the mailbox types, forwarding rules, and access permissions before processing the full batch.




