Free up storage
How to Free Up Storage on macOS Sonoma
Sonoma storage tight? A practical guide to reclaiming gigabytes — including the storage bug Sonoma shipped with and the hidden Sonoma cache locations.
Sonoma had a real, documented storage-reporting bug at launch: System Data could show 100GB+ when actual use was 30GB. Apple fixed it in 14.4.1, but the underlying caches that fed it weren’t cleaned up automatically. If you upgraded early and never did a manual cleanup, your Mac may still be carrying that weight.
Here’s the version-specific storage cleanup for macOS 14.
What’s specific to Sonoma’s storage profile
Several things are particular to Sonoma:
- The early System Data bug (14.0–14.3) — actually fixed in 14.4.1, but the artifacts may still be on disk if you never did a clean restart and cache flush.
- Desktop widgets — each interactive widget caches its data in
~/Library/Group Containers/group.com.apple.widget*. Lots of widgets = lots of small caches that add up. - Continuity Camera caches recently mirrored iPhone screen data even when the iPhone is unplugged.
- Game Mode logs game performance data to
~/Library/Containers/com.apple.GameController/Data/Library/Caches/. - Mail in Sonoma got a partial reindex on first launch that left old
Envelope Indexfiles behind on some upgrades.
If you upgraded from Ventura, your ~/Library/Caches/ folder might still hold Ventura-era cache files macOS never cleaned up.
Step 1: Update to the latest 14.x point release first
Apple menu → System Settings → General → Software Update.
If you’re on 14.0–14.3, update to at least 14.4.1 (which fixed the System Data bug) or, ideally, the latest 14.7.x. The point releases also include better cache management.
After updating, restart and let the Mac sit idle for ten minutes. macOS runs cleanup tasks during that window.
Step 2: Look at Storage honestly
System Settings → General → Storage. Wait a full minute for it to fully populate. The bars update slowly.
Click each category to see what’s inside:
- Documents — includes Downloads, Desktop, Documents folder. Often the biggest surprise.
- System Data — what we’ll mostly tackle below.
- Apps — sort by size, look for things you don’t use anymore.
- macOS — should be 15–20GB. If it’s bigger, you have an old installer or stuck update.
Step 3: Empty the obvious places
Quick wins, in order:
- Downloads (
~/Downloads/) — sort by Date Added; anything from before this month is probably trash. - Trash — empty all trashes (right-click each in Dock).
- Desktop — sort by date.
- Movies — old screen recordings from Quick Time Player.
- Old iOS backups —
~/Library/Application Support/MobileSync/Backup/. Sort by date, keep newest, delete the rest.
Most users recover 20–60GB from these alone.
Step 4: Photos library
If you use iCloud Photos and “Optimize Mac Storage” is off, your Mac stores full-resolution copies of every photo and video. A 5-year-old library hits 80–150GB easily.
System Settings → Apple ID → iCloud → Photos. Toggle on Optimize Mac Storage.
Don’t forget Photos’ Recently Deleted album: items stay there for 30 days before purging. If you just deleted thousands of photos, empty the album to reclaim immediately.
Step 5: Mail attachments
Mail stores attachments locally even when they’re already on the IMAP server.
In Mail → Settings → Accounts → select account → Account Information → “Download Attachments”. Set to Recent or None.
To clear what’s already cached, quit Mail, then look in:
~/Library/Mail/V10/MailData/
Inside, per-account folders contain Attachments/. Deleting these is safe; Mail re-downloads on demand.
A heavy email user often has 10–20GB in Mail attachments.
Step 6: App caches — the Sonoma offenders
Quit each app first, then clear the cache folder.
- Xcode:
~/Library/Developer/Xcode/DerivedData/and~/Library/Developer/CoreSimulator/Caches/(often 10–50GB) - Chrome:
~/Library/Caches/Google/Chrome/Default/Cache/ - Arc:
~/Library/Caches/com.thebrowser.Browser/ - Slack:
~/Library/Application Support/Slack/Cache/andService Worker/CacheStorage/ - Spotify:
~/Library/Caches/com.spotify.client/Data/ - Photos thumbnails: inside
Photos Library.photoslibrarypackage,resources/streaming-thumbnails/ - VS Code:
~/Library/Application Support/Code/Cache/andCachedExtensions/
For Spotify in particular: the cache silently grows to 8GB. Either clear it from inside Spotify (Settings → Storage → Clear Cache) or nuke the cache folder while Spotify is closed.
Step 7: Time Machine local snapshots
Sonoma keeps Time Machine local snapshots even when you’re not connected to a backup drive. They can take 20–40GB.
Terminal:
tmutil listlocalsnapshots /
Each line is a snapshot. Delete the oldest:
tmutil deletelocalsnapshots <date-from-list>
Or delete them all:
for snapshot in $(tmutil listlocalsnapshots / | awk -F. '{print $4}'); do tmutil deletelocalsnapshots $snapshot; done
macOS will create new ones as needed.
There’s a faster waySweep does the same hunt in seconds. Try Sweep free →
Step 8: Old macOS installers
After upgrading, check /Applications/ for “Install macOS Sonoma.app” or older installers. Each is 12–15GB.
Also check /Library/Updates/ for partial update files. Empty if anything is in there.
Step 9: Old iOS backups (worth a separate step)
This deserves dedicated attention because it’s nearly always overlooked.
~/Library/Application Support/MobileSync/Backup/
Each subfolder is a complete iPhone or iPad backup. iTunes/Finder doesn’t auto-rotate. If you’ve been backing up phones to this Mac for years, you might have ten old backups taking 60–80GB total.
Sort by date. Keep the most recent backup of each device. Delete the rest. You can also do this from Finder: select the iPhone in the sidebar, click Manage Backups under Backups.
Step 10: Uninstall apps completely
Dragging an app to Trash leaves behind:
~/Library/Application Support/<AppName>/~/Library/Caches/<AppName>/~/Library/Preferences/<AppName>.plist~/Library/Logs/<AppName>/~/Library/Containers/<AppName>/for sandboxed apps- Login items and launch daemons in
~/Library/LaunchAgents/
Manually hunting these is tedious. Sweep’s app uninstaller does it in one pass and shows you exactly what’s being removed before it commits.
Step 11: Languages and developer cruft
If you’ve ever installed Xcode, the Simulators and DerivedData folders alone routinely consume 30GB. Open Xcode → Settings → Components and remove old simulator runtimes you don’t actively use.
For developers, ~/Library/Developer/CoreSimulator/Devices/ accumulates simulator volumes that Xcode doesn’t always clean up. Use xcrun simctl delete unavailable to remove ones for unsupported runtimes.
Step 12: Move large libraries to external storage
If you’ve cleaned everything reasonable and still need space, the realistic next move:
- Photos library — hold Option while opening Photos, choose a different location, point it at an external drive.
- Music library — Music → Settings → Files → Music Media Folder Location.
- Final Cut / iMovie projects — both support external libraries natively.
A $60 1TB external SSD solves “running out of space” for years.
What you can safely ignore
A few things that aren’t worth your time:
- Manual
purgecommand — Apple removed it from public docs, and the actual benefit is small. - Disabling Time Machine entirely — local snapshots are useful insurance; just trim them periodically.
- Deleting language files manually — System Integrity Protection now blocks most of this.
- Deleting
~/Library/Containers/to start fresh — you’ll lose actual app data.
Sonoma keeps storage manageable if you spend twenty minutes a month on it. Most of that is just Downloads, Trash, and the iOS backup folder. The rest is opportunistic — clear caches when an app is misbehaving, trim Time Machine snapshots when you notice them, prune old installers after upgrades.