Chapter 16: App Store Readiness
Your app is on TestFlight. Now let's prepare it for the App Store.
Your app is already in testers' hands via TestFlight. This chapter covers everything Apple requires before you can submit to the actual App Store — metadata, privacy policy, screenshots, and descriptions. None of this is needed for TestFlight, so treat this chapter as optional until you're ready to go public.
What You'll Do
- Fill in app metadata (name, subtitle, category, age rating)
- Create and host a privacy policy
- Complete Apple's App Privacy questionnaire
- Capture and upload screenshots
- Write an App Store description and keywords
Step 1: App Information
In App Store Connect, select your app and go to the App Information section.
App Name and Subtitle
| Field | Value | Notes |
|---|---|---|
| Name | GratitudeTree | 30 characters max. Must be unique on the App Store |
| Subtitle | Daily Gratitude Journal | 30 characters max. Appears below the name in search |
Category
| Field | Value |
|---|---|
| Primary Category | Lifestyle |
| Secondary Category | Health & Fitness (optional) |
Content Rights
Select "This app does not contain, show, or access third-party content" (unless you've added content from other sources).
Age Rating
Click Edit next to Age Rating and answer the questionnaire. For GratitudeTree:
- No violence, gambling, horror, etc.
- The result should be 4+ (suitable for all ages)
Step 2: Privacy Policy
Apple requires a privacy policy URL for all apps submitted to the App Store.
$ claude "I need a simple privacy policy for my iOS journal app called GratitudeTree. It u..."Where to host your privacy policy
Pick the simplest option:
- Notion — Write the policy → Share → Copy public link
- Google Docs — Write it → Share → Anyone with the link → Copy link
- Any free website host — A simple HTML page works fine
Paste the URL into the Privacy Policy URL field in App Store Connect.
Step 3: App Privacy (Data Collection)
Apple's App Privacy section asks what data your app collects. Click Get Started and answer honestly:
Data types GratitudeTree collects
| Data Type | Collected? | Purpose |
|---|---|---|
| Email Address | Yes | Account registration (Firebase Auth) |
| Photos | Yes | User-uploaded journal photos |
| Other User Content | Yes | Journal text entries |
For each data type, specify:
- Linked to identity? Yes (entries are tied to the user's account)
- Used for tracking? No
- Purpose: App Functionality
Data types GratitudeTree does NOT collect
- No analytics data
- No location data
- No contacts, health, or financial data
- No third-party advertising data
- No browsing history
Step 4: Prepare Screenshots
Apple requires screenshots for the App Store listing.
Required screenshot sizes
| Device | Resolution | Required? |
|---|---|---|
| iPhone 6.7" (iPhone 15 Pro Max) | 1290 × 2796 | Yes |
| iPhone 6.5" (iPhone 14 Plus) | 1284 × 2778 | Recommended |
| iPhone 5.5" (iPhone 8 Plus) | 1242 × 2208 | Only if supporting older devices |
How to capture screenshots
Option A: Simulator screenshots
- Run the app in the Simulator on an iPhone 15 Pro Max
- Navigate to the screen you want
- Press
Cmd + Sto save a screenshot to your Desktop - Repeat for 3-5 key screens
Option B: Physical device screenshots
- On your iPhone, navigate to the screen
- Press Side Button + Volume Up simultaneously
- Transfer photos to your Mac via AirDrop
Recommended screenshots (in order)
- Feed — showing a few entries
- Create — the entry creation screen
- Shake reveal — the random memory card
- Profile — streak and stats
- Login — the clean auth screen
Upload screenshots
In App Store Connect → your app → App Store tab → scroll to Screenshots:
- Select the device size
- Drag and drop your screenshots
- Reorder them (first screenshot is most important — it's what users see first)
Step 5: Description and Keywords
Under the App Store tab, fill in the version information.
Description
Write a compelling app description (up to 4,000 characters):
$ claude "Write an App Store description for GratitudeTree — a daily gratitude journal app..."Keywords
Keywords help users find your app in search. You get 100 characters total, separated by commas:
gratitude,journal,diary,mindfulness,daily,reflection,wellness,mental health,habit,streak
What's New
For version 1.0, write something simple:
Initial release! Start your gratitude journaling practice today.
Support URL
You need a URL where users can get help. Options:
- A contact email on a webpage
- The same page as your privacy policy with a "Contact" section
- Any simple webpage with your email address
Checkpoint
Your app should now:
- App name, subtitle, and category are filled in
- An age rating questionnaire is completed (4+)
- A privacy policy URL is provided
- App Privacy data collection details are filled in
- At least 3 screenshots are uploaded
- A description and keywords are drafted
- A support URL is provided
Part 6 Complete!
Your app is fully prepared for App Store submission. Here's everything Part 6 covered:
| Step | Chapter |
|---|---|
| Apple Developer Account setup | Chapter 14 |
| Build, upload, and test via TestFlight | Chapter 15 |
| App Store metadata and submission readiness | Chapter 16 |
In Part 7, we'll cover the update cycle (how to ship improvements) and the final step — submitting to the App Store.
Follow @parvsondhi for build threads, tips, and updates on this tutorial.