If you are looking to run a native build without using Expo Go on a physical iOS device (not a simulator), you can plug in your device to your computer by cable and use the following code:

npx expo run:ios --device

This is useful in cases when you need to test notifications, native code, etc.

Alternatively, if you're using yarn, try:

yarn expo run:ios --device
Answer from Brian Li on Stack Overflow
🌐
Expo Documentation
docs.expo.dev › workflow › ios-simulator
iOS Simulator - Expo Documentation
... Watchman is a tool for watching changes in the filesystem. Installing it will result in better performance. You can install it with: ... Run your app with npx expo start and press i from the command line.
🌐
Expo Documentation
docs.expo.dev › more › expo-cli
Expo CLI - Expo Documentation
November 11, 2025 - Expo CLI provides commands for performing both tasks. You can compile your app locally with the run commands: ... Build directly on connected devices with no global side effects using the --device flag. Supports locked devices, letting you retry instantly instead of needing to rebuild. Automatically codesign iOS apps for development from the CLI without having to open Xcode.
Discussions

Is there really no simple way to build and run an Expo app locally via Xcode?
I use the `npx expo run:ios` command to sync the latest changes with Xcode and then build and run on the simulator. You can also use your physical device. Make sure you are using development builds for the most accurate reproduction. Once you have installed the app itself on your physical device scan the QR code with your camera and open in your app. If you want to publish without eas, you can create an archive in the menu bar underneath Product > Archive. Also make sure you are opening .xcworkspace file in xcode. More on reddit.com
🌐 r/expo
19
3
July 9, 2025
No way to build ios preview without paid account?
Hi, I want to preview and test my app on iOs but I don't have paid apple account and looks like expo doesn't allow to do so, however it's possible to build and run iOs app with react na... More on github.com
🌐 github.com
3
1
March 7, 2024
npx expo run:ios --device doesn't take app.config.js changes into account, deeplinks do not work
You need to run npx expo prebuild --clean if you change the app config in order to reflect in the native project folders after they're generated by the run command for the first time. More on reddit.com
🌐 r/expo
13
1
February 6, 2025
expo run:ios cannot install on physical device
Summary running expo run:ios. works great in simulators. cannot get an install on a physical device. same device has no issues being recognized as part of the project when using any EAS cli command... More on github.com
🌐 github.com
15
April 23, 2022
🌐
Reddit
reddit.com › r/expo › is there really no simple way to build and run an expo app locally via xcode?
r/expo on Reddit: Is there really no simple way to build and run an Expo app locally via Xcode?
July 9, 2025 -

I'm trying to follow what I thought would be a straightforward local workflow:

  1. Start the Expo dev server with expo start

  2. Develop the app on the iOS simulator

  3. Once ready, open the Xcode project, build, and run it on the simulator

Unfortunately, step 3 fails because the app expects the Expo dev server (Metro) to be running to fetch the JS bundle. This seems like a hard requirement.

I suppose you could manually tweak the Xcode project to load the bundle as a local resource, but that feels counterintuitive and messy.

Also, eas build --local still requires both Expo build tools and an Apple developer account, so it's not a pure local solution either.

Am I missing something obvious here, or is this just how it works with Expo right now? Any tips or clarification would be appreciated — thanks!

EDIT:

When I say step 3 fails, I meant that is running the expo dashboard which requires the dev server to run. I just want to run it without the server i.e. as the production build.

🌐
Fig
fig.io › manual › expo › run:ios
expo run:ios [path] | Fig
expo run:ios · expo send · expo start · expo start:web · expo upload:android · expo upload:ios · expo url · expo url:ipa · expo url:apk · expo webhooks · expo webhooks:add · expo webhooks:remove · expo webhooks:update · Run the iOS app binary locally ·
🌐
Expo Documentation
docs.expo.dev › guides › local-app-development
Local app development - Expo Documentation
October 21, 2025 - To create a development build, you can use local app compilation commands (npx expo run:[android|ios]) which will create a debug build and start the development server.
Find elsewhere
🌐
React Native
reactnative.dev › docs › running-on-device
Running On Device · React Native
1 week ago - A Mac is required in order to build your app for iOS devices. Alternatively, you can refer to our environment setup guide to learn how to build your app using Expo CLI, which will allow you to run your app using the Expo client app.
🌐
Reddit
reddit.com › r/expo › npx expo run:ios --device doesn't take app.config.js changes into account, deeplinks do not work
r/expo on Reddit: npx expo run:ios --device doesn't take app.config.js changes into account, deeplinks do not work
February 6, 2025 -

I've been trying to make deeplinks work in my Expo (+ Expo Router) app.

I followed the docs here:

https://docs.expo.dev/linking/into-your-app/

And I added the "scheme" key.

But unfortunately that doesn't work. Opening myapp:// in Safari or Chrome on mobile doesn't work.

I build my app locally with this command: npx expo run:ios --device (or the android equivalent).

My app uses Google Sign In on iOS, so I tried to empty the array in CFBundleURLSchemes to see if it would break my app, and... it doesn't. I then checked in the Info of the app of the /ios folder, and I can see that the first entry of the CFBundleURLSchemes is still set even after running "npx expo run:ios --device".

I tried to run:

expo prebuild --clean

and I also tried to run "expo start --clear".

None of that works, it seems that the config changes are just ignored. I could simply delete the /ios folder and rebuild, but I would expect the build command not to ignore changes in my app.config.js.

What is going on here? What is the correct way to do this?

🌐
Madanbajgai
madanbajgai.com.np › blogs › complete guide to building and running expo(react native) apps
Complete Guide to Building and Running Expo(React Native) Apps | Madan Bazgai
January 13, 2025 - # Generate for both platforms npx expo prebuild # Platform specific npx expo prebuild --platform android npx expo prebuild --platform ios # Reset native code after config changes npx expo prebuild --clean ... # Build and run npx expo run:android npx expo run:ios # Run on connected device npx ...
🌐
GitHub
github.com › expo › expo-cli › issues › 4321
expo run:ios cannot install on physical device · Issue #4321 · expo/expo-cli
April 23, 2022 - expo run:ios --device finding device spins...provides a list of simulators...never provides physical device as an option
Published   Apr 23, 2022
🌐
Reddit
reddit.com › r/expo › running expo development build app on physical ios device
r/expo on Reddit: RUNNING EXPO DEVELOPMENT BUILD APP ON PHYSICAL IOS DEVICE
November 2, 2024 -

Hi, is there a way to deploy an app on a physical device without the need for a paid developer account or a mac? I do have an iPhone. Any help would be great. I just need to run my app on my apple device. Thank you.

🌐
GitHub
github.com › expo › expo › issues › 37184
"npx expo run:ios" hangs on "Planning build" · Issue #37184 · expo/expo
June 2, 2025 - found 0 vulnerabilities ➜ my-app git:(master) ✗ npx expo run:ios › Apple bundle identifier: com.crirvine.my-app ✔ Created native directory ✔ Updated package.json ✔ Finished prebuild ✔ Installed CocoaPods › Planning build
Published   Jun 02, 2025
🌐
GitHub
github.com › expo › expo › issues › 24615
Can't run on device on iOS 17 · Issue #24615 · expo/expo
September 25, 2023 - Every time I run the command, it builds fine, starts the dev server then crashes with the following error: ✖ Complete 100% CommandError: InvalidService: com.apple.debugserver (request: StartService) Try reconnecting your device. You can also debug service logs with `export DEBUG=expo:xdl:ios:*`
Published   Sep 25, 2023
🌐
DEV Community
dev.to › arielmejiadev › open-successfully-ios-simulator-with-react-native-expo-472b
Open Successfully iOS Simulator with React Native & Expo - DEV Community
June 19, 2024 - The second solution is to delete node_modules folder and package-lock.json, then run npm install, then run npx expo start. The sections where most issues to run iOS Simulator are:
🌐
Expo Documentation
docs.expo.dev › get-started › set-up-your-environment
Set up your environment - Expo Documentation
Learn how to set up your development environment to start building with Expo. ... Let's set up a local development environment for running your project on Android and iOS.
🌐
GitHub
github.com › expo › expo › issues › 32182
expo run:ios --device not working on real device · Issue #32182 · expo/expo
October 20, 2024 - ✔ Select a device › 🔌 MooMoo (18.0.1) › Using --device 00008130 ✔ Development team for signing the app › Marius - Apple Development: Marius Mariakinas › Signing and building iOS app with: Apple Development: Marius Mariakinas › Planning build › 0 error(s), and 0 warning(s) CommandError: Failed to build iOS project. "xcodebuild" exited with error code 70. To view more error logs, try building the app with Xcode directly, by opening /Volumes/Media/Dev/Projects/test__frameworks/react-native-expo/ios/ExpoStarterApp.xcworkspace.
Published   Oct 20, 2024
🌐
Expo Documentation
docs.expo.dev › build-reference › simulators
Build for iOS Simulators - Expo Documentation
July 1, 2024 - 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 ...
🌐
Reddit
reddit.com › r/reactnative › how to install expo ios app on iphone directly?
r/reactnative on Reddit: How to install Expo iOS app on iPhone directly?
January 22, 2024 -

I've been working with Expo React Native for Android for quite a while but I'm very new to Expo React Native iOS. Like in Android when we generate .apk file it can be directly run on a physical device without submitting to Playstore. Can the same be done for iPhone?

In short: Can I install iOS app directly into iPhone without submitting to AppStore?