Tutorials / Native Mac IDE / First-time iOS App Store submission
📝 Written ● Intermediate Updated 2026-05-13

First-time iOS App Store submission

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.

What you need

0
  • A Mac with XcodeXcode on Mac App Store ↗
  • Apple Developer Program membership — $99/year. Enroll ↗. Takes 24–48 hours to be approved for new accounts.
  • A working iOS app — runs on a real device, not just the simulator.
  • Marketing materials — app icon (1024×1024), screenshots, description, privacy policy URL.

Register your Bundle ID

1

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:

  • Description — internal name; whatever you want.
  • Bundle ID — Explicit, reverse-domain (com.yourname.yourapp). Cannot be changed later.
  • Capabilities — check anything your app uses (Push Notifications, iCloud, Sign In with Apple, etc.). Can edit later.

Make sure your Xcode project's Bundle Identifier (target → General → Identity) matches exactly.

Create the App Store Connect record

2

App Store Connect → My Apps ↗+ → New App. Fill in:

  • Platforms — iOS (check macOS / tvOS too if applicable).
  • Name — what users see in the App Store. Max 30 chars. Subtitle (max 30 chars) is separate.
  • Primary Language — your default localization.
  • Bundle ID — pick the one you just registered.
  • SKU — internal; you make this up (e.g., YOURAPP-001). Used in reports.
  • User Access — Full or Limited; for solo devs, Full.

Click Create. You're now on the app's detail page with a long list of fields to fill in.

Fill in the app information

3

Left sidebar: App Information. The fields:

  • Subtitle — 30 chars, shown below the app name. Critical for SEO.
  • Privacy Policy URL — required, must be live. Generator if you don't have one ↗.
  • Category — Primary + optional Secondary. Affects browsing discovery.
  • Content Rights — confirm you have rights to all content.
  • Age Rating — answer the questionnaire. Most utility apps end at 4+; anything with user-generated content jumps to 17+.

Create version 1.0

4

Left sidebar: 1.0 Prepare for Submission. This is where most of the work is.

  • Promotional Text (170 chars, editable any time without resubmission) — for time-sensitive blurbs.
  • Description (max 4000 chars) — full marketing description. Top 3 lines matter most; users see those before "more."
  • Keywords (max 100 chars total, comma-separated, no spaces) — search ASO. Don't include your app name or category — those are auto-indexed.
  • Support URL — required, live.
  • Marketing URL — optional product page.
  • Version1.0 for the first submission.
  • Copyright — e.g., © 2026 Your Name.

Upload screenshots

5

Required sizes (you only need one of these and Apple auto-scales):

  • iPhone 6.7" or 6.9" (most recent iPhone Pro Max) — 1290×2796 or 1320×2868. Required.
  • iPhone 5.5" (older devices) — 1242×2208. Strongly recommended for broader compatibility.
  • iPad Pro 12.9" — 2048×2732. Required only if you ship to iPad.

Up to 10 screenshots per size. Full screenshot specs ↗.

Generate from Xcode Simulator (File → New Screenshot) or use:

Upload the app icon

6

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 ↗.

Fill in the App Privacy form

7

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.

  • Be honest. Under-disclosing is the most common reason for rejection at this step.
  • For each data type: pick linked to user or not linked, and tracking or not tracking.
  • If you use any analytics SDK (PostHog, Mixpanel, Firebase Analytics) — that's "Usage Data, Diagnostics," likely linked, and possibly tracking.

App Privacy docs ↗.

Set pricing & availability

8

Left sidebar → Pricing and Availability.

  • Price — Free or a tier ($0.99 through $999.99). Can change later (with caveats for paid → free transitions).
  • Availability — by country/region. "All territories" is the default and usually right unless you have legal reasons to restrict.
  • Distribution methods — usually just App Store; can also pick Volume Purchase Program or pre-order if applicable.

(Optional) Set up in-app purchases

9

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.

Archive + upload your build

10

Same as the re-upload tutorial:

  • Xcode → destination: Any iOS Device (arm64).
  • Menu → Product → Archive.
  • In Organizer → Validate App → fix any issues → Distribute App → App Store Connect → Upload.

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.

(Recommended) TestFlight first

11

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.

Attach the build to your App Store release

12

Back on 1.0 Prepare for Submission: scroll to Build. Click + (Add Build) and pick the build you uploaded.

Add reviewer information

13

Scroll to App Review Information. Fill in:

  • Contact info — name, phone, email for the reviewer.
  • Demo Account — if your app requires sign-in, give the reviewer a username + password. The most common rejection reason is "couldn't sign in to test." A test account avoids this entirely.
  • Notes — anything Apple's reviewer needs to know. "To test the premium feature, tap Settings → Upgrade and use sandbox card 4242 4242 4242 4242."
  • Attachments — optional; for video walkthroughs of complex flows.

Pick release strategy + submit

14

Version Release section — pick one:

  • Manually release — after approval, you click a button to launch. Right for coordinated launches.
  • Automatically release — goes live the moment Apple approves. Common.
  • Phased release — 7-day gradual rollout. Right if you want safety margins.

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).

The review window

15

Timing:

  • 24–48 hours typical (per Apple's published timing ↗).
  • 3–7 days for first submissions or content-heavy apps.
  • Up to 2 weeks if your app raises edge-case flags.

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.

Most common rejection reasons (first submissions)

16
  • Guideline 2.1 – App Completeness — couldn't sign in, demo account didn't work, app crashed on launch, blank screens.
  • Guideline 5.1.1 – Privacy — App Privacy form doesn't match what your app actually does. Reviewers test this by intercepting network traffic.
  • Guideline 4.0 – Design — looks like an iPhone web wrapper, not a native iOS app. Use UIKit/SwiftUI patterns, not raw web views.
  • Guideline 3.1.1 – IAP — using something other than IAP to sell digital goods, or directing users to external payment sites.
  • Missing required content — no app icon, broken privacy policy URL, screenshots from a different app.

Full ruleset: App Store Review Guidelines ↗.

Read the Guidelines once before submitting. Most rejections come from one of 5–6 common guidelines. Twenty minutes reading the Guidelines ↗ saves you a week of rejection loops.

After approval

17
  • Your app appears in the App Store within 1–24 hours of approval (Apple's CDN propagation).
  • Future updates use the simpler re-upload flow — most of these metadata steps don't repeat.
  • Watch downloads + ratings in App Store Connect Analytics; crash rates in Xcode Organizer.
  • Respond to reviews in App Store Connect → Ratings and Reviews.

Official references

What's next