Quick answer. Attachments are what bloat a PST, so pulling them out saves space and makes a backup. For a few, Outlook saves them by hand. For bulk, a free VBA script works if you are technical, and a dedicated extractor pulls every attachment from many PST files at once without Outlook, filtering by size.
On this page
Why pull attachments out of a PST?
A PST holds far more than text. The attachments inside it, all those documents, images and PDFs, are usually what make the file swell, and a bloated PST is slow to open and awkward to back up. Pulling the attachments out into a folder does three useful things at once, it shrinks the PST so Outlook runs smoother, it gives you a clean copy of the files as a backup, and it speeds up any later migration to the cloud. The question is just how many you have and how technical you want to get.
Extracting attachments shrinks the PST and leaves you a tidy backup folder.
Which method fits you?
There are three honest ways to do this. For a handful of attachments, Outlook saves them by hand and costs nothing. For bulk extraction on a budget, a free VBA script inside Outlook works if you are comfortable with a little code. For many PST files, or an easy bulk job with no coding, a dedicated extractor pulls everything at once without Outlook. Here is how they line up.
Outlook for a few, a free script for technical bulk, an extractor for easy bulk.
Save a few attachments in Outlook
If you only need a handful of files, Outlook already does this and it costs nothing.
Step 1. Open the PST in Outlook through File, then Open and Export, then Open Outlook Data File.
Step 2. Open the email that holds the attachment you want.
Step 3. Right click the attachment, choose Save As, or use Save All Attachments for a whole message, and pick a folder.
This is fine for a few messages. The snag is there is no way to grab attachments across many emails at once, so doing a whole mailbox this way is slow going. For that you need one of the bulk methods below.
Extract in bulk with a free VBA script
Outlook has a built in macro editor, and a VBA script can walk through a folder of emails and save every attachment for you. It is free and it does handle bulk, which the manual method cannot.
The trade off is that it is a technical route. You need to enable macros in Outlook, paste in a script, point it at the right folder and run it, and be ready to adjust the code if it does not behave. If you are comfortable with that, it is a genuine no cost way to extract in bulk. If a macro editor sounds like a headache, the tool method below does the same job without any code.
“When you extract attachments at scale, two things matter beyond just getting the files out. Keep the original PST untouched so it stays a clean reference, and hold on to which message each attachment came from, since a loose folder of files with no context is far less useful in an audit. A good extractor preserves that link and lets you filter by type or size.” Shubham Dixit, Email Forensics reviewer (draft, pending approval)
Extract all attachments without Outlook
When you have many PST files, or you just want bulk extraction without touching code, a dedicated extractor reads the PST and saves every attachment for you. The PCDOTS PST Converter loads one or many PST files, pulls all the attachments in one run, and lets you filter by size so you can grab only the large ones. It reads both ANSI and Unicode PST, works without Outlook installed, and needs no technical setup. A free trial extracts a limited number so you can test it on your own file first.
Extracting every attachment from a stack of PST files in one run.
Here are the steps with the screens.
Step 1. Download, install and start the extractor on your Windows PC.

Step 2. Open the menu, choose Email Data Files then Outlook PST files, and load your files.

Step 3. Open the Extract menu and select Attachments.

Step 4. Set a destination folder and click Save. Every attachment is written out.

The three methods compared
When each one is the right call.
| Method | Best for | Good to know |
|---|---|---|
| Outlook by hand | A few attachments, free | No bulk, slow for a mailbox |
| VBA script | Bulk on a budget, technical | Free, needs macros and code |
| Extractor tool | Many PST files, easy bulk | No Outlook, filters by size |
Frequently asked questions
How do I extract attachments from a PST file?
For a few, open the PST in Outlook and use Save As or Save All Attachments. For bulk, run a free VBA script in Outlook or use an extractor tool that pulls every attachment from many PST files at once without Outlook.
Can I extract all attachments from a PST at once?
Yes. A VBA script or a dedicated extractor can save attachments across every email in one run, which Outlook’s manual Save As cannot do.
Can I extract PST attachments without Outlook?
Yes. An extractor reads the PST file directly, so it saves the attachments with no Outlook installed and no email account needed.
Is there a free way to extract PST attachments in bulk?
Yes, a VBA script inside Outlook is free and handles bulk, but it needs macros enabled and a little code, so it suits technical users.
Can I extract only the large attachments?
Yes. A dedicated extractor lets you filter by size, so you can pull just the big files that are bloating the PST and leave the rest.
Does extracting attachments change the PST file?
Saving attachments to a folder copies them out and leaves the messages in place, so a good extractor keeps the original PST untouched.
Your PST attachments, saved and sorted
Getting attachments out of a PST is mostly about matching the method to the size of the job. A few files, save them straight from Outlook for nothing. A whole mailbox on a budget, a free VBA script does bulk if you do not mind the code. Many PST files, or a clean bulk job with size filters and no Outlook, that is where a dedicated extractor pays off. Whichever you pick, you end with a smaller PST and a tidy folder of files you can back up.