Reviewed by Shubham Dixit, Independent Expert in Email Forensics and Data File Conversion. Shubham is an external reviewer and not a PCDOTS employee.
Table of Contents
- Which method is right for you?
- The step everyone skips: assign the import role
- Method 1: Free network upload with AzCopy
- Method 2: Drive shipping for very large data
- Method 3: Import through Outlook
- Method 4: Direct import with no admin rights
- Common errors and how to fix them
- Shared mailboxes and online archives
- People also ask
- Choosing your path
Need to import PST to Office 365 and not sure which of the dozen guides online to trust? Most of them are out of date, pointing you at menus Microsoft renamed years ago. This one is current. There are four real ways to do it, and the right choice depends on how much data you have, whether you are an admin, and how much patience you bring. Let us match the method to your situation.
Summary You can import PST to Office 365 four ways. The free network upload uses AzCopy and the Microsoft Purview portal but needs admin rights and the Mailbox Import Export role. Drive shipping suits huge data. Outlook drag and drop works for a few small PSTs. A direct tool like PCDOTS imports without admin rights or Azure.
Which method is right for you?
Before any steps, find your row in this table. It saves you starting down a path that does not fit your case.
| Your situation | Best method | Cost |
|---|---|---|
| Admin, many mailboxes, comfortable with command line | Network upload with AzCopy | Free |
| Terabytes of data, slow internet | Drive shipping | Paid shipping |
| A few small PST files | Outlook drag and drop | Free |
| No admin rights, or you want it simple and fast | Direct tool | Free demo, paid full |
Two of these are free, so do not pay for something your situation does not require. If you are a Microsoft 365 administrator moving a batch of mailboxes, start with Method 1. If you only have a few PSTs or no admin access, jump to Method 3 or Method 4.
How to choose your PST to Office 365 import method.
The step everyone skips: assign the import role
Here is the reason most people get stuck before they even begin. The import option does not appear in the admin portal until your account has the Mailbox Import Export role. By default this role is assigned to nobody, so you have to add it first.
- Sign in to the Exchange admin center.
- Expand Roles and click Admin roles.
- Select Organization Management, then open the Permissions tab.
- Tick Mailbox Import Export, then click Save.
Microsoft notes this change can take up to 24 hours to apply, though it is often live within an hour. If you prefer PowerShell, the same role assigns in one command. Connect to Exchange Online PowerShell and run New-ManagementRoleAssignment with the Mailbox Import Export role against Organization Management. Until this role is in place, the New Import Job button will not show, which is the single most common reason people think the feature is broken.
“The network upload route is genuinely free and solid, but it is unforgiving in two places, the role assignment and the mapping CSV. Keep each PST under 20 GB, get the mailbox addresses in the CSV exactly right, and do not close the import job window mid upload. Most failures I see are one of those three, not the data itself.”
Shubham Dixit · Independent Expert, Email Forensics and Data File Conversion
Method 1: Free network upload with AzCopy
This is Microsoft’s official free route. You upload your PST files to a temporary Azure location with the AzCopy tool, then point an import job at them. It is the right choice for an admin moving several mailboxes.
The four steps of the free network upload method.
Step 1: Create the import job and copy the SAS URL
Sign in to the Microsoft Purview portal, open Data Lifecycle Management, choose Import and click New Import Job. Name the job, choose Upload your data, then click Show network upload SAS URL and copy it. Keep this window open, you return to it later.

Step 1: Copying the SAS URL from the import job.
Step 2: Upload the PST files with AzCopy
Download AzCopy from Microsoft and put it in a simple folder such as C:\Temp. It is a single executable, nothing to install. Open Command Prompt, change to that folder, and run the copy command with your PST folder path and the SAS URL.
The command takes this shape. Replace the paths with your own.
azcopy.exe copy "C:\Temp\PSTs\*" "PASTE_YOUR_SAS_URL_HERE" --recursive
Two syntax details matter here, and missing either gives an error. Put a \* wildcard at the end of the source path, and wrap both the source path and the SAS URL in quotes. AzCopy uploads every PST in that source folder, you cannot pick a single file, so to test with one PST put it alone in its own folder first. Keep each PST under 20 GB, since larger files can slow or break the import. When the command finishes it reports the job as completed.
Step 3: Build the mapping CSV
Download Microsoft’s PST import mapping file and fill in one row per PST. The columns that matter are Workload (use Exchange), FilePath and Name for the PST, Mailbox for the destination address, IsArchive (TRUE or FALSE), and TargetRootFolder for where it lands. Get the mailbox addresses exactly right, since one typo stalls the whole job.
Two practical details save most people a failed job here.
- FilePath behavior. If your PST sits in the root of the upload, leave FilePath blank. Only fill it in when you uploaded the PST inside a subfolder, and then enter just the subfolder name. A path mismatch here is the top cause of the “PST could not be found” error.
- TargetRootFolder behavior. Leave it blank and the mail lands in a new folder called Imported. Enter a single / and the mail merges into the existing folders such as Inbox and Sent Items instead. Choose based on whether you want a clean separate folder or a merge.
One more trap that breaks the upload silently. Excel saves CSV files with semicolons in many regions, but the import needs commas. Before saving, open Excel File, then Options, then Advanced, untick Use system separators, set the decimal separator to a dot and the thousands separator to a comma. Now the CSV saves comma delimited and will validate.
The mapping CSV columns, and the two that trip people up most.
Step 4: Submit and start the import
Back in the open import job, tick the boxes to confirm the upload is done and you have the mapping file, click Select mapping file, browse to your CSV and click Validate. Green text means it is valid. Submit, wait for Microsoft to analyze the data, then choose to import everything and submit again. The job runs on Microsoft’s side and you cannot force it to hurry.
At the final import step you do not have to take everything. Microsoft offers a filter so you can import only mail newer than a chosen age, or skip messages where the user is only in the Cc line. Use it to trim old clutter, or just choose to import everything and submit.

Step 4: Confirming the import job completed.
One note worth knowing. Microsoft automatically deletes the uploaded PSTs from the Azure area 30 days after the most recent import job, so your data is not left sitting there.
Optional: verify the upload before you map
If you want to confirm the PSTs actually reached Azure before building the CSV, install the free Azure Storage Explorer. Connect using a Blob container with the same SAS URL, and you will see your uploaded folder and PST files listed. When you are done, right click the ingestiondata container and choose Detach, otherwise you get a connection error the next time you open it. This step is optional but it rules out upload problems before you spend time on the mapping file.
Method 2: Drive shipping for very large data
If you have terabytes of PST data or slow internet, uploading over the network is not practical. Drive shipping lets you copy the PSTs to a physical hard drive and mail it to Microsoft, who import it for you.
The flow is similar to network upload but instead of AzCopy you use the WAImportExport tool to prepare the drive, then ship it to the address Microsoft provides and track it. Honest caveat, this carries a per device fee and the round trip takes one to three weeks, so it only makes sense for genuinely huge migrations where uploading would take even longer. For most organizations, network upload is faster and cheaper.
Method 3: Import through Outlook
No admin rights and only a few PST files? You do not need the portal at all. Outlook imports PST natively.
- Open Outlook with your Office 365 account already added.
- Go to File, then Open and Export, then Import / Export.
- Choose Import from another program or file, then Outlook Data File (.pst).
- Select your PST, choose the destination folder and finish. Outlook syncs it up to the mailbox in the background.
This is free and needs no special permissions. The trade offs are real though. It is slow for large files, the upload depends on your connection staying steady, and it handles one PST at a time. For a handful of small files it is the simplest route. For more than that, the next method is far less work.
Method 4: Direct import with no admin rights
The admin methods are powerful but fiddly, and they assume you are a tenant administrator. If you are not, or you simply want the fastest path without Azure, AzCopy and mapping files, the PCDOTS Email Converter imports PST straight into an Office 365 mailbox in a few clicks. It also handles other PST conversions if you need them.
Step 1: Load your PST files
Open the tool, go to Open, then Email Data Files, choose PST Files and add one or many PST files from your system.

Step 1: Loading PST files, single or batch.
Step 2: Preview and select
The PST folders load with a full preview. Confirm the data and untick anything you do not want imported.
Step 3: Export to Office 365
Open the Export menu, choose Office 365, enter the destination mailbox login and start. The folder structure and attachments carry across, and a batch of PSTs goes up in one run.

Step 3: Exporting the PST data to Office 365.
Because it signs in as the mailbox user, this works without the Mailbox Import Export role or any Azure setup, which is exactly why it suits non admins and small teams.
Common errors and how to fix them
The network upload method fails in a few predictable places. These are the ones that come up again and again, with the fix for each.
| Problem | Fix |
|---|---|
| No New Import Job button | The Mailbox Import Export role is not applied yet. Sign out, close all Microsoft tabs, sign back in. Allow up to 24 hours. |
| “The PST could not be found in the storage account” | Path mismatch between the CSV FilePath and Azure. Put the PST in the root and leave FilePath blank, or enter only the subfolder name. |
| AzCopy syntax error | Add \* to the end of the source path and wrap both the path and SAS URL in quotes. |
| Mapping CSV will not validate | Excel saved it with semicolons. Turn off Use system separators in Excel options so it saves comma delimited. |
| PST imports into a new calendar, not the existing one | Check the calendar folder name matches the mailbox language, for example /Calendar or /Agenda, in TargetRootFolder. |
| Cannot reuse the SAS URL | A SAS URL stays valid for 30 days, but do not cancel the original import job window or you must regenerate it. |
If you keep hitting walls with the admin route, that frustration is exactly why many people switch to the direct tool in Method 4. It trades the free price for skipping the role, the CSV and the command line entirely.
Shared mailboxes and online archives
Two common variations come up a lot, so here is the short version of each.
- Import PST to a shared mailbox. The network upload method handles this. In the mapping CSV, set the Mailbox column to the shared mailbox address. The role and steps are otherwise identical.
- Import PST to an online archive. Set the IsArchive column to TRUE in the mapping CSV, and make sure the target user’s archive mailbox is enabled first. The PST then lands in the archive rather than the primary mailbox.
- Avoiding duplicates. If you re run an import, point it at a fresh target folder or import only the missing data, since the import does not de duplicate against what is already in the mailbox.
People also ask
How do I import PST to Office 365 using the admin center?
First assign your account the Mailbox Import Export role in the Exchange admin center. Then in the Microsoft Purview portal, open Data Lifecycle Management, create a New Import Job, upload the PSTs with AzCopy using the SAS URL, validate a mapping CSV and submit the job.
Can I import PST to Office 365 without admin rights?
Yes. Use Outlook’s built in Import / Export for a few small files, or a direct tool like PCDOTS Email Converter that signs in as the mailbox user and uploads the PST without needing the admin portal or the Mailbox Import Export role.
How do I bulk import multiple PST files to Office 365?
The network upload method handles bulk imports through one mapping CSV with a row per PST and mailbox. Without admin access, a direct tool can load many PST files at once and export them to Office 365 in a single batch.
Is the network upload method really free?
Yes. Microsoft’s network upload with AzCopy and the Purview import job is free. It does require admin rights, the Mailbox Import Export role and some command line work, so the cost is time and skill rather than money.
What is the PST size limit for importing to Office 365?
Keep each PST file under 20 GB for the network upload method, since larger files can slow down or fail the import. Split oversized PSTs before uploading, or use a direct tool that handles large files differently.
How do I import a PST into an Office 365 shared mailbox?
Use the network upload method and set the Mailbox column in the mapping CSV to the shared mailbox address. Everything else, the role, the AzCopy upload and the import job, works the same as for a regular mailbox.
Choosing your path
The honest takeaway is that there is no single best method, only the one that fits your situation. An administrator with many mailboxes and command line confidence gets the most from the free network upload, as long as the role is assigned and the mapping CSV is clean. A few small files belong in Outlook. Terabytes belong on a shipped drive. And if you have no admin rights or simply want it done without Azure, a direct tool moves the same data with far less setup.
Find your row in the table near the top, follow that one method, and you will have your PST data in Office 365 without the dead ends that catch people who pick the wrong route first.