How to Publish an App on the App Store: Step by Step
Last updated
Your app works, your testers are happy, and now it has to go on the App Store. The steps are not hard, but there are a lot of them, and a few have to happen days before you press submit. This guide lists them in the order you will meet them, for a small team publishing an iPhone app. Apple's requirements below come from its own pages as of 26 February 2026.
Shipping on Android too? The Google Play version of this guide is How to Publish an App on Google Play: Step by Step.
The short version
- Join the Apple Developer Program and sign the agreements in App Store Connect.
- Create the app record and upload a build made with a current SDK.
- Fill in the product page: name, icon, description, screenshots, keywords.
- Complete the privacy label, privacy policy URL, age rating and export compliance answers.
- Submit to App Review, then choose how to release.
1. Membership and agreements
You need a paid Apple Developer Program membership to distribute. If you are enrolling a company, start well ahead: you need a D-U-N-S Number, and that alone can take a week or more. Our guides to the Apple Developer Program and D-U-N-S Numbers cover both.
Then check the Business section of App Store Connect. As of 26 February 2026, Apple's help page Add a new app says you cannot add an app until the Account Holder signs the latest agreement there. If you will sell anything, the Account Holder also accepts the Paid Apps agreement. A small team that sells digital goods should look at the App Store Small Business Program at the same time.
2. The app record
Every app needs a record in App Store Connect before you can upload a build to it. In Apps, click the add button, choose New App, select the platforms and enter the app's details, including the bundle ID you registered for it. Apple's help notes that an app name can be used by one app per localization, so if the name you want is taken you may need a different one or a trademark claim. Under User Access you can limit which team members see the app.
Once created, the app's status is Prepare for Submission.
3. A build made with a current SDK
Upload your build from Xcode or Xcode Cloud. As of 26 February 2026, Apple's submitting page says that starting April 28, 2026, iOS and iPadOS apps uploaded to App Store Connect must be built with the iOS and iPadOS 26 SDK or later, with matching rules for tvOS, visionOS and watchOS. If you are publishing in the spring, build with the current Xcode now.
Test the build you will submit, not one like it. TestFlight is the easy way; see our TestFlight guide. If the build shows Missing Compliance, answer the encryption questions, or add the Info.plist key described in our Missing Compliance guide.
4. The product page
Apple's submitting page asks you to have your app's name, icon, description, screenshots, app previews and keywords ready, along with the subtitle and promotional text. A few specifics, as of 26 February 2026:
- Screenshots. Apple's screenshot specifications say you upload one to ten screenshots, in .jpeg, .jpg or .png. If your app runs on iPhone, you need 6.9-inch screenshots, or 6.5-inch ones if you do not provide 6.9-inch; if it runs on iPad, you need iPad screenshots too. Our screenshot sizes guide has the pixel dimensions.
- Icon. The App Store icon comes from the app icon in your build, not from a separate upload. See app icon sizes.
- Description and keywords. Write the description for people, not for search. Lead with what the app does in one sentence.
5. Privacy, age rating and compliance
The privacy label
As of 26 February 2026, Apple's App privacy details page says you must describe your app's privacy practices in App Store Connect, including those of third-party partners whose code you include, before you can submit a new app or an update. "Third-party partners" includes third-party SDKs and other outside vendors whose code you add. You also need the URL of a publicly accessible privacy policy.
Go through every SDK in your app and list what it sends off the device. Apple's page sets out narrow criteria under which some data is optional to disclose, and gives optional feedback forms as one example of data that may meet them. Read all the criteria before you rely on that; data must meet every one of them.
The age rating
Apple has moved to a more detailed age rating system. As of 26 February 2026, Apple's upcoming requirements page says developers had to answer the updated age rating questions by January 31, 2026 to avoid interruptions when submitting updates, and Apple's age ratings reference lists ratings of 4+, 9+, 13+, 16+ and 18+. For a new app you answer the questionnaire in the App Information section.
Export compliance
App Store Connect asks about encryption for each version. If you set ITSAppUsesNonExemptEncryption in your Info.plist, it stops asking.
6. Submit for review
As of 26 February 2026, Apple's help page Submit for review describes the flow:
- Open the app version in App Store Connect and check the right build is selected.
- Click Add for Review. The status becomes Ready for Review.
- Add any other items, such as In-App Events, to the same submission.
- Click Submit to App Review. The status becomes Waiting for Review, then In Review once a reviewer picks it up.
Before you submit, read the App Review Guidelines. As of 26 February 2026 they ask for an active demo account or a fully featured demo mode if your app has account-based features, and for a back end that is switched on. Add notes for anything that is not obvious. Our guide to the review guidelines walks through them, and App Store review time covers how long to allow.
7. Release
When the app is approved you decide when it goes live. For updates, a phased release spreads the rollout over several days, and good release notes tell people what changed.
How FeedbackKit fits in
Launch day is when you start hearing from strangers. Without a place inside the app to send ideas, many of them will write a review instead, and a feature request in a one-star review helps nobody. Give them a better door before you submit.
FeedbackKit adds a request board to your app: users post ideas, vote and comment without leaving it. There are SwiftUI views for iPhone, iPad and Mac (Swift docs), Jetpack Compose for Android (Kotlin docs), and SDKs for Flutter and React Native.
While you are filling in the privacy label, include FeedbackKit like any other SDK. It sends a user identifier, the requests, votes and comments people post, an email address when a user enters one or your app passes one, an MRR figure if your app passes one, and, unless you switch it off, a record of which feedback screens were opened. Declare what applies to your app; the Swift SDK also ships a privacy manifest you can check your answers against. Here is how collecting requests looks in FeedbackKit, with sample data from a fictional hiking app:
Feedback from launch day
Publishing is a checklist; listening is a habit. Start free and have your feedback board live from version 1.0.