Delete unused iOS simulators and runtimes on a Mac

REVIEW ios-simulators

Unused iOS simulator runtimes and simulated devices installed by Xcode.

What it is

Simulator runtimes and simulated devices that Xcode installed, each one a full copy of an iOS release together with the data of every app you ran on it.

What it is for

They let you test an app against an iOS version without owning the hardware. Xcode keeps every runtime you ever installed, including the ones for iOS versions you no longer support.

Is it safe to delete?

Usually, with a look first. Removing a runtime undoes an Xcode download rather than losing work — but a simulated device also holds the state of the apps you ran on it, and a project that pins an old iOS version will ask you to download the runtime again.

Which simulators Broza proposes

Broza reads the device list from xcrun simctl list -j devices. A simulated device is proposed when its runtime is gone, or when it was last booted longer ago than --unused-after (one year by default). A device that never booted and is still available is left alone. Proposed devices, under ~/Library/Developer/CoreSimulator/Devices/, are moved to quarantine.

Check it on your Mac

Broza is a free, open-source command-line tool. Every command below is read-only except clean, and clean is a dry run until you add --apply.

broza explain ios-simulators
broza suggest --category ios-simulators
broza clean --category ios-simulators

Not installed yet? Install Broza with Homebrew, the installer script, or Cargo.

Related guides