DiskPrune · Guides
System Data on Mac is huge — what that actually means
System Data is a Storage bucket, not one folder. DiskPrune shows what it can measure, inspects APFS snapshots, and does not flush them.
System Data is a label, not a directory
macOS Settings → General → Storage groups a pile of things under “System Data”: caches, logs, swap, Spotlight, local Time Machine snapshots, virtual machine images, and files Apple does not classify as Apps, Documents, Photos, or iCloud. The number is large because the bucket is wide, not because one junk folder is hiding.
A cleaner that promises to “clear System Data instantly” is selling a bucket name. DiskPrune does not. It scans what it is allowed to see, classes what it knows, and leaves a not-examined region when it cannot look.
What DiskPrune will plan
User-level caches, package-manager leftovers, Xcode DerivedData, and logs can appear as Safe or Review candidates after a scan. You select them. DiskPrune builds a plan, shows a dry run, re-checks the path, and moves approved items to Trash. It does not empty Trash.
Space occupied by those files becomes available after you empty Trash in Finder — not at the moment of the move.
What DiskPrune will only inspect
APFS local snapshots often sit inside the System Data number. DiskPrune lists snapshots on the Snapshots screen. There is no delete control. DiskPrune does not run snapshot deletion, and it will not print a delete command for you to paste.
If you want snapshots gone, that is an OS / Time Machine decision, documented by Apple. It is not a DiskPrune feature, and it is not something we will add by putting a red button on that list.
What DiskPrune will not touch
Docker.raw and Docker data directories are protected. They can look like tens of gigabytes of System Data. Deleting the image from a cleaner is how people lose containers. Compact it with Docker itself; see the Docker guide.
Scan is free. Cleanup is $12 lifetime with code FOUNDING — $19 after the first 100.
DiskPrune moves only what you approve to Trash. It does not empty Trash, delete snapshots, or delete Docker.raw.