The short version
- Enroll in the Apple Developer Program.
- Create the app record in App Store Connect.
- Build with a current SDK and upload from Xcode.
- Test with TestFlight.
- Prepare the product page.
- Answer the privacy, age rating and compliance questions.
- Set up in-app purchases, if you sell anything.
- Fill in the App Review information.
- Submit for review.
- Release.
1. Enroll in the Apple Developer Program
Membership costs 99 USD per year, with local prices in some regions, and fee waivers for eligible nonprofits, accredited schools and government bodies (Apple). You enroll as an individual or as an organisation, and the choice decides the seller name on your App Store page.
- Individual: an Apple Account with two-factor authentication, in your legal name. Your name appears as the seller.
- Organisation: a legal entity (not a trade name), a D-U-N-S Number, a public website on your own domain and a work email on that domain. The person enrolling needs the authority to sign contracts for the company.
If the app belongs to a company, enroll the company. Moving an app between accounts later is possible, but it is a separate process with its own criteria.
2. Create the app record
In App Store Connect, add a new app with its basic information: a name of 2 to 30 characters, a primary language, a bundle ID that matches your Xcode project, and an internal SKU. The bundle ID cannot change after you upload a build, so choose it carefully.
3. Build and upload
Apple sets a minimum SDK for every upload. Since 28 April 2026 that is the iOS 26 SDK; from April 2027 it is the iOS 27 SDK, with a deployment target of iOS 15 or later (Apple). Archive the app in Xcode and upload it to App Store Connect; once processed, the build appears in TestFlight.
4. Test with TestFlight
- Internal testers: up to 100 members of your team with an App Store Connect role. No review needed.
- External testers: up to 10,000 people, invited by email or a public link. The first build for external testing has to be approved by App Review for TestFlight.
- Feedback: testers send screenshots and crash reports from the TestFlight app, and you see them in App Store Connect.
Details are on Apple’s TestFlight page. Testing on real devices before you submit is the cheapest way to avoid a rejection under guideline 2.1.
5. Prepare the product page
The fields and their limits, from App Store Connect:
| Field | Limit | Note |
|---|---|---|
| Name | 30 characters | Distinctive, easy to spell, and hints at what the app does |
| Subtitle | 30 characters | Appears under the name everywhere on the App Store |
| Keywords | 100 bytes | Comma-separated; do not repeat your name |
| Promotional text | 170 characters | Can change at any time without a new version |
| Description | 4,000 characters | Plain text; the first sentence matters most |
| Screenshots | Up to 10 per size | At least one at each required size |
| App previews | Up to 3 | Up to 30 seconds each |
| Support URL | Required | Must lead to real contact information |
| Privacy policy URL | Required | Also linked inside the app |
Screenshot sizes have changed recently; check yours with our screenshot size checker, and count your characters with the App Store character counter. The optional new header and search assets are covered in creative assets.
6. Privacy, age rating and compliance
- App Privacy details, including what third-party SDKs in your app collect. They become the privacy label on your product page and are required for every submission.
- Age rating questionnaire. It now includes questions about social media capabilities, required since September 2026.
- Accessibility support, optional: VoiceOver, Larger Text, captions and so on, shown as an accessibility label on your page.
- Export compliance, about the encryption your app uses.
- EU trader status under the Digital Services Act, if you distribute in the EU.
7. In-app purchases
Before you can sell anything, the Paid Apps agreement, tax and banking details must be complete in App Store Connect. Each in-app purchase and subscription is configured there and submitted for review with the app version. Guideline 2.1(b) requires them to be complete, visible to the reviewer and working; if one cannot be found in the app, explain why in the review notes. For subscriptions, see our StoreKit 2 guide.
8. App Review information
- A contact the review team can reach, with an international phone number.
- A demo account, if the app needs a sign-in. It must not expire.
- Notes, up to 4,000 bytes: settings, test data and anything unusual, as described in Apple’s field reference.
9. Submit for review
Apple says it typically reviews at least 50% of submissions in under 24 hours and 90% in under 48 hours (App Review). If the app is rejected, the message in App Store Connect names the guideline. Fix it, reply if something was misunderstood, or appeal to the App Review Board. Our guide to App Store rejections covers the common ones.
10. Release
- Manual: the app waits for you to press release after approval.
- Automatic: it goes live as soon as it is approved.
- Automatic, no earlier than a date: approved early, released on your launch day.
- Phased release, for updates: the update rolls out over 7 days to people with automatic updates on.
After launch
- Ask for ratings with the system prompt, which can appear up to three times in 365 days (Apple).
- Respond to reviews in App Store Connect; the reviewer is notified and can update their review.
- Use promotional text for news, since it changes without a new version.
- Describe each update clearly in What’s New, as guideline 2.3.12 requires.
Related: Why apps get rejected · ASO checklist · App Store character counter