And an OST — without Outlook, and without a converter
A PST is an Outlook data file. macOS has nothing that opens one, Outlook for Mac will not import one, and the search results for this problem are mostly converters that want the file uploaded or the mail re-exported. MailCode reads the file directly: point it at the PST, and every message inside it becomes searchable mail with its folder tree intact.
A .pst is a complete mailbox in a single file — folders, messages, attachments, calendar items — in Microsoft's MS-PST format. Outlook for Windows makes them in two situations: when you archive mail off a server to free space, and when you export a mailbox on purpose. They are usually the only copy of whatever is inside them, which is why they are worth opening properly rather than through something that rewrites them.
An .ost is the same on-disk format, holding the cached copy of a server mailbox. MailCode reads those too, as they stand. If the account is still live, copy the OST somewhere else first — Outlook keeps a lock on the one it is using.
MS-PST is an undocumented-by-default, tree-structured binary format that grew across two decades of Outlook versions, with several body encodings and its own compression. Nothing in macOS speaks it. Outlook for Mac deliberately does not import PST — it uses .olm, its own and entirely different format — so even paying for Office does not solve this on a Mac.
That is what leaves people at the converters, and the converters are the part worth avoiding. A tool that uploads the file sends a mailbox you presumably care about to someone else's server. A tool that converts to mbox hands you a format with its own problems. Neither is necessary: the file can simply be read.
.pst or .ost. Several files can be queued at once.Nothing is uploaded, nothing phones home, and the PST itself is never modified — it is opened read-only.
Re-running an import over the same file is safe. Messages already in the archive are skipped, so a second pass adds what is new instead of doubling what is there — which matters, because a large import is something you will want to stop halfway through at least once.
PSTs are often enormous, and the naive way to import one is to copy every message and every attachment into a database. A 30 GB PST imported that way produces a database several times larger than the file, and an application that crawls.
So MailCode offers the other mode as the default: the messages are written out as .eml files into a folder you choose, and the archive keeps only the index, reading each body back from its file. The index stays small, search stays fast, and the folder can live on an external drive that you connect when you need it.
The point of opening the file is not to look at it once. Imported mail behaves like every other message in the archive — it answers the same searches, takes flags and due dates, exports back out as .eml if you ever need it elsewhere, and sits in the same list as the mail arriving today.
Search on a real archive of this kind — 285,978 messages, 31.8 GB, 1.2 million attachments — answers in 4–48 ms (median to 95th percentile); the slowest of 22 benchmark queries took 170 ms. A PST is no longer a file you dread opening; it is just more mail you can find things in.
.eml. The archive is not somewhere mail goes in and cannot come out of..eml files, and import those instead. See moving from another mail client.macOS 12 or later. Free 14-day trial, then a one-time purchase. Point it at the folder you have been avoiding.