Publish IOS App to App Store

Here’s what to do in order to distribute your app for beta testing or to go live in the App Store.

1. Code Signing: Create an iOS distribution provisioning profile and distribution certificate

The development provisioning profile and development certificate that you’ve been using are only for specific devices. In order to distribute your app to beta testers or to users through the App Store, you’ll need a separate distribution provisioning profile and distribution certificate.

  • First, add your Developer Program account to Xcode if you haven’t already. From the top menu, select Xcode, then choose Preferences.
  • Click on Accounts. In the bottom left corner of the window, press the + sign, then Add Apple ID…
  • Enter the Apple ID and password you use for the Apple Developer Program, then click Sign In.
  • Next, enable automatic signing. From the Project Editor, choose a target and select General.
  • Scroll down to the “Signing” section and click on the triangle icon to expand the settings.
  • Click on the box to Automatically manage signing. Select your team.

When you connect a new device to your Mac, Xcode will automatically detect and register it to your team provisioning profile. Note that in order to launch your app on a device, the device needs to be registered on your team provisioning profile.

2. Create an App Store Connect record for your app

Here we assume you already have an Apple developer account. It costs 100 USD every year as of date today.


In the App Store Connect dashboard, select My Apps.

Click on the + sign in the upper left-hand corner, then New App.

To create a new App Store Connect record, you’ll need these details: platform, app name, default language, bundle ID, and SKU. You can’t really change these details later, so be sure of what you enter.

  • Use keywords in your app name to optimize for discovery.
  • The bundle ID must be an exact match of the bundle identifier in your Xcode project Info.plist file (in the target’s General > Identity section).
  • The SKU is not visible to users and is up to you to set. It can be an identifier you use in your company or something else that is meaningful for you. Acceptable characters include letters, numbers, hyphens, periods, and underscores, and it must begin with a letter or number.

If applicable, you can also set user access at this step.

3. Archive and upload your app using Xcode


  • Before you can submit your app for review through App Store Connect, you need to upload the build through Xcode.
  • In Xcode, select Generic iOS Device as the deployment target.
  • Choose Product from the top menu and click on Archive.
  • The Xcode Organizer will launch, displaying any archives you’ve created in the past.
  • Make sure the current build is selected and click on Upload to App Store in the right-hand panel.
  • Select your credentials and click Choose.
  • In the next window that appears, click on Upload in the bottom right-hand corner.

A success message will appear when the upload has been completed. Click Done.

4. Configure your app’s metadata and further details in its App Store Connect record and Submit the app to Test flight (Internal Testing) or release.