Space Consumers — Developer Tools
Xcode
Xcode accumulates data in several places that are completely independent of the installed app size. On an active developer machine, these can collectively reach 100–200 GB.
| Path | What it holds | Safe to delete | Check size |
|---|---|---|---|
~/Library/Developer/Xcode/DerivedData/ | Build artifacts, index data | Yes — rebuilds on next build | du -sh ~/Library/Developer/Xcode/DerivedData/ |
~/Library/Developer/CoreSimulator/Devices/ | Simulator device images | Partially — use xcrun simctl delete unavailable | du -sh ~/Library/Developer/CoreSimulator/ |
~/Library/Developer/CoreSimulator/Volumes/ | Simulator runtime disk images (Xcode 14+) | Partially — remove via xcrun simctl runtime delete | du -sh ~/Library/Developer/CoreSimulator/Volumes/ |
~/Library/Developer/Xcode/iOS DeviceSupport/ | Per-device-version debug symbols | Yes for old versions | du -sh ~/Library/Developer/Xcode/iOS\ DeviceSupport/ |
~/Library/Developer/Xcode/watchOS DeviceSupport/ | Same for watchOS | Yes for old versions | du -sh ~/Library/Developer/Xcode/watchOS\ DeviceSupport/ |
~/Library/Developer/Xcode/DocumentationCache/ | Downloaded docs | Yes — re-downloads | du -sh ~/Library/Developer/Xcode/DocumentationCache/ |
Simulator runtimes moved in Xcode 14. Pre-14, they lived in CoreSimulator/Devices/. Post-14, runtime disk images are in CoreSimulator/Volumes/. If you’ve upgraded Xcode, you may have both.
Safe way to reclaim simulator space:
# Remove device images for simulator versions no longer installed
xcrun simctl delete unavailable
# List installed runtimes (Xcode 14+)
xcrun simctl runtime list
# Delete a specific runtime
xcrun simctl runtime delete "iOS 15.5"iOS device backups
du -sh ~/Library/Application\ Support/MobileSync/Backup/
ls ~/Library/Application\ Support/MobileSync/Backup/Each subdirectory is a backup for one device, named by UUID. Multiple old devices, multiple backups per device. 200+ GB is common on a machine that has backed up multiple generations of iPhone/iPad.
These are safe to delete but use Finder → Manage Backups to do it properly (it updates the manifest). If you rm -rf a backup directory directly, it works but leaves stale entries.
See also
- Space Consumers - System — swap, logs, core dumps
- Space Consumers - VMs and Containers — Docker, Nix, VMs
- Diagnostic Playbook - Finding Hidden Space on macOS — the full workflow