Free up space for a macOS update
Find the update's real size, then clear space in order of least risk: the Trash, caches your tools rebuild, and only then things that cost a download. Real commands, honest risks.
1. Find out what macOS asks for
softwareupdate -lThis lists available updates with a size. That size is the download. Installing needs more free space than that, and macOS does not say how much more. It took 10 to 57 seconds to answer on the developer's Mac.
For example, on 9 Oct 2026 it listed macOS Tahoe 26.7.1 at 3,031,882,752 bytes and macOS 27.0.1 at 11,994,810,368 bytes. Your list will differ.
Then see what is free right now:
df -h /2. Empty the Trash
Nothing you moved to the Trash is freed until you empty it. Start here: it costs nothing.
3. Clear caches your tools rebuild on their own
These cost you a slower next build or install, nothing more. Use the tool's own command where it has one.
| What | How | The cost |
|---|---|---|
| Xcode DerivedData | Quit Xcode, then move ~/Library/Developer/Xcode/DerivedData to the Trash. Step by step. | Next build and index are slower. |
| npm cache | npm cache clean --force | Packages download again when needed. |
| pip cache | pip cache purge | Packages download again when needed. |
| Homebrew | brew cleanup | Removes old versions and downloads Homebrew no longer needs. |
| uv cache | uv cache clean | Packages download again when needed. |
| pnpm store | pnpm store prune | Removes only packages no project references. |
Avoid rm -rf for any of these. A typo in a path is permanent, and the tool's own command knows what is safe.
4. Look for a local snapshot
tmutil listlocalsnapshots /If one is listed, the space of files you just deleted may not come back until macOS removes it. On the developer's Mac, after a backup on 11 Oct 2026, the snapshot held deleted files for about two hours. What to do about it.
5. Only if you still need room: things that cost something
These come back only with a download or a rebuild. Choose with care.
- Unavailable simulators.
xcrun simctl delete unavailableremoves simulators whose runtime is no longer installed, with the apps and data inside them. - Local AI models.
ollama rm model-name. You will download it again to use it. More on Ollama. - Large downloads and old projects. Sort your Downloads folder by size in Finder.
Leave Xcode Archives alone unless you are sure. You need an archive's debug symbols to read crash reports from that build.
6. Try the update again
Run df -h / to confirm the space is there, then start the update from System Settings › General › Software Update.