Mail.app Is Hoarding Every Attachment You've Ever Received
Mail keeps a local copy of every message and attachment, including accounts you removed years ago. Where ~/Library/Mail sits and what is safe to clear.
If you’ve used Apple Mail with the same accounts for several years, this number is usually a surprise:
du -sh ~/Library/Mail
10–30 GB is ordinary for someone who’s had a couple of email accounts connected for a while, particularly if any of them regularly receive large attachments — invoices, design files, photos sent as attachments rather than links.
Why it’s this large: Mail keeps a local copy of everything
Apple Mail downloads and caches a local copy of every message and every attachment for offline access and fast search, for every account configured, indefinitely. Unlike a web-based email client that fetches on demand, Mail’s whole design assumes you want everything available offline — which is genuinely useful, but the storage cost compounds silently over years.
# See which account is actually responsible for the size
du -sh ~/Library/Mail/V*/*/ 2>/dev/null | sort -hr
The V* version-numbered folder (V9, V10, and so on, incrementing with macOS/Mail database
format changes) contains one subfolder per configured account, named with an internal identifier —
cross-reference against Mail → Settings → Accounts if you need to match a folder to a specific
account.
Downloaded attachments specifically
Attachments are the largest single component for most people, and Mail keeps its own separate cache of them beyond the message database itself:
du -sh ~/Library/Containers/com.apple.mail/Data/Library/Mail\ Downloads
This folder holds attachments you’ve opened or saved from Mail — safe to clear if you’ve already saved anything you actually needed elsewhere, since the attachment still exists inside the original email and can be re-opened from there:
rm -rf ~/Library/Containers/com.apple.mail/Data/Library/Mail\ Downloads/*
Accounts you removed years ago may still have data cached
This is the part most people don’t expect: removing an email account from Mail’s settings doesn’t always immediately or completely purge its local cache. If you switched jobs, closed an old email address, or moved providers, check whether Mail is still carrying that account’s full message history:
# List every account folder currently on disk, whether or not it's
# still configured in Mail → Settings → Accounts
ls ~/Library/Mail/V*/
Compare this against your actual current account list in Mail’s settings. A folder with no matching
active account is safe to remove — quit Mail first, then delete the specific account subfolder
rather than the whole V* directory.
Rebuilding the index if search feels broken afterward
Mail maintains a search index (Envelope Index) alongside the raw message data. If Mail’s search
starts behaving oddly after any cleanup — or independent of any cleanup, as this does happen on its
own occasionally — rebuilding it is the standard fix and doesn’t touch your actual messages:
# Quit Mail first
rm ~/Library/Mail/V*/MailData/Envelope\ Index*
# Relaunch Mail — it rebuilds the index automatically, which can take
# several minutes for a large mailbox
What’s not safe to touch
The account subfolders for accounts you’re actively using hold your actual message content for offline access — this is different from every cache covered elsewhere on this blog, because for IMAP accounts the messages also exist on the mail server, but for any local-only mailboxes (some older POP setups, or On My Mac mailboxes) the local copy may be the only copy. Check your account type before assuming a full “delete everything and let it re-sync” approach is safe — for IMAP accounts it generally is (Mail re-downloads from the server), for On My Mac mailboxes it is not.
Where this sits relative to the rest of your disk
Mail is a genuine standing cost that grows continuously as long as you receive email with attachments, which makes it closer in spirit to Photos than to a developer build cache — real data you might want, not pure byproduct. The one genuinely safe, no-judgment-required target is attachments you’ve already saved elsewhere and old-account leftovers, both covered above.
DevCruft, a free Mac app for developers we’re building, is being designed to show Mail’s storage on
its disk map alongside everything else, so it becomes a known, sized quantity rather than a folder
buried three levels inside ~/Library/Containers that most people never think to check. You can
join the waitlist to hear when it launches.
For the equivalent situation with iMessage attachments, see the Messages storage guide.