When About This Mac or Storage settings reports a drive that's nearly full, and clicking through Applications, Documents, Downloads, and Photos doesn't add up to anywhere near that number, the fastest way to find the difference is a size-proportional visual map of the whole disk — not more folder-clicking. A disk-mapping tool draws every file and folder as a block sized to its real byte count, so whatever is actually eating the space is the biggest block on screen instead of something you have to guess your way into. The usual culprits behind a gap like that are rarely System Data — they're a Photos library that downloaded every original, a virtual machine's disk image tucked inside a package Finder shows as one file, a second user account you can't browse into, or an old external drive's own hidden Trash.

If Storage settings itself already shows System Data as the big slice, that's a separate, well-covered mechanism — see our breakdown of what's actually inside System Data and why it won't shrink — rather than a hidden-file hunt. Everything below is for the other case: the categories look normal, the drive isn't, and you need to actually go find the file.

A visual map finds the culprit in one look

A disk map works on a simple idea: draw space instead of listing numbers. Point it at a whole drive and it renders every folder as a rectangle or ring segment sized in direct proportion to the bytes it holds, nested the way Finder nests folders. A 40 GB folder isn't a line in a list next to a 400 MB one — it's forty times the area, visible before you've clicked into a single subfolder.

Our comparison of DaisyDisk, GrandPerspective, and OmniDiskSweeper covers three tools built for exactly this job, free to try, and any of them works for what follows. Point one at the whole drive, run one scan, and the largest block it draws is the number worth chasing — not the category total in Storage settings, which tells you what kind of file is large but not which specific file it is.

What a disk map can't see, and why an empty-looking scan can be wrong

A disk-mapping tool scans as your logged-in user, and macOS's own privacy protections mean that account can't read everything on the drive by default — even your own drive. Mail's local message store, Time Machine's bookkeeping, and any other user account's home folder all sit behind Full Disk Access, the same permission gate that protects Safari history and Messages. Without it, a scan doesn't error out. It silently reports those folders as empty or tiny, which looks exactly like "nothing here" instead of "couldn't read this."

DaisyDisk's own documentation states plainly that granting it Full Disk Access is "equivalent to answering yes to all privacy prompts," and that after a rescan, previously hidden space either shrinks or disappears from the total entirely (DaisyDisk: Full Disk Access guide). GrandPerspective's own issue tracker documents the identical failure under a different name — users reporting a scan that doesn't contain all the files or disk space they expect, traced back to the same missing permission (GrandPerspective, bug #75).

Grant it once, before you scan: System Settings > Privacy & Security > Full Disk Access, add the mapper, then quit and reopen it and scan again. The figure below shows what a first, ungranted scan tends to hide.

Example: a disk-mapping scan before and after Full Disk Access Two panels showing the same disk-mapping scan: without Full Disk Access, the Mail store and a second user account read as nearly empty; after granting Full Disk Access in Privacy and Security, both appear at their real size. Without Full Disk Access Applications — 38 GB Photos Library — 61 GB ~/Library/Mail — reads as ~0 GB Other user's home — not shown Scan total: 121 GB accounted for Doesn't match the drive's real usage After granting Full Disk Access Applications — 38 GB Photos Library — 61 GB ~/Library/Mail — 41 GB Other user's home — 58 GB Scan total: 198 GB accounted for Now within reach of the real number
Numbers here are illustrative, not measured. The scan didn't get smaller between the two passes — it got honest. An empty-looking block in a disk map often means "couldn't read," not "nothing here."

If a scan is still light on other users' data after that, one more limit applies: Full Disk Access granted to your own account doesn't extend into a different account's home folder. Reading another account's files needs either that account's own login, or an admin account working from Terminal — see the FAQ below.

Reading the map without deleting the wrong thing

A disk map answers where the space went, not whether it's safe to reclaim, and those are different questions. The path matters more than the size. A single 60 GB block inside /Applications is an app — check what it's actually for before assuming an app that size is bloat, since a full IDE or a game with local assets is legitimately that large. The same 60 GB sitting inside Library, Documents, or a package with its own custom icon is almost always something a specific app made and expects to manage itself: a virtual machine's disk, a mail store, a photo library. Deleting it with a Finder drag skips whatever cleanup that app would normally do on its way out.

The general safety rule doesn't change just because you found the file visually instead of by typing a path — our guide to what's actually safe to delete on a Mac still applies once you've found the block. A map only changes how you locate the file, not whether removing it is a good idea.

Where the biggest block sits decides what to do next A decision tree: if the largest block in the disk map sits inside Applications, it is the app itself; if it sits inside Library, Documents, or a package like a virtual machine, treat it as user data and remove it through the app that created it, not a raw Finder delete. Where does the biggest block in the map actually sit? Inside /Applications Inside Library, Documents, or a package It's an app itself Check its real size against what it needs before assuming it's bloat It’s user data: VM image, Mail store, photo library Confirm what created it before deleting anything A VM disk image or Mail store deletes cleanly only through its own app — a Finder drag can leave that app looking for a file that's half gone.
The map tells you where the space is. It doesn't tell you which delete method is safe — that depends on what made the file, not how big it is.

Virtual machine images are worth naming specifically, because the failure mode is different from an ordinary file. Parallels Desktop stores each machine as a .pvm package, by default inside ~/Documents/Parallels or /Users/Shared/Parallels (Parallels: locate a virtual machine on Mac). VMware Fusion uses .vmwarevm bundles under ~/Documents/Virtual Machines (VMware: locating the virtual machine bundle), and UTM keeps its .utm files inside its own sandboxed container. All three grow their virtual disk toward whatever maximum you set when the machine was created, and none of them shrink that file back down on their own after you delete data inside the guest — the same one-way growth Docker's own disk image shows, covered in our Xcode and Docker cache guide. Reclaiming the space means using the hypervisor's own compact or resize command, not a Finder drag — deleting the package while the VM is still configured in the app just leaves it pointing at a file that's gone.

The places storage disappears to that aren't System Data

If the category breakdown in Storage settings and the map above both come up short of the number you expected, check these six. None of them show up under Apple's System Data label, and most guides for a full Mac skip past all of them.

What it isWhere it livesWhy it's easy to missHow to check
Desktop & Documents synced via iCloud, with "Optimize Mac Storage" off~/Desktop, ~/Documents, mirrored in ~/Library/Mobile DocumentsFinder shows one folder, not two copies, so the local footprint looks smaller than it isSystem Settings > Apple ID > iCloud > iCloud Drive, check the Optimize Mac Storage toggle
A Photos library with every original downloaded~/Pictures/Photos Library.photoslibrary, a single packageFinder shows one file, not thousands of originals, so the size doesn't register at a glancePhotos > Settings > iCloud, check whether Download Originals or Optimize Mac Storage is selected
A virtual machine's disk imageParallels' Documents/Parallels, VMware Fusion's Documents/Virtual Machines, UTM's own containerEach VM is one package; Finder treats it as a single file that only ever growsRight-click the package > Show Package Contents
The full local Mail store~/Library/Mail/V## per account — not the same as the smaller Mail Downloads cacheEasy to assume Mail "lives in iCloud" and isn't stored locally at alldu -sh ~/Library/Mail, or Get Info on the folder
Another user account on the same Mac/Users/<other-account>Finder only opens folders your own account has permission for; a second account's files are invisible by defaultNeeds an admin login, or sudo du -sh /Users/* in Terminal
An external or Time Machine drive's own TrashA hidden .Trashes folder at the root of that volumeEmptying your Mac's own Trash never touches it — it belongs to the external volume, not your internal diskConnect the drive and check with a mapper, or ls -la at its root

A disk map with Full Disk Access already granted surfaces the Mail store, the VM package, and an oversized Photos library on its own — they're just blocks in the same scan. The other user account and the external drive's Trash need the extra step above, because neither one is on the volume the mapper is even pointed at.

Turning off Optimize Mac Storage specifically is worth flagging on its own: it downloads every synced file permanently to local disk instead of keeping older ones in iCloud only and fetching them on demand, which is the opposite of what most people expect from a setting named "optimize" (Apple: free up storage space on Mac).

How SwoopByte Disk maps a drive you cannot account for

This is the exact use case SwoopByte Disk's free tier is built around. Its Space Map pairs a ring-style map with a ranked list of the largest files and folders on the whole drive, not just your home folder, alongside a category breakdown and a free-space verdict that already accounts for APFS purgeable space. None of that scanning or ranking sits behind the one-time $14.99 Pro upgrade — only the reclaim actions do, like batch dev-cache cleanup, duplicate-file removal, and scheduled scans with history.

SwoopByte Disk is in development for Apple Silicon Macs running macOS 14 or later. Join the waitlist to get it first.

FAQ

Does a disk-mapping tool need extra permission to see everything on my Mac?

Yes. Without Full Disk Access, a mapper only scans what your logged-in account can normally read, and it silently skips protected folders like Mail's local store or another account's home folder instead of showing an error. Grant it once in System Settings > Privacy & Security > Full Disk Access, then rescan.

Can another user account on the same Mac be using storage I can't see?

Yes. Finder only opens folders your own account has permission for, so a second account's Desktop, Downloads, or Photos library is invisible to you by default even though it's on the same drive. Seeing it requires an admin login as that account, or running a command like sudo du -sh /Users/* from Terminal.

Does turning off "Optimize Mac Storage" for iCloud Drive free up space or use more?

It uses more, not less. Turning it off downloads every synced file, including your full Desktop and Documents folders, permanently onto local disk instead of keeping older files in iCloud only and fetching them on demand.

Do virtual machine disk images shrink automatically when I delete files inside the VM?

No. Parallels Desktop, VMware Fusion, and UTM all grow a virtual machine's disk image toward its configured maximum and don't shrink it back down on their own; reclaiming that space means using the app's own compact or resize command, not a Finder delete.

Is Trash on an external drive counted against my Mac's internal storage?

No. Deleted files from an external or Time Machine drive go into a hidden .Trashes folder on that volume itself, not your Mac's own Trash, so emptying your Mac's Trash never touches it. The files still occupy space on the external drive until you empty it separately.

Related guides

Related

What is System Data on a Mac, and why won't it shrink?

What's really inside System Data, why the number moves on its own, and the exact commands and order to check when it's genuinely stuck.

Read guide

Related

What is safe to delete on a Mac?

A practical guide to files that are usually safe to remove, files to leave alone, and how to avoid breaking apps while freeing storage.

Read guide

Related

DaisyDisk alternative: is a sunburst chart enough?

What DaisyDisk shows you, what it deliberately leaves out, and which alternative fits which job.

Read guide