Preparing App Store Metadata in App Store Connect
Create the app record in App Store Connect, fill in the name, subtitle, description, keywords, and support URL, and upload screenshots for all required device sizes.
Preparing App Store Metadata in App Store Connect is a free React Native Academy lesson on CoddyKit — lesson 3 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the React Native Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
App Store Connect Overview
App Store Connect (appstoreconnect.apple.com) is Apple's portal for managing everything about your published app: metadata, builds, pricing, in-app purchases, TestFlight testers, and sales data. Before your app can go live, you must create an app record and fill in required metadata. Apple's review team checks this metadata alongside the binary — incomplete or misleading metadata is a common rejection reason.
Creating the App Record
Go to Apps > + > New App in App Store Connect. You'll need: the platform (iOS), the app name (max 30 characters, appears on the App Store), a primary language, the Bundle ID matching your registered App ID, and a unique SKU (an internal identifier for your records). The SKU is not shown publicly — a common choice is com.yourcompany.appname repeated or a date-based string.
// App record fields:
// - Platform: iOS
// - App Name: My Awesome App (max 30 chars, shown publicly)
// - Primary Language: English (U.S.)
// - Bundle ID: com.yourcompany.myapp (must match app.json)
// - SKU: com.yourcompany.myapp.v1 (internal, not shown publicly)
// - User Access: Limited access or Full access for team membersApp Name, Subtitle, and Description
The App Name (30 chars) and Subtitle (30 chars) appear prominently in search results and are indexed for App Store Search Optimization (ASO). Write them with relevant keywords. The Description (up to 4000 characters) appears on the app detail page — write the first few lines carefully since only those show before the 'More' button. You cannot change the App Name after submission without a new version.
// App Store metadata fields:
// App Name (30 chars):
// 'Recipe Planner - Meal Prep'
// Subtitle (30 chars, appears under name):
// 'Weekly Meal Prep Made Simple'
// Description (4000 chars):
// 'Organize your weekly meals, generate smart shopping lists...
// [First 2-3 sentences are critical — they show before "More"]
// What's New in This Version:
// 'Bug fixes and performance improvements.'
// (or describe your new features clearly)Keywords and Search Optimization
The Keywords field (100 characters total, comma-separated) is a hidden but powerful ASO lever. Do not repeat words already in your App Name — Apple indexes the name automatically. Use specific, relevant terms your target users search for. Avoid competitor names (policy violation) and overly generic terms. Update keywords with each new version as search trends change.
// Keywords field example (100 char limit, comma-separated):
// 'meal prep,weekly planner,grocery list,cooking,diet,nutrition,
// healthy eating,food tracker,calorie,shopping'
// Do NOT include:
// - Words already in App Name ('meal planner' is in the name)
// - Competitor names
// - Irrelevant terms to inflate impressions
// - 'best', 'free', 'top' (policy violation)Screenshots and Preview Videos
Screenshots are the most important visual element on your App Store listing — they are often what converts a visitor into a download. Apple requires screenshots for specific device sizes. At minimum provide screenshots for a 6.9-inch iPhone (covers all modern iPhones) and optionally an iPad if your app supports it. Screenshots can be composited marketing images with captions — they do not need to be raw device captures.
// Required screenshot sizes (as of 2025):
// iPhone:
// - 6.9 inch (1320 x 2868 px) - Required
// Covers iPhone 16 Pro Max, applies down to older sizes
// iPad (if app supports iPad):
// - 13-inch iPad Pro (2064 x 2752 px)
// - 12.9-inch iPad Pro (2048 x 2732 px) - legacy
// Optional but recommended:
// App Preview Video (up to 30 seconds, .mov)
// Shows in search results on supported devicesLocalization of Metadata
Localizing your App Store metadata into multiple languages dramatically increases your app's reach in non-English markets. In App Store Connect, click the language selector to add a new localization. Each locale has its own Name, Subtitle, Description, Keywords, and What's New fields. Screenshots can also be localized — show the app in the user's language for much higher conversion rates in local markets.
// App Store Connect localizations
// Each locale is independent — add under 'App Information'
// Primary: English (U.S.)
// Add:
// - French (France)
// - German (Germany)
// - Spanish (Mexico)
// - Japanese
// For each locale:
// - App Name: localized
// - Subtitle: localized
// - Description: localized
// - Keywords: localized (different keywords per locale!)
// - Screenshots: optional localized versionsPrivacy and Support URLs
Apple requires a Privacy Policy URL for all apps (and for apps targeting children or using sensitive data, it is mandatory). You also need a Support URL. A simple hosted privacy policy page is sufficient — there are generators online. The support URL can be your website's contact page or a dedicated support page. Both URLs must be live and accessible when you submit for review.
// Required URLs in App Store Connect > App Information:
// Marketing URL (optional):
// https://yourapp.com
// Support URL (required):
// https://yourapp.com/support
// Privacy Policy URL (required if app collects data):
// https://yourapp.com/privacy
// Both URLs must return HTTP 200 and contain
// actual content — Apple reviewers visit themPricing and Availability
Set your app's price tier under Pricing and Availability. Tier 0 is free. Higher tiers have fixed price points in each currency (Apple manages exchange rates). You can also restrict availability to specific countries — for example, launching in the US first before rolling out globally. Revenue from paid apps is split 70/30 in favor of the developer (85/15 after year one with Apple Small Business Program).
// Pricing options in App Store Connect:
// Tier 0: Free (no upfront cost)
// Tier 1: $0.99 / €0.99
// Tier 2: $1.99 / €1.99
// ...
// Tier 87: $999.99
// Free app with in-app purchases:
// Set price to Tier 0
// Add IAP products separately under:
// App Store Connect > My Apps > In-App Purchases
// Availability:
// All countries and regions <- recommended for launchApp Review Information
Apple reviewers test your app directly. Provide review notes if your app requires: a login (provide test credentials), access to external hardware, or special instructions to reach the reviewed feature. If your app has a gate behind a sign-up flow, Apple reviewers will use the credentials you provide — without them, the review fails with 'Could not evaluate your app' without ever testing the real functionality.
// App Review Information section in App Store Connect:
// Sign-In Required: Yes
// Demo Account:
// Username: reviewer@test.com
// Password: Review2025!
// Notes for Reviewer:
// 'Our app requires location access to show nearby restaurants.
// Please enable location when prompted to experience the core
// feature. The demo account has 3 pre-saved locations visible
// on the Home tab.'
// Attachment (optional): Add a video demonstrating the featureContent Rights and Export Compliance
Two legal questions must be answered before submission: Content Rights (do you own all the intellectual property in the app, or have rights to use it?) and Export Compliance (does the app use encryption beyond standard OS calls?). Most apps answer 'No' to encryption export beyond standard HTTPS (which is exempt). Setting ITSAppUsesNonExemptEncryption: false in Info.plist answers this automatically without a manual form each time.
// Answer export compliance in Info.plist to skip the form
// Add via config plugin or app.json infoPlist:
{
'expo': {
'ios': {
'infoPlist': {
'ITSAppUsesNonExemptEncryption': false
}
}
}
}
// This is correct for apps that only use:
// - HTTPS (SSL/TLS) for network calls
// - Standard iOS encryption APIs
// If you implement custom crypto, set to true and
// complete the Encryption Compliance documentationSelecting a Build for Review
After your EAS build uploads to App Store Connect (via TestFlight), you select that build for your App Store version. In App Store Connect, under your version's Build section, click the + button to select a build from TestFlight. Only processed builds (not still processing) appear. Once a build is selected and all metadata is complete, you can click Submit to App Review.
# Upload build to App Store Connect via EAS
eas submit --platform ios --latest
# Or submit a specific build ID:
eas submit --platform ios --id <build-id>
# EAS Submit uses credentials you set in eas.json:
# 'submit': {
# 'production': {
# 'ios': {
# 'appleId': 'you@example.com',
# 'ascAppId': '1234567890' <- from App Store Connect
# }
# }
# }Quick Check
Test your understanding of React Native Mobile Development concepts from this lesson.
Lesson Recap
In this lesson you learned: how to create an app record in App Store Connect with the required fields, how to write effective App Name, Subtitle, Description, and Keywords for ASO, and how to provide review notes with test credentials so Apple reviewers can access your app. You also saw how to handle export compliance and select a build for review. Next up we cover submitting for review and handling rejections.
Frequently asked questions
Is the “Preparing App Store Metadata in App Store Connect” lesson free?
Yes — the full text of “Preparing App Store Metadata in App Store Connect” is free to read here on the web, and the React Native Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the React Native Academy course, upgrade to CoddyKit PRO.
What will I learn in “Preparing App Store Metadata in App Store Connect”?
Create the app record in App Store Connect, fill in the name, subtitle, description, keywords, and support URL, and upload screenshots for all required device sizes. You practise React Native Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start React Native Academy?
No prior experience is required. React Native Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 3 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Preparing App Store Metadata in App Store Connect” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this React Native Academy lesson?
Yes. Every React Native Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Apple Developer Account Setup and Certificates
- Configuring Signing with EAS Build
- Preparing App Store Metadata in App Store Connect
- Submitting for Review and Responding to Rejections