← Blog

Xcode is taking up 100 GB. Here is where it is, and what you can delete

· 3 min read

Storage settings says Xcode is 12 GB. Your disk says something else. On my own Mac, before I cleaned it, the folders Xcode writes to added up to 118 GB. Xcode.app was 12 of them.

The rest sits under ~/Library/Developer, split across folders that Storage settings files under "Developer" on newer macOS versions and under "System Data" on older ones. Neither label tells you what is inside.

The folders, biggest first

Run this to see your own numbers:

du -sh ~/Library/Developer/* ~/Library/Developer/Xcode/* 2>/dev/null | sort -rh

DerivedData

~/Library/Developer/Xcode/DerivedData

One folder per project you have ever opened, holding build products, intermediate object files, the index and the module cache. Projects you deleted a year ago still have their folder here. Mine was 39 GB.

Safe to delete, all of it. Xcode rebuilds it on the next build. The cost is one slow build per project and a minute of re-indexing.

rm -rf ~/Library/Developer/Xcode/DerivedData/*

If a project behaves strangely after a Swift or Xcode update, this is also the folder to clear first.

Simulator runtimes

Since Xcode 15 each iOS, watchOS, tvOS and visionOS runtime is a separate download of 6 to 10 GB, and updating Xcode does not remove the old ones. Three iOS versions plus watchOS plus visionOS is 40 GB with no effort at all.

xcrun simctl runtime list
xcrun simctl runtime delete <identifier>

Xcode → Settings → Components shows the same list with a delete button. Keep the versions you test on. Everything older can go, and comes back with one download if you need it.

Simulator devices

~/Library/Developer/CoreSimulator/Devices

Every simulator you have created, each with its own disk image that grows as you install builds into it. Devices whose runtime you deleted stay behind as unavailable.

xcrun simctl delete unavailable

Devices you still use can be emptied instead of deleted with xcrun simctl erase all, which resets them to a fresh install.

Device support symbols

~/Library/Developer/Xcode/iOS DeviceSupport (and watchOS, tvOS)

The first time you attach a device running a given iOS build, Xcode copies that build's symbols, 2 to 5 GB per version. It never removes them. I had folders for eleven iOS versions, 22 GB, most of them for phones I no longer own.

Safe to delete. Xcode downloads them again the next time you attach a device on that version, which takes a few minutes. Keep the folders for versions you debug on weekly.

Archives

~/Library/Developer/Xcode/Archives

Every archive you have ever built, sorted by date. Each one is the full app plus its dSYM.

This is the one folder on this list where deleting costs something real. The dSYM in an archive is what symbolicates crash reports from that build. Keep the archive of every version that is live on the App Store or on a tester's phone. Delete every archive of a build that was never shipped, and every build older than the oldest version anyone still runs.

Xcode → Window → Organizer lists them with sizes and lets you delete each one.

Everything smaller

Uninstalled Xcode and the space did not come back

Dragging Xcode.app to the Trash removes 12 GB. Everything above stays, since it lives in your home folder rather than inside the app bundle. If you are leaving iOS development on this machine, delete ~/Library/Developer entirely after keeping the archives you need.

Where Decruft fits

Decruft's Smart Scan lists every folder above with its real size on your Mac, tells you what recreates each one, and moves what you pick to the Trash. It marks archives as review-first rather than safe, and it never touches your project folders or .git. Scanning is free; you can read the list and clear the folders yourself with the commands on this page.

Questions

Is it safe to delete DerivedData?

Yes. DerivedData holds build output and indexes. Xcode rebuilds all of it on the next build. The only cost is one slow build and a minute of re-indexing.

Can I delete iOS DeviceSupport?

Yes. The folder holds debug symbols for every iOS version you have plugged a device into. Xcode downloads them again the next time you attach a device on that version. Keep the folders for versions you still debug on if you want to skip the download.

Why is Xcode still taking space after I uninstalled it?

Uninstalling removes Xcode.app and nothing else. DerivedData, simulators, archives and device support live under ~/Library/Developer and stay behind.