System Data on your Mac: what it is and how to reduce it
Updated
In short: According to Apple, "System Data" is a catch-all category for files from Apple and other developers that do not fit a more specific category. It usually grows through Time Machine snapshots, caches and logs, developer data such as Xcode, simulators and Docker, and old device backups. macOS clears snapshots, caches and logs by itself as soon as space is needed; developer data and backups you have to remove yourself.
What is in System Data
Apple does not disclose which file falls into which category. On most Macs, though, it is the same suspects:
- Local Time Machine snapshots. With Time Machine turned on, your Mac saves a snapshot of the startup disk about every hour and keeps it for 24 hours, plus one before each macOS update.
- Caches and logs of macOS and your apps.
- Developer data: Xcode builds (DerivedData), archives, simulators, Docker Desktop's data, node_modules folders and Homebrew downloads.
- Backups and software updates for iPhone and iPad that the Finder stores on the Mac.
- App data in your Library, such as virtual machines, saved games or offline content.
1. Wait or restart first
Apple says your Mac counts the space used by snapshots as available storage and deletes them when it needs the space for other things. In the same way, macOS removes caches and logs that are safe to delete when space runs low, such as interrupted downloads and staged updates. A restart also ends apps that keep large temporary files open. If System Data is still too large afterwards, go on with the next steps.
2. Check Time Machine snapshots
The Terminal command tmutil listlocalsnapshots / lists the snapshots on the startup disk; it only reads. Apple's way to remove them: turn off automatic backups in Time Machine, wait a few minutes for the snapshots to be deleted, then turn backups back on. Without snapshots you cannot restore a state from the last few hours until Time Machine makes new ones.
3. Clean up developer data
- Xcode DerivedData in
~/Library/Developer/Xcode/DerivedDataholds only intermediate build results; Xcode recreates them with the next build. - Simulators for runtimes that are no longer installed are removed by
xcrun simctl delete unavailable. - Docker Desktop keeps images, containers and volumes in one large file;
docker system pruneremoves stopped containers, unused networks, untagged images and the build cache. Volumes with data stay unless you explicitly add--volumes. - node_modules in projects you are not working on right now can be restored at any time with
npm install.
4. Delete old iPhone and iPad backups
Local device backups are stored in ~/Library/Application Support/MobileSync/Backup. Delete them in the Finder: connect the device, select it and click "Manage Backups" under General. A deleted backup is gone for good; keep it if the device is not backed up elsewhere.
5. Look for large folders in your Library
If a large remainder is left after that, it is usually in your Library. Look at the largest folders there instead of deleting at random: a virtual machine or an offline library of an app you no longer use is safest to remove through the app itself or by uninstalling the app completely (see How to uninstall apps on your Mac completely, with no leftovers).
What you should not do
- Do not delete anything in
/Systemor/private/var. macOS protects most of it anyway, and what can be deleted there is what the system needs. - Do not empty all caches at once while apps are running: open apps can lose data or crash.
Faster with SpaceBroom
SpaceBroom's Space Lens shows the hidden folders of your home folder by size as well. System Junk collects caches, logs, device backups and software updates; for developers it adds Xcode DerivedData, archives and simulators, node_modules of dormant projects, Docker and Homebrew. Maintenance thins out Time Machine snapshots and, if you choose, erases the system log, both after you enter your administrator password. Files show their path and size before anything is removed; the commands for Docker, Homebrew, orphaned simulators, snapshots and the system log delete for good and run only when you confirm them. More ways to free up space are in the guide How to free up storage space on your Mac: 9 ways that work.
More guides
- How to free up storage space on your Mac: 9 ways that workMac storage full? See what takes up space and free it up: the Trash, Downloads, large files, unused apps, old device backups and more.
- How to uninstall apps on your Mac completely, with no leftoversDragging an app to the Trash leaves settings, caches and background services behind. Where the leftovers are and how to remove them safely.