Release your app to beta testers and users.
After you thoroughly test your app in Xcode, distribute it to beta testers or release it to users to run on their personal devices. Choose a distribution method and options based on your app’s platform and development stage, and whether you belong to the Apple Developer Program. Before you release your app to users, distribute your final build using one of the beta test methods.
You can review Preparing Your App for Distribution to complete the configuration of your project, then follow the rest of the distribution steps.
Combine Multiplatform Apps in a Project or Purchase
If you offer related apps on different platforms, combine them in one Xcode project or App Store purchase to make installation more convenient for users.
For iOS, macOS, and tvOS apps, create a universal purchase that allows your customers to purchase related apps together from the App Store. To learn more, see Add a platform to create a universal purchase.
For iPad apps, build a Mac version in the same project using Mac Catalyst, then offer both apps as a universal purchase. To learn more, see Creating a Mac Version of Your iPad App.
For iOS and watchOS apps with the same branding and similar functionality, you can include both targets in the same Xcode project. To distribute a watchOS app that has no companion iOS app, see Create and distribute a watch-only app.
Join the Apple Developer Program
Get full access to capabilities you can add to your app, and all the distribution methods, by joining the Apple Developer Program.
A capability grants your app access to an app service provided by Apple, such as CloudKit, Game Center, or In-App Purchase. To learn more about capabilities, see Adding Capabilities to Your App.
Distribution methods range from exporting your app for test devices to uploading it to App Store Connect. If you want to distribute your app using TestFlight or through the App Store, you need to join the Apple Developer Program. Then Apple creates an App Store Connect account for you and you can start uploading builds. TestFlight lets you distribute iOS, tvOS, and watchOS beta builds to testers and collect feedback.
To learn more about enrolling in the program, see Apple Developer Program.
Create an Archive of Your App
Your first step for all distribution methods is creating an archive of your app. An archive is a build of your app, that includes debugging information, which Xcode stores in a bundle.
In the main window of your Xcode project, choose a target and a build-only device or real device from the Scheme toolbar menu. If the target is a simulator, you can’t create an archive. Then, choose Product > Archive to build the target, and create the archive that will appear in the Archives organizer.
For a Mac app built with Mac Catalyst, create separate archives for the iPad and Mac version. When creating the archive for the Mac version, choose My Mac as the run destination.
Choose a Distribution Method and Options
You can either export the archive or upload it to App Store Connect. You export the app to distribute it outside of the App Store, and upload it to distribute it through Test Flight or the App Store.
In the Archives organizer, select the archive, then click Distribute App. In the next sheet, select a distribution method based on your app’s platform. If you want to export your app, choose a method that supports how you want to distribute it.
To distribute to a limited number of users on registered devices only—for example, distribute within your organization—choose Ad Hoc or Development. To distribute using TestFlight or through the App Store, choose App Store Connect. To learn about all distribution methods, click the question mark in the lower-left corner.
In the following sheets, choose distribution options, based on your distribution method. For example, if you chose an export option, you’ll choose app thinning and on-demand resources options, because you’ll need to distribute the app yourself. If you upload to App Store Connect, you’ll choose whether to include bitcode or symbols. To learn more about distribution options, click the question mark in the lower-left corner.
Distribute a Beta Version
Before you release your app, distribute a beta version to users or offer a preview of an upcoming release using a method based on your app’s platform:
For iOS, tvOS, or watchOS apps, distribute a beta version of your app to internal and external testers using TestFlight. The TestFlight app allows invited users to install, beta test, provide feedback, and get updates of your app. Apple distributes the beta version for you, then you just need to managed the builds and users on App Store Connect. To learn more, see TestFlight beta testing overview, and for Xcode-specific flows, see Distribute an app using TestFlight.
For all platforms, distribute a beta version to registered devices in your developer account. Choose this option only if you can reserve a portion of your limited development devices for beta testing. To learn more, see Distribute to registered devices (iOS, tvOS, watchOS or Distribute to registered computers (macOS).
For macOS apps, distribute an Apple-notarized build to testers before you distribute the app through the App Store. To learn more, see Notarizing macOS Software Before Distribution.
Publish on the App Store
After beta testing your final build, submit it to App Review, then offer it on the App Store.
If you used TestFlight to distribute a beta version, and entered the additional information required by App Store for a release, just submit the last build that appears in App Store Connect to App Review. To learn more, see Overview of publishing an app.
Otherwise, follow all the steps in Distribute an app through the App Store, to prepare and upload your app to App Store Connect, then submit it to App Review.
Distribute Outside of the App Store
For macOS apps, you can export a notarized app for distribution outside of the App Store, but you may first need to disable capabilities that require the Apple Developer Program membership first, then distribute the app yourself to users. To learn more, see Notarizing macOS Software Before Distribution.
Distribute Business Apps
There are also several options for distributing business, customized, or in-house apps as well. For details, see Find the best way to reach your users. If you join the Apple Developer Enterprise Program, see Develop and distribute an enterprise app for enterprise-specific Xcode steps to export your app.
Download Crash, Energy, and Metrics Reports
If you distribute your app using TestFlight or through the App Store, you can view crash and energy reports that Apple generates for you in the organizer. If you distribute your app through the App Store, you can view metrics reports in the organizer too. To learn more, see About Crashes organizer, also About Energy organizer, and About Metrics organizer.