Macaroom
Guides › Xcode simulators

How to delete old Xcode simulators and runtimes

Simulators pile up with every Xcode and iOS release. There are two kinds of space here: the simulated devices, and the runtimes they run on. Both can be cleaned without breaking Xcode.

What's taking the space

WhatWhereWhat it holds
Simulator devices~/Library/Developer/CoreSimulator/DevicesEach simulated iPhone or iPad, with the apps and data you put on it
Simulator runtimesManaged by XcodeThe iOS, watchOS, tvOS or visionOS system each simulator runs. Each one is several gigabytes
Simulator caches~/Library/Developer/CoreSimulator/CachesFiles the simulator rebuilds

What you lose

Deleting a simulator removes the apps and data inside it, such as test accounts or saved app state. Deleting a runtime means you can't run simulators of that version until you download it again from Xcode.

Remove simulators you can't use any more

When a runtime is gone, its simulators stay behind as "unavailable" and still take space. This removes only those:

xcrun simctl delete unavailable

To remove individual simulators, open Xcode › Window › Devices and Simulators, select one and press Delete.

Remove old runtimes

Keep the runtime for the iOS version you ship against. Removing a runtime you need means a multi-gigabyte download to get it back.

How Macaroom handles it

Macaroom shows how much space each simulator uses and marks simulators Manage in app, because deleting them in Xcode or with simctl keeps Xcode's records straight. It gives you the command to run instead of deleting the files itself. Simulator caches are marked Rebuildable and can be cleared.

Related guides

See it on your own Mac

Macaroom scans your Mac, names what each chunk of storage is, and marks what's safe to clear. Anything you remove goes to the Trash, so you can put it back.

Get Macaroom