How to Publish an App to the App Store
Tags: ios, devops, javascript
Published: 2023-08-23 08:20:03



Creating a new app is exciting. But getting that app into the hands of real users isn’t always easy.

First, you need to publish your app to the App Store so it’s available for download.

The two major app stores are the Apple App Store and the Google Play Store—one for iOS and one for Android. But each platform has its own unique guidelines, rules, and submission requirements. 

This guide is going to focus specifically on publishing an iOS app to the Apple App Store. Once the app is published here, it can be downloaded on an iPhone or iPad.

It’s worth noting that Apple is very particular with its submission guidelines. You’ll need an Apple Developer account, and the App Store listing must match the app’s functionality. There are lots of other small details that Apple takes into consideration before they’ll approve apps.

That’s because Apple wants to protect its users. Apple wants its user base to feel comfortable knowing that any app downloaded from the Apple App Store is safe and won’t break their devices.

Ready to get started? Let’s dive in!

**Where to Start: Submitting an iOS App to the App Store**

Submitting your iOS app to the App Store is the final stage of development. By now, the app should already be built, tested thoroughly, and you should have an app name that you’re confident in using. 

If your app is still in development, there’s nothing wrong with looking ahead toward the [App Store](https://www.apple.com/app-store/) submission. Just know that it’s too early to take any of these steps. Apple won’t approve any unfinished apps to the store, even if you have all of the other app information required for the listing. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e37fun07j9uu097u9zd7.png)

You should also consider the legal prerequisites of launching a mobile app. For example, if you’re launching an app in EU markets, the app must comply with GDPR guidelines. If you’re going to offer app purchases and collect payments through the app, you’ll need to think about things like PCI compliance as well. 

How you’re collecting, handling, and sharing user data is really important here. You should refer to the official [Agreements and Guidelines for Apple Developers](https://developer.apple.com/support/terms/) to ensure you’re following all of the appropriate requirements regarding user data. 

App submissions must only have content that was either created by you or that you have the proper authority to use. If you’re using content from another source without the proper legal licenses or permissions, it can be grounds for either rejecting your app from the App Store or getting it removed from the App Store.

You’ll need to have an Apple Developer account and Apple ID as well. Submitting your app from a computer running on macOS is not a requirement, but it’s definitely common considering the software and tools you’ll be using.

For example, if you’re using Xcode to create an iOS app for iPhone and iPad, you can take steps to prepare your app for publishing directly in the IDE.

**App Store Submission Requirements**

Before we get into the steps required for publishing, you need to understand the App Store guidelines for app submission.

You can review all of the App Store review guidelines [here](https://developer.apple.com/app-store/review/guidelines/). These are some important points to keep in mind:

- Developers are responsible for making sure everything in the app complies with Apple’s guidelines, including analytics services, third-party SDKs, ad networks, and more.
- Attempting to cheat the review system or manipulate ratings is grounds to remove your app and kick you out of the developer program.
- You must comply with Apple’s guidelines regarding apps for kids.
- Apps may not include objectionable content (discrimination, explicit materials, etc.).
- The app’s privacy policy must comply with all Apple guidelines. 
- Apps must be complete and fully functional before you submit them for review.
- Apple has certain technical requirements and software standards that must be followed.
- You may not just copy another app and make subtle changes to pass it off as your own.
- Apps must have minimum functionality that goes beyond a mobile website.

In total, the App Store Review Guidelines are quite lengthy. There are five major categories—safety, performance, business, design, and legal. Each section is broken down into different subsections, like this:

22
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/staduld1ebakb3iebfxa.png)

So give yourself ample time to review this document in detail before you go through the steps for submission.

**6 Steps to Submit and Publish an iOS App**

The App Store publishing process can be summarized in just six steps. 

1. Sign up for the Apple developer program
2. Prepare the app for submission
3. Create a listing via App Store Connect
4. Capture App Store screenshots
5. Upload the app using Xcode
6. Submit the app to be reviewed by Apple

We’ll cover each step in greater detail below:

**Step 1 — Join the Apple Developer Program**

You must be a member of the Apple Developer Program to submit an app to the App Store. So if you haven’t done so already, sign up for an [Apple developer account](https://developer.apple.com/programs/enroll/). 

If you’re enrolling as an individual or sole proprietor, you can sign in using your Apple ID and enable two-factor authentication. Apple will ask you for some personal information, like your legal name and address.

To enroll in the developer program as an organization, you’ll also need an Apple ID with two-factor authentication enabled. In addition to the Apple ID, enrollment requires:

- D-U-N-S Number
- Legal Entity Status
- Legal Binding Authority
- Website

Just click “Start Your Enrollment” on [this page](https://developer.apple.com/programs/enroll/) to get started.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d5kw2w2zikk2vg7vh80o.png)
The membership pricing starts at $99 per year, and it gives you access to other exclusive Apple developer tools and services. 

You can use the account to manage your apps for iPhone, iPad, Mac, Apple Watch, and Apple TV. The membership also comes with beta software, app analytics, testing tools, and everything you need to manage your App Store listing. 

Apple developers also have access to TestFlight—a way to collect feedback from up to 10,000+ testers before submitting the app to the App Store. You can invite them with an email address or public link.

** Step 2 — Prepare the App for Submission**

Identifying bugs and problems with your app before submitting it to the app store is just one aspect of app development. There are other things you must do to get it ready for review.

First, you need to set the bundle ID in Xcode. This is used to uniquely identify your app in the system. Xcode will give you a default identifier when you create a project from a template, but it’s important to create one that’s unique. Just be aware that you cannot change the bundle ID after it’s been uploaded to App Store Connect. 

You can adjust these settings in the “General” menu of your [project editor](https://developer.apple.com/documentation/xcode/preparing-your-app-for-distribution) in Xcode.
44
Next, you need to configure your app version number and build string. The version number will appear in the App Store, and it’s expected to be in a format of [Major].[Minor].[Patch], such as 9.12.1.

Apple requires you to set an app category with your submission. This is designed to help users discover your app in the App Store. Options include:

- Books
- Business
- Developer Tools
- Music
- Medical
- Navigation
- Education
- News
- Finance
- Photo & Video
- Productivity
- Food & Drink
- Reference
- Games
- Graphics & Design
- Shopping
- Social Networking
- Lifestyle
- Sports
- Kids
- Travel
- Magazines & Newspapers
- Utilities
- Weather

Primary categories must match the primary purpose and function of your app. Choosing a category that doesn’t fit your app’s functionality is against Apple’s guidelines and grounds for removal. 

You need to prepare an app icon and provide a launch screen as well. The launch screen is the UI that appears when your app launches and quickly disappears when the first screen loads. The purpose of a launch screen is to enhance the UX by offering some visuals while the app is loading. 

Review all of [Apple’s official guidelines](https://developer.apple.com/documentation/xcode/preparing-your-app-for-distribution) to prepare your app for distribution. 

** Step 3 — Create a Listing via App Store Connect**

The [App Store Connect](https://developer.apple.com/app-store-connect/) is where members of the Apple Developer Program can upload apps, submit apps, and manage apps post-launch. It comes with everything from sales reports to analytics, test resources, and more. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zmddavtd177zb5ozqpz7.png)
Here’s a quick overview of how to create a listing for App Store Connect:

- Log into your account
- Select the “+” button from the “My Apps” menu
- Add the platform (iOS), primary language, bundle ID, and SKU
- Add the app name and category
- Provide a URL to your app’s privacy policy
- Choose your app’s pricing

You’ll also have the option to decide how your app is released after the review information is approved. 

You can manually sign back into App Store Connect and release it when you’re ready, or set it to be published on a certain date (assuming it passes certification). Apple gives you the option to select the app to be released immediately following its approval as well. 

** Step 4 — Capture App Store Screenshots**

Now it’s time to prepare your screenshots for the App Store. There are two basic approaches here that you can follow. You can either use raw screenshots from your app or use a mockup template to showcase your app.

These screenshots are the perfect way to help showcase to the world what your app does and how it works when they find you in the App Store. 

Here’s an example of how [Delta Airlines](https://apps.apple.com/us/app/fly-delta/id388491656?platform=iphone) uses app screenshots to showcase its top features:
Apple does have a lot of different screenshot specifications for app previews that you must take into consideration. That’s because they have so many different devices on the market.

iPhones range from 4.7-inch screens to 6.5 inches. iPads range all the way up to 12.9 inches.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pf4qqobv9k24mbns024o.png)
You can view all of [Apple’s screenshot specifications here](https://help.apple.com/app-store-connect/#/devd274dd925). I also recommend reviewing this [API collection resource for app screenshots](https://developer.apple.com/documentation/appstoreconnectapi/app_metadata/app_screenshots) for more technical requirements.

**Step 5 — Upload the App Using Xcode
**
Now it’s time to actually upload your app from Xcode. Do not proceed with this step until you’re confident that the app is free of bugs and it runs as intended. If the app doesn’t function, it won’t get approved for the App Store. 

For new apps, the version should be set to 1.0.0. 

Xcode 11 makes the publishing process really easy. In the past, lots of extra steps were required. But not most of the work now gets handled in a couple of clicks. 

Start by creating a full app archive. Go to your list of simulators in Xcode and click “Generic iOS Device” from the menu. 

Then select “Product” and “Archive.” This will prompt Xcode to bundle your app. Depending on the size, this could take quite a bit of time. 

Once this process is complete, just go to the “Archives” tab, and click “Distribute App” on the right side of your screen. Then select “iOS App Store” when it asks for your method of distribution.

![img](https://buildfire.com/wp-content/uploads/2022/05/Distribution-700x423.png)
You can view all of [Apple’s screenshot specifications here](https://help.apple.com/app-store-connect/#/devd274dd925). I also recommend reviewing this [API collection resource for app screenshots](https://developer.apple.com/documentation/appstoreconnectapi/app_metadata/app_screenshots) for more technical requirements.

### Step 5 — Upload the App Using Xcode

Now it’s time to actually upload your app from Xcode. Do not proceed with this step until you’re confident that the app is free of bugs and it runs as intended. If the app doesn’t function, it won’t get approved for the App Store. 

For new apps, the version should be set to 1.0.0. 

Xcode 11 makes the publishing process really easy. In the past, lots of extra steps were required. But not most of the work now gets handled in a couple of clicks. 

Start by creating a full app archive. Go to your list of simulators in Xcode and click “Generic iOS Device” from the menu. 

Then select “Product” and “Archive.” This will prompt Xcode to bundle your app. Depending on the size, this could take quite a bit of time. 

Once this process is complete, just go to the “Archives” tab, and click “Distribute App” on the right side of your screen. Then select “iOS App Store” when it asks for your method of distribution.

Xcode will go through a few steps to ensure you’re not trying to upload a broken app. If something is missing or there’s a problem, Xcode will likely stop the upload and ask you to add missing assets. 

You should see some type of confirmation on the screen when the upload is successful. 

** Step 6 — Submit the App for Review**

How to Submit Your App to the App Store
Create Your Apple ID
The first thing you need to do when submitting your app to the App Store is to create your Apple ID. This Apple ID will be used to access all the services provided by Apple.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2kyxu1qqfx6r3ly93rf9.png)

Enroll in the Apple Developer Program
The next step to submit your app to the App Store is to enroll in the Apple Developer Program. You can log in to the Apple Developer Program using your Apple ID.
Membership in the App Developer Program will provide the following benefits:

Tools and resources for app development and distribution
Access to beta software
Full suite of services with advanced features
App testing tools
Expert technical support
App analytics tools and advanced features
Sign in to App Store Connect
App Store Connect is a website where you can manage all the operations you want to perform with your app in the App Store. Sign in to App Store Connect using your Apple ID.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2jguustjamfjragthfxu.png)

Make Your App Ready for Submission
Before submitting your app to the App Store, you need to go through the app certification process. This process involves having your app reviewed by professionals based on the App Store Review Guidelines. Read this document carefully and make sure your app complies with the guidelines, as the reviewers will judge your app based on these policies.

In addition to the app store guidelines, make sure your app doesn't have any bugs. If the reviewer finds any errors in your app, he/she will reject it from entering the App Store. Therefore, testing is very necessary. Don't just test your app casually. Perform tests under abnormal conditions, such as low network, low storage space, older devices, etc. Test your app with the help of friends and family. TestFlight can help you invite testers and provide feedback before releasing your app to the App Store. It allows you to invite up to 10,000 testers using their email IDs.

Create App Store Listing Using App Store Connect
Follow these steps to create an App Store listing:

Step 1: Sign in to App Store Connect.

Step 2: From the App Store Connect Dashboard, select My Apps.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e0nakxt8droai1i5flfj.png)
Step 3: Now, click on the "+" sign at the top left corner and select "New App".



Step 4: Choose the platforms on which your app is available. Fill in all the additional information about your app such as name, language, bundle ID, SKU, and user access permissions. If you are unsure about any field, you can use the "?" symbol to learn more. Click Create when done.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eu9k4lpcrg8vc7cb131x.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/awzcmlojpc4at0eppgic.png)

Define content rights for your app.

Define age rating for your app.

Step 6: Now, select Pricing and Availability from the left panel. Define the pricing and other required details for your app.

Step 7: Next is App Privacy. Enter the privacy policy URL. Use an online privacy policy generator to help you with this.

Note: The guide continues with more steps not included here.

Step 8: Next, select "1.0 Prepare for Submission" from the left sidebar. Scroll down and choose how you want to release your app after it goes through the certification process:

Manual – Go to App Store Connect to release the app.
Automatic – Automatically release the app.
Specific Date – Schedule a specific release date for the app.
Version Release

Upload App Store Screenshots and Previews
You need to visually connect with users using images and videos. For this purpose, the App Store allows you to add previews and screenshots.

Previews are short videos from your app. Check the App Preview Specifications for more information.

Screenshots are images that illustrate the features of your app. Check the Screenshot Specifications for more information.

Make sure to follow the specifications provided by the App Store to minimize the chances of your app being rejected.

The App Store allows you to add previews and screenshots for 4 different screen sizes. You can add up to 3 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qqt78a2s6vkhhgf1bu7f.png)app previews and 10 screenshots per display.

App Screenshots

It asks us to provide app screenshots for various resolutions of iOS devices. If we don't have access to all these devices for taking screenshots, we can use the screenshot generation feature provided by AppUploader: https://www.applicationloader.net/

After completing the screenshots, scroll down, and you will be prompted to upload a build version:

Upload Build Version

However, we noticed that the official upload tool provided can only be installed on a Mac computer. Here, we will not use the recommended tool and instead continue using the AppUploader mentioned in the previous step to upload the IPA.

Switch to the AppUploader interface for uploading the IPA to the App Store. Click on "Upload new file" to bring up the following interface. Enter your Apple Developer account username and the dedicated upload password to upload the IPA file as shown in the image below:
Upload IPA

Note that the dedicated upload password here is not your developer login password but a specific password. The tutorial for setting up this dedicated password can be found in the upload popup interface provided by the appuploder; follow its instructions to set the dedicated password.

**Conclusion
**
Publishing an iOS app and going through the Apple review process might seem a bit intimidating, especially if you’ve never done this before. But if you create an app with BuildFire, we’ll handle the publishing process on your behalf. 

You’ll still need to create your own Google and Apple Developer accounts, but our team will handle the majority of the heavy lifting. So you won’t have to worry about most of the steps in this guide. 

If you’re still in the planning stages of your app project, request a consultation to see if BuildFire is the right partner to achieve your goals.