HomeGuidesReferenceLearn
ArchiveExpo SnackDiscord and ForumsNewsletter

Build for iOS Simulators

Learn how to configure and install build for iOS simulators when using EAS Build.


Running a build of your app on an iOS Simulator is useful. You can configure the build profile and install the build automatically on the simulator. This provides a standalone (independent of Expo Go) version of the app running without needing to deploy to TestFlight or even having an Apple Developer account.

Configuring a profile to build for simulators

To install a build of your app on an iOS Simulator, modify the build profile in eas.json and set the ios.simulator value to true:

eas.json
{
  "build": {
    "preview": {
      "ios": {
        "simulator": true
      }
    },
    "production": {}
  }
}

Now, execute the command as shown below to run the build:

Terminal
eas build -p ios --profile preview

Remember that a profile can be named whatever you like. In the above example, it is called preview. However, you can call it local, simulator, or whatever makes the most sense.

Installing build on the simulator

If you haven't installed or run the iOS Simulator before, follow the iOS Simulator guide before proceeding.

Once your build is completed, the CLI will prompt you to automatically download and install it on the iOS Simulator. When prompted, press Y to directly install it on the simulator.

In case you have multiple builds, you can also run the eas build:run command at any time to download a specific build and automatically install it on the iOS Simulator:

Terminal
eas build:run -p ios

The command also shows a list of available builds of your project. You can select the build to install on the simulator from this list. Each build in the list has a build ID, the time elapsed since the build creation, the build number, the version number, and the git commit information. The list also displays invalid builds if a project has any.

For example, the image below lists two previous builds of a project:

When the build's installation is complete, it will appear on the home screen. If it's a development build, open a terminal window and start the development server by running the command npx expo start. For SDK 48 and lower, use the --dev-client flag with the command.

Running the latest build

Pass the --latest flag to the eas build:run command to download and install the latest build on the iOS Simulator:

Terminal
eas build:run -p ios --latest