System Data huge on Mac? What's in it and what's safe to delete

Why System Data takes 50–200 GB on some Macs, how to find what's really inside it with three Terminal commands, and which parts are safe to remove. Written for developers' Macs.

Short answer

System Data is the Storage category for everything macOS doesn't file elsewhere: caches, logs, Time Machine local snapshots, virtual machine images and app data. On a developer Mac the big items are usually Docker's disk image, simulators and local snapshots. Don't delete "System Data" itself: run du on your Library folder and tmutil listlocalsnapshots / to find what's large, then clean each item with the tool that owns it.

Why is System Data so big?

Open System Settings › General › Storage and hover the bar. On a fresh Mac, System Data is often 10–20 GB. On a Mac used for development for a year, 80–200 GB is common, and the Storage panel won't tell you why: you can't click into it.

Apple describes it only as "a general category that measures the storage space used by all Apple and third-party files" that don't fit a narrower category. In practice, on most Macs, that means:

  • Time Machine local snapshots. When your backup disk isn't connected, Time Machine keeps hourly snapshots on the internal disk. They hold on to the space of files you've already deleted.
  • Caches and logs in ~/Library/Caches, ~/Library/Logs and their system-wide versions.
  • Virtual machine disk images. Docker Desktop keeps every image, container and volume in one file, Docker.raw, inside ~/Library/Containers. UTM, Parallels and OrbStack keep theirs in similar places.
  • Simulator data. iOS simulator devices and runtimes can reach tens of gigabytes. Some Macs show them under Developer, others fold them into System Data.
  • App support files in ~/Library/Application Support: chat apps' media caches, Electron apps, game launchers.

Find what's really inside it

Three read-only commands tell you more than the Storage panel. None of them deletes anything.

1. Local snapshots.

Terminal
$ tmutil listlocalsnapshots /

If this lists dozens of com.apple.TimeMachine... dates, snapshots are part of your System Data.

2. Your Library, largest last.

Terminal
$ du -sh ~/Library/* 2>/dev/null | sort -h | tail -12

On developer Macs, Containers (Docker), Developer (Xcode and simulators) and Caches are usually near the bottom. Go one level deeper on whichever is largest:

Terminal
$ du -sh ~/Library/Containers/* 2>/dev/null | sort -h | tail -8
$ du -sh ~/Library/Developer/* 2>/dev/null | sort -h | tail -8

3. Every developer cache at once. diskreceipt is a free Terminal tool that prints Xcode, Docker, node_modules and package manager caches with their sizes, a safe, check or keep label, and the command to clean each. It only reads.

Terminal
$ brew install abdiraimov-otabek/tap/diskreceipt
$ diskreceipt
Shedi shows what's inside, in plain wordsA 10-second scan lists Xcode, Docker, caches, logs and node_modules by size, says what each is and whether it comes back, and moves what you pick to the Trash.
Get Shedi

What's safe to remove

Time Machine local snapshots

If you have a real backup on another disk or in the cloud, local snapshots are safe to remove. Apple keeps hourly snapshots for 24 hours and deletes them "as they age or as space is needed", so this is only for when you need the space now.

Terminal
# remove all local snapshots on the startup disk
$ tmutil deletelocalsnapshots /
Check first

Local snapshots are restore points on the same disk, not a backup. Deleting them loses those hourly versions, not your current files. Make sure your real backup is up to date first.

Docker's disk image

Don't delete Docker.raw in Finder: it holds every image, container and volume. Prune inside Docker instead, starting with docker system df to see what's reclaimable. The Docker guide explains each prune command and why volumes need care.

Simulators and Xcode data

Terminal
# remove simulators for runtimes you no longer have
$ xcrun simctl delete unavailable

DerivedData, old DeviceSupport folders and simulator runtimes are covered step by step in the Xcode guide. All of it is rebuilt or redownloaded when needed.

App caches and logs

Folders inside ~/Library/Caches and ~/Library/Logs belong to individual apps, which recreate them. Quit the app first, then move its folder to the Trash. Leave Apple's own com.apple.* folders alone: macOS manages those itself.

Safe

Caches, logs, Docker images and build cache, DerivedData and unavailable simulators all come back on their own or with a rebuild. The cost is a slower first launch or build.

What not to touch

  • /System, /private/var and /Library folders you don't recognise. macOS protects most of these, and the parts it doesn't protect can break apps or updates.
  • ~/Library/Application Support and ~/Library/Containers wholesale. They hold real data: app settings, local databases, mail, notes. Go folder by folder, and only for apps you've already uninstalled.
  • Cleaner apps that "clear System Data" in one click without showing you paths. If you can't see what it removes, you can't know it was safe.

Why it comes back

System Data grows back because the things inside it are working as designed: Time Machine snapshots while your backup disk is away, Docker layers with every build, simulator data with every Xcode release, caches with every app you use. A monthly check of the three commands above, or a Shedi scan, keeps it from creeping up to 200 GB again.

If System Data stays huge and none of the above explains it, restarting the Mac and running Disk Utility › First Aid on the startup disk is the next step: users on Apple's forums report System Data dropping sharply after both, typically from purgeable space finally being released.

Sources

Questions

What is System Data on a Mac?

It's the Storage category for everything macOS doesn't sort into Applications, Documents, Photos, macOS itself and the other named categories: caches, logs, Time Machine local snapshots, virtual machine disk images, app support files and, on many developer Macs, Docker's disk image and simulator data. Apple doesn't publish an exact list.

Can I delete System Data on my Mac?

Not as one thing, and you shouldn't try. Find which folders are large, then clean those with the tool that owns them: Time Machine for local snapshots, Docker for Docker.raw, Xcode for simulators, the app itself for its cache.

Why did System Data grow after a macOS update?

Updates leave behind caches and logs, and Time Machine keeps local snapshots while your backup disk is away. Spotlight also rebuilds its index after big updates. Much of it shrinks on its own over a few days; snapshots are removed when space runs low or after about 24 hours.

Is it safe to delete Time Machine local snapshots?

Yes, if you have a real backup elsewhere. Local snapshots are a recovery layer on the same disk, not a backup. Deleting them loses those hourly restore points, not your files.

Why does Finder show less free space than Storage settings?

Purgeable space, mostly local snapshots and caches macOS can drop on its own, is counted differently in different places. Storage settings and df -h can disagree by tens of gigabytes on the same Mac.