Skip to content

App Store Submission Checklist for First-Time Developers

Submitting your first iOS app to the App Store feels like preparing for a bureaucratic exam. I spent hours gathering materials, only to realize I was missing critical items. Here’s the complete checklist I wish I had before starting.

The Submission Reality

When I submitted my first app, I expected technical challenges. Instead, I hit a wall of paperwork: screenshots in exact dimensions, privacy policies, age ratings, and metadata requirements I hadn’t prepared for.

The App Store submission process is 80% preparation, 20% execution. Apple rejects about 40% of first submissions - not because the apps don’t work, but because developers skip required items or provide incomplete information.

This checklist covers everything you need to get approved on your first attempt.

Pre-Submission Checklist

Before you even log into App Store Connect, gather these items:

1. Screenshots (Required)

You must provide screenshots for every device family you support. Apple is strict about dimensions - even one pixel off causes rejection.

Required Dimensions:

DeviceResolution (px)Notes
iPhone 6.7”1290 x 2796iPhone 14 Pro Max and later
iPhone 6.5”1242 x 2688iPhone 11 Pro Max, XS Max
iPhone 5.5”1242 x 2208iPhone 8 Plus, 7 Plus, 6s Plus
iPad Pro 12.9”2048 x 27323rd gen and later
iPad Pro 11”1668 x 2388All generations

Screenshot Tips:

  • You need at least 1 screenshot per device family
  • Maximum 10 screenshots per device
  • Use PNG or JPEG format
  • Portrait orientation required for iPhone
  • Show actual app screens, not mockups
  • Include your best screens first - they appear in search results

2. App Metadata

Prepare these text assets before starting:

App Name (30 characters max):

  • Must match your app’s display name
  • Avoid trademarked terms
  • No price information or “free”

Subtitle (30 characters max):

  • Briefly explain what your app does
  • Don’t repeat the app name

Keywords (100 characters max):

  • Comma-separated, no spaces after commas
  • Don’t repeat words from title/subtitle
  • Think about what users search for

App Description (4000 characters max):

  • First sentence is crucial - it appears in search
  • Include key features and use cases
  • Mention any subscription requirements upfront

3. Age Rating Questionnaire

Apple requires a content rating assessment. Answer honestly:

Content Categories to Assess:
- Violence (Realistic, Fantasy, Cartoon)
- Sexual Content (Nudity, Sexual Situations)
- Profanity
- Drugs/Alcohol/Tobacco
- Gambling
- User-Generated Content

Most utility apps receive a 4+ rating. Apps with social features often get 12+ or 17+.

4. Privacy Policy (Mandatory)

Every app must have a privacy policy URL. This isn’t optional.

Your privacy policy must cover:

  • What data you collect
  • How you use the data
  • Whether you share data with third parties
  • How users can request data deletion
  • Contact information for privacy questions

Where to host it:

  • Your own website
  • GitHub Pages (free)
  • Dedicated privacy policy services

5. Privacy Nutrition Labels

Apple requires you to disclose all data collection in App Store Connect. This appears as “App Privacy” on your product page.

Data Types to Declare:

CategoryExamples
Contact InfoEmail, name, phone number
Health & FitnessHealth data, fitness records
Financial InfoPayment info, credit history
LocationPrecise location, coarse location
Sensitive InfoRace, religion, sexual orientation
ContactsUser’s contacts list
User ContentEmails, photos, videos
Browsing HistoryWebsites visited
Search HistorySearch queries
IdentifiersDevice ID, advertising ID
PurchasesPurchase history
Usage DataCrash data, diagnostics
DiagnosticsCrash logs, performance data

For each data type, indicate:

  • Whether it’s collected
  • Whether it’s linked to the user
  • Whether it’s used for tracking

6. App Review Notes

This is your chance to communicate with reviewers. If your app requires login, provide demo credentials.

Include in review notes:

Demo Account:
- Password: Demo123!
Special Instructions:
- The app requires location permission for [specific feature]
- To test in-app purchase, use Sandbox testing
- Any features that might seem confusing

What to include:

  • Demo account credentials (if login required)
  • Explanation of any unusual features
  • Instructions for accessing hidden features
  • Video link demonstrating complex flows

7. Technical Requirements

Certificates & Profiles:

Required:
[ ] Apple Developer Program membership ($99/year)
[ ] Distribution certificate in Keychain
[ ] App Store provisioning profile
[ ] Correct bundle ID matching App Store Connect

Build Requirements:

  • Built with Xcode (latest version recommended)
  • Valid provisioning profile
  • Correct version number and build number
  • Archive exported for App Store distribution

Common Rejection Reasons

Avoid these mistakes that cause first-submission rejections:

ReasonHow to Prevent
Missing Privacy PolicyCreate and host before submitting
Incomplete Privacy LabelsReview all data collection thoroughly
Crashes on LaunchTest on real devices, check crash logs
Broken LinksVerify all URLs work
Login Required, No DemoAlways provide test credentials
Screenshots Don’t Match AppUpdate screenshots after any UI changes
Misleading DescriptionBe accurate about app capabilities

Most Common First-Time Mistakes:

  1. Forgetting test credentials - If your app has login, reviewers can’t test without them
  2. Outdated screenshots - Screenshots must match the submitted build exactly
  3. Vague privacy labels - Apple will reject if your labels seem incomplete
  4. Broken support URL - Verify every link you provide

Submission Timeline

Set realistic expectations for the process:

PhaseDurationNotes
Preparation1-2 daysGather all materials
Privacy policy creation2-4 hoursWrite and host
App Store Connect setup2-4 hoursFill in all metadata
Build upload30-60 minutesVia Xcode or Transporter
First submission1-2 hoursIncluding all uploads
Apple review24-48 hoursTypically, can be longer
Rejection fix and resubmit+24-48 hoursPer rejection cycle

Total expected time: 4-7 days for first approval (assuming no rejections).

Step-by-Step Submission Process

Step 1: Create App Record

  1. Log into App Store Connect
  2. Click “My Apps” > ”+” > “New App”
  3. Fill in:
    • Platform (iOS)
    • App name (must be unique)
    • Primary language
    • Bundle ID (from Xcode)
    • SKU (internal identifier)

Step 2: Fill App Information

Navigate through each section:

[ ] App Information
- Category (primary and secondary)
- Content rights declaration
- Age rating questionnaire
[ ] Pricing and Availability
- Price tier
- Available regions
[ ] App Privacy
- Data types collected
- Tracking disclosures
- Privacy policy URL

Step 3: Upload Build

  1. Archive in Xcode (Product > Archive)
  2. Distribute App > App Store Connect
  3. Upload and wait for processing (15-30 minutes)
  4. Select build in App Store Connect

Step 4: Submit for Review

  1. Complete all required fields
  2. Answer export compliance questions
  3. Click “Submit for Review”
  4. Confirm submission

Step 5: Monitor Status

Possible Statuses:
- Waiting for Review (queued)
- In Review (being examined)
- Pending Developer Release (approved, waiting for you)
- Pending Apple Release (approved, waiting for date)
- Ready for Sale (live!)
- Rejected (fix and resubmit)

Quick Reference: Final Pre-Submit Checklist

Before hitting submit, verify:

App Store Connect:
[ ] App name entered and unique
[ ] All screenshots uploaded (correct dimensions)
[ ] App description written
[ ] Keywords added (100 chars max)
[ ] Support URL working
[ ] Privacy policy URL working
[ ] Age rating questionnaire completed
[ ] Privacy labels declared
[ ] App review notes with demo credentials
[ ] Build uploaded and selected
Technical:
[ ] Bundle ID matches App Store Connect
[ ] Version number correct
[ ] Build archived from Release configuration
[ ] Provisioning profile valid
[ ] App doesn't crash on launch
[ ] All advertised features work

After Submission

If approved: Your app goes live within hours (or on your chosen release date).

If rejected: Don’t panic. Read the resolution center message carefully. Common fixes take 1-2 hours.

Resubmission tips:

  • Address every point in the rejection message
  • Add a note explaining what you fixed
  • Respond in the resolution center, not by email

Resources

Final Words + More Resources

My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me

Here are also the most important links from this article along with some further resources that will help you in this scope:

Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!

Comments