Ship a brand-new app to the App Store. The first submission has more steps than re-uploads — Bundle ID registration, app record creation, screenshots, age rating, App Privacy. ~2 hours of your time + 1–3 days of Apple's review.
Bundle ID is your app's unique identifier (e.g., com.yourname.yourapp) — used by Apple, by signing, and by every system that talks to your app.
developer.apple.com → Identifiers ↗ → + → App IDs → App. Fill in:
com.yourname.yourapp). Cannot be changed later.Make sure your Xcode project's Bundle Identifier (target → General → Identity) matches exactly.
App Store Connect → My Apps ↗ → + → New App. Fill in:
YOURAPP-001). Used in reports.Click Create. You're now on the app's detail page with a long list of fields to fill in.
Left sidebar: App Information. The fields:
Left sidebar: 1.0 Prepare for Submission. This is where most of the work is.
1.0 for the first submission.© 2026 Your Name.Required sizes (you only need one of these and Apple auto-scales):
Up to 10 screenshots per size. Full screenshot specs ↗.
Generate from Xcode Simulator (File → New Screenshot) or use:
The App Store icon is set in your Xcode project's asset catalog — the 1024×1024 PNG, no alpha slot. Apple pulls it from the build automatically; you don't upload separately.
Common mistake: alpha channel or transparency. PNG must be opaque. If your icon design has transparent corners, fill them with a solid background — Apple rounds the corners.
Icon generators that handle all sizes: appicon.co ↗, makeappicon.com ↗.
Left sidebar: App Privacy → Get Started. Apple asks what data your app collects, why, and whether it's linked to identity / used for tracking.
Categories include: Contact Info, Health & Fitness, Financial Info, Location, Sensitive Info, Identifiers, Usage Data, Diagnostics, etc.
Left sidebar → Pricing and Availability.
If your app has IAP / subscriptions, configure under In-App Purchases / Subscriptions in the sidebar. Each product needs a Product ID (string), display name, description, and price tier. Subscriptions get a "subscription group" for grouping mutually-exclusive plans.
This is its own non-trivial flow; Apple's IAP docs ↗ walks through it.
Same as the re-upload tutorial:
Wait for Apple's server-side processing (~5–30 min). New build appears in App Store Connect → TestFlight tab.
Full flow: Re-upload an iOS build to TestFlight.
Before submitting to the App Store, ship the build through TestFlight first. You catch your own bugs; a handful of testers catch the rest.
App Store Connect → TestFlight tab → enable for internal testers (up to 100 from your team, no review needed). 1–2 days of beta testing eliminates 80% of the bugs that cause App Store rejections.
Back on 1.0 Prepare for Submission: scroll to Build. Click + (Add Build) and pick the build you uploaded.
Scroll to App Review Information. Fill in:
Version Release section — pick one:
Top-right: Add for Review button (becomes active once every required field is filled). Click. Then Submit to App Review.
Status: Waiting for Review → In Review → Pending Developer Release (or Ready for Sale if auto).
Timing:
If rejected, you'll find the message in Resolution Center (top nav of your app's App Store Connect page). Reply with a fix and resubmit.
Full ruleset: App Store Review Guidelines ↗.