Distributing Your App for Beta Testing and Releases

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.

Screenshot of the Archives organizer showing an archive selected and Distribute App button.

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.

Screenshot of the distribution flow showing the Ad Hoc distribution method selected.

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.

Screenshot of the distribution flow showing the Ad Hoc distribution options with Rebuild from Bitcode selected.

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:

Screenshot of App Store Connect showing builds that were uploaded from Xcode.

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.

Screenshot of App Store Connect showing the version information and Submit for Review buttion.

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.

Screenshot of the Crashes organizer showing details of a crash report.

See Also


Preparing Your App for Distribution

Configure the information property list and add icons before you distribute your app.

Notarizing macOS Software Before Distribution

Give users even more confidence in your macOS software by submitting it to Apple for notarization.