Mac maintenance
Surviving on a Mac With Almost No Disk Space
Living with a small or full Mac SSD. Strategies, settings, and habits to keep working productively when storage is tight and upgrading isn't an option.
A 256GB MacBook with macOS, Xcode, a Photos library, and a few games can find itself with 5GB free for years. The Mac works. It just gets aggressive about needing space, and you spend more time managing storage than you’d like.
This guide is for people in that situation — small or full SSD, can’t or won’t upgrade, need to actually use the Mac for daily work without constant warnings.
Reality check first
Living on a tight SSD has costs:
- macOS performs worse below 10% free space
- Some apps refuse to launch or save with low space
- System updates require 15-30GB free temporarily
- Time Machine starts skipping snapshots
- Photos and Music can’t optimize storage if iCloud is full
If you can afford an external SSD or upgrade, do it. A 1TB external SSD at $80 solves this for years.
But if you can’t, this guide makes the situation livable.
Where the space actually goes
Open About This Mac → More Info → Storage. The categories are misleading — “System” includes a lot of stuff that’s actually movable. Real breakdown for a typical 256GB Mac:
- macOS itself: 25-35GB (can’t shrink)
- Xcode + simulators: 30-50GB (can be aggressive cleanup)
- Photos library: 20-100GB depending on use
- iCloud Drive cached files: variable
- Apps: 20-40GB
- Documents and Downloads: 5-30GB
- Caches and logs: 10-30GB (highly compressible)
- Other Users: minor for most
- “System Data”: catchall that’s usually 30-60GB
The “System Data” category is where surprises hide. Caches, logs, snapshots, derived data, simulators, virtual machine disks. None of it is system files in the strict sense.
Quick wins that find 20-50GB
The first pass on any tight Mac:
1. Clear Xcode if installed:
rm -rf ~/Library/Developer/Xcode/DerivedData/*
rm -rf ~/Library/Developer/Xcode/Archives/*
xcrun simctl delete unavailable
That regularly finds 10-30GB.
2. Clear user caches:
rm -rf ~/Library/Caches/*
Apps regenerate what they need. Usually 2-10GB.
3. Empty Downloads and Trash:
find ~/Downloads -mtime +60 -delete
find ~/.Trash -mindepth 1 -delete
5-20GB depending on habits.
4. Photos library optimize:
In Photos → Settings → iCloud, switch to “Optimize Mac Storage.” If iCloud Photos is set up, this drops the local library size dramatically over a few days.
5. Mail attachments:
Mail → Settings → Accounts → Account Information → “Download Attachments: When read.” Then clear existing cached attachments by deleting ~/Library/Mail/V10/MailData/Caches/ (close Mail first).
6. iMessage history:
Messages keeps every photo and video anyone sent you. Settings → General → “Keep messages: 30 days” cuts old conversations. Or wipe ~/Library/Messages/Attachments/ for the heavy stuff.
A single pass of these usually finds 30-50GB on a Mac that’s been used for a year. Not nothing.
Permanent space-saving settings
After the one-time cleanup, configure to stay clean:
System Settings → General → Storage → Recommendations:
- Store in iCloud: ON for Desktop and Documents (if iCloud has space)
- Optimize Storage: ON
- Empty Trash Automatically: ON (after 30 days)
- Reduce Clutter: review the suggestions
Photos → Settings → iCloud:
- Optimize Mac Storage: ON (requires iCloud Photos)
Music → Settings:
- Sync Library: OFF if not using Apple Music — large libraries cache locally
- Or: Optimize Storage in Music settings if syncing
iCloud Drive:
- “Optimize Mac Storage” in iCloud Drive settings keeps less-used files in the cloud only
The pattern: let macOS keep frequently-used files local and offload everything else to iCloud or external storage as needed.
Move the big stuff externally
Even on a tight budget, a $40 USB stick can hold project files that don’t need to live on the SSD.
Candidates to move:
- Old project folders you reference but don’t actively edit
- Photo library archive (split older years off)
- Music library if huge
- Game files (Steam, GOG, Epic — most can be relocated in their settings)
- Virtual machines (Parallels, UTM, VMware)
- Adobe scratch disk
- Final Cut libraries
For each, the app usually has a “where do I save data” setting you can point at the external. The Mac’s internal SSD breathes again.
Living with iCloud as offload
If iCloud has space (200GB plan or 2TB plan), it’s the cleanest way to live on a tight SSD. The pattern:
- Documents and Desktop in iCloud Drive with Optimize Mac Storage on
- Photos in iCloud with Optimize Mac Storage on
- Apps and frequently-used files local
Files appear local to apps. macOS handles caching and removing them based on what you’ve used recently. When disk pressure rises, less-used files go cloud-only.
Caveats:
- First sync is slow (days for large libraries)
- Offline access requires explicitly downloading the file or having it cached
- Files you haven’t used in months take a moment to download when needed
- Bandwidth matters — bad internet makes this painful
For users with stable broadband and an iCloud plan that fits their data, this works well. For travelers, students with spotty Wi-Fi, or anyone with a huge Photos library on a 200GB iCloud plan: less viable.
Updates need free space
macOS major updates need 15-30GB temporarily. Minor updates need 5-10GB. Xcode updates can need 50GB+.
When you’re at 5GB free permanently, updates fail. Options:
- Free up 30GB before update (one-time pass)
- Disable auto-updates and only update manually after cleanup
- Update via USB installer (uses external storage)
The “auto-update will handle it” plan doesn’t survive a full SSD. Track updates manually.
Apps that don’t honor “external”
Some apps don’t really let you store their data externally:
- Apple Photos won’t run from external (slow)
- iMovie / Final Cut have library options but plugins still install internally
- Lightroom catalog can be external; previews and cache often aren’t
- Most games store save data internally even if main install is external
For these, the answer is “don’t install or use them frequently” rather than “redirect storage.” A tight-SSD Mac may not be the right machine for heavy video editing or game libraries.
When the disk is genuinely full
Macs at 0% free disk get weird. You can’t open Finder properly, system freezes happen, apps misbehave. Recovery steps:
- Quit non-essential apps — frees swap space
- Empty Trash from Finder — sometimes 5-10GB hides there
- Restart in Safe Mode (hold Shift at boot) — clears system caches
- Use Terminal (Activity Monitor → File menu → New Window if Finder is unresponsive):
rm -rf ~/Library/Caches/*
rm -rf ~/.Trash/*
rm -rf ~/Library/Developer/Xcode/DerivedData/* 2>/dev/null
- Reboot once you have 5GB+ free — clears virtual memory pressure
After recovery, run a thorough cleanup so it doesn’t happen again. Schedule weekly maintenance.
What you can’t easily delete
Things that look big but should stay:
/System/Library/— read-only on modern macOS, leave alone/Library/Frameworks/— system frameworks, often required~/Library/Containers/— sandboxed app data, deleting breaks apps- APFS snapshots that are recent (< 24 hours) — Time Machine local snapshots, useful for “undo”
- Sleep image (
/var/vm/sleepimage) — needed for Power Nap and sleep state
Some “cleaners” promise to free space by removing system files. Don’t. The space saved is small, the breakage potential is large.
A practical weekly habit
Living on a tight SSD requires habits, not just one-time fixes:
Weekly (5 minutes):
- Empty Trash
- Empty Downloads of files older than 30 days
- Clear browser caches
- Quick scan with cleanup tool
Monthly (15 minutes):
- Review installed apps; uninstall anything not used in 90 days
- Clear Xcode derived data, simulators
- Audit Photos library; delete obvious junk
Quarterly (30 minutes):
- Move old projects to external storage
- Audit iCloud Drive; delete or archive old content
- Review what’s eating storage and adjust
Skip a month and you’re back to disk warnings. Stay on it and a 256GB Mac stays workable for years.
When to give up
Honest signs the small SSD is over:
- You spend more than 30 minutes a week managing storage
- Updates regularly fail
- You can’t install software you actually need
- The 30GB-free goal is impossible without removing things you use
At that point, an external SSD ($80) or a Mac upgrade is genuinely worth it. There’s no medal for stretching a too-small SSD past its useful life.
For everyone else: the tips above turn a tight SSD from a daily annoyance into a quarterly task. Manageable.