Next-Gen App & Browser Testing Cloud
Trusted by 2 Mn+ QAs & Devs to accelerate their release cycles

Most iOS Simulator errors trace back to a small set of causes: corrupted simulator state, a stuck CoreSimulator service, a missing or mismatched runtime, low disk space, or an out-of-date Xcode. The fast path is to shut the device down and erase it (xcrun simctl shutdown all then xcrun simctl erase all), restart the CoreSimulator service, free disk space, and update Xcode and the Command Line Tools. Below, each common error is mapped to its exact fix. If you want to skip local simulator failures entirely, you can run your app on a real device cloud instead.
Before reaching for a fix, identify which error you are actually seeing. The table below maps the most common Simulator error messages to their usual root cause so you can jump straight to the right section.
| Error / Symptom | Most Likely Cause |
|---|---|
| "Unable to boot the Simulator" / "Simulator device failed to launch" | Corrupt device data or a stuck CoreSimulator service |
| "Unable to boot device in current state: Booted / Shutdown" | Booting an already-booted device, or erasing a running one |
| Black or white screen, or stuck on the Apple logo | Hung boot, corrupt content, or a render/runtime glitch |
| "Failed to install the requested application... bundle not found" | Wrong .app path or a build not targeted at the simulator |
| "No devices are booted" / "No devices registered" | Missing or uninstalled simulator runtime |
| "launchd_sim could not bind to session" (Xcode 16 / iOS 18) | Known point-release regression in the runtime |
Work through these in order. They resolve the large majority of Simulator errors before you ever need to touch CoreSimulator internals:
xcrun simctl shutdown all
xcrun simctl erase allxcode-select --install
sudo xcode-select -s /Applications/Xcode.app/Contents/DeveloperThis pair of errors almost always means the simulator's device data is corrupt or the CoreSimulator service is wedged. Escalate through these steps:
xcrun simctl shutdown all
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService# delete one device by UDID
rm -rf ~/Library/Developer/CoreSimulator/Devices/<UDID>
# nuclear option: remove all simulator devices
rm -rf ~/Library/Developer/CoreSimulator/Devices/*df -h /This error is a state mismatch rather than corruption. You asked to boot a device that is already booted, or to erase one that is still running. The fix is to always check state and shut down first:
xcrun simctl list devices # find the UDID and current state
xcrun simctl shutdown <UDID> # shut the target device down
xcrun simctl erase <UDID> # then erase it safelyReact Native and Expo users: a launcher that auto-boots the most recently used simulator can collide with the device your tooling is starting. In the Simulator settings, turn off "boot most recently used simulator" to stop the two from racing.
When you want a clean slate, keep this reference handy. Each command targets a specific layer of simulator state, from running devices to orphaned ones to diagnostic logs:
xcrun simctl shutdown all # stop all booted devices
xcrun simctl erase all # wipe content and settings
xcrun simctl delete unavailable # remove broken or orphaned devices
xcrun simctl list devices # verify the remaining devices
xcrun simctl diagnose # collect logs for a bug reportFor a heavier reset that deletes every simulator and lets Xcode or your CI tooling recreate them from scratch, use xcrun simctl delete all. Fastlane users can achieve the same with fastlane snapshot reset_simulators.
These symptoms point at the build or the device rather than the service itself:
Clean the build folder with Product > Clean Build Folder (Cmd+Shift+K), then remove stale derived data:
rm -rf ~/Library/Developer/Xcode/DerivedDataIf the Simulator reports "no devices registered" or you cannot find a particular iOS version, the runtime is missing. Open Xcode > Settings > Components (or Platforms) and install the runtime you need. When the in-app download fails, often with DVTDownloadableErrorDomain Code 41 or a bad-URL error, download the runtime DMG manually from Apple and import it:
xcodebuild -importPlatform ~/Downloads/iOS_18.2_Simulator_Runtime.dmgA handful of errors are specific to Apple Silicon Macs and file permissions:
softwareupdate --install-rosetta
chmod -R u+rwX ~/Library/Developer/CoreSimulatorIf you hit the same class of "won't boot / won't launch" failures on the Android side, the causes differ: they are usually a missing hardware accelerator or a system image that does not match your CPU. Enable the hypervisor (AEHD, WHPX, or Hyper-V on Windows, KVM on Linux, Hypervisor.framework on macOS), use an x86_64 image on Intel or an arm64 image on Apple Silicon, and prefer Quick Boot. For a deeper walkthrough, see the related question on Troubleshoot Emulator Errors.
Local simulators break in ways a managed cloud does not: stuck CoreSimulator services, runtime download failures, disk pressure, and version regressions all eat into your day. TestMu AI's Real Device Cloud runs your app on thousands of real iPhones and iPads with OS versions already provisioned, so there are no local boot errors and no CoreSimulator resets to manage. When you simply need a quick environment, you can also spin up an iOS Simulator Online in the browser instead of debugging your local install.
Shut every device down and erase it with xcrun simctl shutdown all then xcrun simctl erase all, kill the CoreSimulator service with sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService, clear corrupt device data under ~/Library/Developer/CoreSimulator/Devices, and update Xcode and the Command Line Tools. Restarting the Mac afterwards clears any stuck shared cache.
It means you tried to boot a device that is already booted, or erase one that is still running. List the devices and their state with xcrun simctl list devices, shut the target device down with xcrun simctl shutdown <UDID>, and only then boot or erase it.
Run xcrun simctl shutdown all followed by xcrun simctl erase all to wipe content and settings on every device, then xcrun simctl delete unavailable to remove orphaned or broken devices. For a heavier reset, xcrun simctl delete all removes every simulator so Xcode can recreate them.
The most common causes are a wrong .app bundle path or an architecture mismatch on Apple Silicon. Verify the build is targeted at the simulator, run Product > Clean Build Folder, clear DerivedData, and read the console output for the real error before retrying the install.
Recent Xcode 16 and iOS 18 releases have known runtime regressions and download failures such as launchd_sim could not bind to session and DVTDownloadableErrorDomain Code 41. Update to the latest point release and, if the runtime is broken, reinstall it manually with xcodebuild -importPlatform.
No. Lag, jank, and high RAM or CPU usage are performance problems rather than boot or crash errors, and they have different fixes such as choosing a smaller device, disabling slow animations, and freeing memory. See How to Handle Performance Issues with the Simulator? for those.
KaneAI - Testing Assistant
World’s first AI-Native E2E testing agent.

TestMu AI forEnterprise
Get access to solutions built on Enterprise
grade security, privacy, & compliance