Ok, looks like I figured out how to do this, so following steps are needed:

  1. npx expo prebuild
  2. open ios/YourProject.xcworkspace
  3. Go to project settings "Signing & Capabilities" and select your team
  4. Go to project settings "Signing & Capabilities" and remove "Push Notifications"
  5. Click on top bar your project name, select "Edit Scheme", select "Build Configuration" - Release
  6. Build bundle with npx expo export:embed --entry-file='node_modules/expo/AppEntry.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios'
  7. In Xcode in Build phases -> Bundle React Native code and images -> Check off "For install builds only" if it's checked
  8. Go to Xcode, select your connected device and run the project

I did many iterations, but this looks like fixed the problem for me.
Now I can test my app on my iPhone in release mode without need to connect to dev server.

I see still that `npx eact-native run-ios --mode Release --terminal terminal`` not working for some reason, fails to build.

๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ tutorial โ€บ eas โ€บ ios-production-build
Create a production build for iOS - Expo Documentation
Learn about the process of creating a production build for iOS and automating the release process. ... In this chapter, we'll create our example app's production version and submit it for testing using TestFlight.
๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ build โ€บ setup
Create your first build - Expo Documentation
If you'd like to try this, read about creating an installable APK for Android and creating a simulator build for iOS. Before the build process can start for app stores, you will need to have a store developer account and generate or provide app signing credentials.
๐ŸŒ
Reddit
reddit.com โ€บ r/reactnative โ€บ using expo, is there a way to build ios for free if you're on windows?
Using expo, is there a way to build iOS for free if you're on windows? : r/reactnative
March 1, 2025 - A community for learning and developing native mobile applications using React Native by Facebook. ... Sorry, this post was deleted by the person who originally posted it. Share ... Yes, you can use the eas service. You get 15 free iOS builds for free per month, then get charged per build.
Top answer
1 of 2
7

With the current Expo SDK 50, using npx expo prebuild is the right starting point. After you did this, you need to build your project without relying on the metro server. This means, you have to build a standalone .ipa file for ios. You can do all of the following in Xcode by opening your ios/*.xcworkspace file.

  1. Change the Build Configuration: In Xcode -> Product -> Scheme -> Edit Scheme -> choose "Debug" -> Close
  2. Build the app: Product -> Build
  3. Archive your app: if there are no building errors -> Product -> Archive
  4. Export archived app: Window -> Organiser (this should open up automatically after step 3) -> select the archived build -> Distribute App -> Debug -> Perform signing procedure -> Select destination for .ipa file
  5. Install app on connected device: Connect device to your Mac -> Window -> Devices and Simulators -> Under "Installed Apps", click on "+" -> Select .ipa file
2 of 2
1

If you want to run your Expo app on your physical device without using the Expo Go app and an Expo server, you would need to create a standalone app binary (an IPA file for iOS).

This process involves "ejecting" from the managed Expo workflow to gain more control over the build process. Here's the general process:

  • Run expo eject in your project directory. This will create native iOS and Android project directories and configuration files.

  • For iOS, you'll now have an ios folder in your project directory. You can open this in Xcode by navigating to the directory and opening the .xcworkspace file.

  • From Xcode, you can run your app on a connected device by selecting the device from the target device list and clicking the "play" button.

Please note: In order to install the app on a physical device, you'll still need an Apple Developer account, even if it's just the free version. You'll have to sign your app with a development certificate. The app will also only run as long as the development certificate is valid, which is typically 7 days for a free Apple Developer account. After this period, you'll need to re-sign and re-install the app.

If you're looking for a way to run your app on your physical device indefinitely without an Apple Developer account, unfortunately, this is not possible due to Apple's policies.

๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ develop โ€บ development-builds โ€บ create-a-build
Create a development build on EAS - Expo Documentation
This is the only way to test your iOS build on an iPhone device without a paid Apple Developer Account (only possible on macOS). Read more about local app compilation and see the Expo Go to Development Build guide. For detailed, step-by-step instructions, see our EAS Tutorial. Available also as a tutorial series on YouTube. ... Apps that don't use Continuous Native Generation or are created with npx react-native, require further configuration after installing this library.
Find elsewhere
๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ build-reference โ€บ ios-builds
iOS build process - Expo Documentation
If the ios/Gymfile file doesn't exist, the iOS builder creates a default one which looks similar to the following: ... suppress_xcode_output(true) clean(true) scheme("app") export_options({ method: "app-store", provisioningProfiles: { "com.expo.eas.builds.test.application" => "dd83ed9c-4f89-462e-b901-60ae7fe6d737" } }) export_xcargs "OTHER_CODE_SIGN_FLAGS=\"--keychain /tmp/path/to/keychain\"" disable_xcpretty(true) output_directory("./build") output_name("App")
๐ŸŒ
GitHub
github.com โ€บ expo โ€บ expo
GitHub - expo/expo: An open-source framework for making universal native apps with React. Expo runs on Android, iOS, and the web.
An open-source framework for making universal native apps with React. Expo runs on Android, iOS, and the web. - expo/expo
Starred by 45.8K users
Forked by 10.4K users
Languages ย  TypeScript 55.8% | Kotlin 16.9% | Swift 12.3% | Objective-C 4.2% | JavaScript 3.1% | C++ 2.9%
๐ŸŒ
Expo
expo.dev.
Expo
We are the home for developers building native apps across Android and iOS with JavaScript (neat, right?). Weโ€™re open source. Offer a free plan.
๐ŸŒ
Easie
soeasie.com โ€บ blog โ€บ how-to-build-and-upload-a-react-native-app-to-the-ios-app-store-using-expo
How to build and upload a React Native app to the iOS App Store using Expo โ€” Easie
November 4, 2021 - The build file can then be uploaded to Apple App Store Connect. Run this command to start building the iOS file within Expo: expo build:ios
๐ŸŒ
Pagepro
pagepro.co โ€บ home โ€บ blog โ€บ publishing expo apps to app store and google play store: 2025 guide
How to Publish Expo React Native App to iOS and Android in 2025
August 25, 2025 - Itโ€™s possible to generate and submit app builds using Expoโ€™s EAS Build and EAS Submit for free. If you exceed Expoโ€™s free build limits or if your app uses over-the-air updates, you might get billed extra. Apps with in-app purchases or subscriptions will have additional fees, depending on the platform. Yes, React Native is designed for cross-platform development, so you can write a single codebase that works on both iOS and Android.
๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ guides โ€บ local-app-development
Local app development - Expo Documentation
To build your project locally you can use compile commands from Expo CLI which generates the android and ios directories: ... The above commands compile your project, using your locally installed Android SDK or Xcode, into a debug build of your app.
๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ workflow โ€บ overview
Develop an app with Expo - Expo Documentation
The native project directories (android and ios) are automatically added to your .gitignore when you create a new project, and you can delete them at any time, then re-generate them from the Expo app config with npx expo prebuild whenever required.
๐ŸŒ
Expo Documentation
docs.expo.dev โ€บ tutorial โ€บ create-your-first-app
Create your first app - Expo Documentation
We'll use create-expo-app to initialize a new Expo app. It is a command line tool to create a new React Native project.
๐ŸŒ
Replit Docs
docs.replit.com โ€บ tutorials โ€บ expo-on-replit
Building Mobile Apps with Expo and Replit
Replit is the fastest way to create and publish cross-platform mobile apps using Expo, without any setup or configuration.
๐ŸŒ
Vercel
expo-assets-generator.vercel.app โ€บ tutorials โ€บ expo-eas-build-deployment
Expo Assets Generator - Free Icon Generator for React Native Apps
Free Expo Assets Generator and Icon Generator for React Native apps. Generate iOS, Android, and web icons from one image. Create adaptive icons automatically.