SubmissionSubmission checklist
Use this checklist before submitting to the App Store and Google Play.
Prerequisites
- [ ] Apple Developer account ($99/year) created and active
- [ ] Google Play Developer account ($25 one-time) created and active
- [ ] App Store Connect app record created
- [ ] Google Play Console app created
- [ ] App builds successfully for production
- [ ] All environment variables configured
- [ ] Privacy policy URL ready (required if collecting user data)
Assets
iOS
- [ ] App icon: 1024×1024px (PNG, no transparency)
- [ ] Screenshots for iPhone 6.7" (1290×2796px) — minimum 1, recommended 3–10
- [ ] Screenshots for iPhone 6.5" (1242×2688px) — if supporting
- [ ] Screenshots for iPhone 5.5" (1242×2208px) — if supporting
- [ ] Screenshots for iPad Pro 12.9" (2048×2732px) — if supporting
- [ ] Screenshots for iPad Pro 11" (1668×2388px) — if supporting
- [ ] App preview video (optional): MP4/MOV, 15–30 seconds
Android
- [ ] App icon: 512×512px (PNG, no transparency)
- [ ] Feature graphic: 1024×500px (PNG/JPG)
- [ ] Phone screenshots: Minimum 2, maximum 8 (1080×1920px or 1920×1080px)
- [ ] Tablet screenshots (7" and 10"): Optional, same requirements
- [ ] TV screenshots: Optional if supporting Android TV
- [ ] App preview video (optional): MP4, 30 seconds–2 minutes
Metadata
iOS (App Store Connect)
- [ ] App name (30 characters max)
- [ ] Subtitle (30 characters max, optional)
- [ ] Description (4000 characters max)
- [ ] Keywords (100 characters max, comma-separated)
- [ ] Support URL
- [ ] Privacy Policy URL (required if collecting user data)
- [ ] Promotional text (170 characters, optional)
- [ ] Marketing URL (optional)
- [ ] Category: Primary selected
- [ ] Category: Secondary selected (optional)
Android (Google Play Console)
- [ ] App name (50 characters max)
- [ ] Short description (80 characters max)
- [ ] Full description (4000 characters max)
- [ ] Privacy Policy URL (required if collecting user data)
- [ ] Category: Primary selected
- [ ] Content rating questionnaire completed
- [ ] Contact email address (publicly visible)
App configuration
- [ ] App icon set in
app.config.ts→iconfield - [ ] App name set in
app.config.ts→namefield - [ ] Bundle identifier/package name configured
- [ ] Version number set correctly
- [ ] Build number incremented
- [ ] App signing configured (iOS: certificates, Android: keystore)
Testing
- [ ] App tested on real iOS device
- [ ] App tested on real Android device
- [ ] All features working as expected
- [ ] No crashes or critical bugs
- [ ] Performance acceptable
- [ ] App works offline (if required)
- [ ] In-app purchases tested (if applicable)
- [ ] Analytics tracking verified (if applicable)
Store-specific requirements
iOS
- [ ] App complies with App Store Review Guidelines
- [ ] Age rating configured
- [ ] Export compliance information completed (if applicable)
- [ ] App Store Connect agreements accepted
- [ ] Pricing and availability set
- [ ] In-app purchases configured (if applicable)
- [ ] App Store Connect API access set up (if using automated submission)
Android
- [ ] App complies with Google Play Developer Policy
- [ ] Content rating questionnaire completed
- [ ] Target audience and content set
- [ ] Data safety section completed
- [ ] Store listing complete in all required languages
- [ ] Pricing and distribution set
- [ ] In-app products configured (if applicable)
Legal & compliance
- [ ] Privacy policy published and accessible
- [ ] Terms of service published (if applicable)
- [ ] Data collection practices disclosed
- [ ] Third-party SDKs acknowledged (if required)
- [ ] Export compliance reviewed (iOS)
- [ ] GDPR compliance (if applicable to EU users)
- [ ] COPPA compliance (if targeting children)
Pre-submission
- [ ] All assets uploaded to respective stores
- [ ] Metadata reviewed for typos and accuracy
- [ ] Screenshots show actual app functionality
- [ ] App description is clear and compelling
- [ ] Keywords optimized for discoverability
- [ ] Support contact information correct
- [ ] App tested in TestFlight (iOS) or Internal Testing (Android)
- [ ] Beta testers feedback addressed (if applicable)
Final checks
- [ ] Production build created and uploaded
- [ ] Build processing completed (iOS)
- [ ] Build reviewed and approved (Android)
- [ ] All required information fields completed
- [ ] Ready for review submission
- [ ] Submission scheduled (if not immediate)
