Find complete deployment steps are in your project Building Your App
Deployment Phases
1
Pre-Deployment
- Run full test suite
- Fix all linter warnings
- Test on real devices
- Update legal documents
2
TestFlight Beta
- Archive build
- Upload to App Store Connect
- Add internal testers
- Gather feedback
3
App Store Submission
- Prepare metadata
- Create screenshots
- Submit for review
- Monitor status
4
Production Launch
- Configure production backends
- Monitor crashes
- Respond to reviews
- Plan updates
Pre-Deployment Checklist
Code Quality
Code Quality
- All tests pass (⌘U)
- No warnings in build
- Tested on real device
- Performance is smooth
- No crashes in common flows
Configuration
Configuration
- Real backends configured (not mock)
- API keys in
Config/Secrets.xcconfig - Bundle ID matches App Store Connect
- Version number set (e.g., 1.0.0)
- Build number set (start at 1)
Legal
Legal
- Privacy policy updated
- Terms of service updated
- Subscription terms updated
- Privacy policy URL works
- Terms URL works
Assets
Assets
- App icon (1024×1024)
- Screenshots for all sizes
- App description written
- Keywords added
- Support URL set
TestFlight Deployment
1. Archive Build
2. Validate Archive
3. Upload to App Store
4. Add Testers
Internal Testers (up to 100):- App Store Connect → TestFlight → Internal Testing
- Add team members
- They receive email invite
- Install via TestFlight app
- Create group: “Beta Testers”
- Add email addresses
- Requires beta review (1-2 days)
- Public link available
5. Test Thoroughly
- Sign up flow
- Chat functionality
- Subscription purchases (sandbox)
- Settings and preferences
- Performance on various devices
App Store Submission
1. Prepare Metadata
In App Store Connect:2. Create Screenshots
Required sizes:- 6.7” (iPhone 15 Pro Max): 1290 × 2796
- 6.5” (older Pro Max): 1284 × 2778
- 5.5” (older Plus): 1242 × 2208
- 12.9” iPad Pro: 2048 × 2732 (if supporting iPad)
- 4-10 screenshots per size
- Show key features
- Add text overlays
- First screenshot most important
3. Write Description
Template:4. Configure App Privacy
Answer privacy questionnaire: Data collected:- Contact Info: Email (for account)
- Identifiers: User ID (for backend)
- Usage Data: App interactions (if analytics)
- User Content: Chat messages
5. Submit for Review
Production Configuration
Backend Setup
- Supabase
- RevenueCat
- OpenRouter
- Use production Supabase project
- Verify Edge Function deployed
- Check RLS policies active
- Monitor API usage
Final Verification
Post-Launch
Monitor
- Crashlytics dashboard (if enabled)
- App Store Connect analytics
- RevenueCat subscription metrics
- Supabase API usage
- User reviews and ratings
Respond
- Reply to user reviews
- Fix critical bugs immediately
- Plan feature updates
- Gather user feedback
Update Regularly
Recommended cadence:- Bug fixes: As needed (1-3 days)
- Minor updates: Every 2-4 weeks
- Major features: Every 2-3 months
Complete Guide
View Complete Launch Checklist
Find complete deployment checklist in your project
Related Resources
Testing Guide
Run full test suite
Supabase Setup
Production backend
RevenueCat Setup
Production subscriptions
Building Guide
Complete customization
Troubleshooting
Archive fails
Archive fails
- Clean build (⌘⇧K)
- Check signing certificates
- Verify provisioning profiles
- Update Xcode if needed
App rejected
App rejected
- Read rejection carefully
- Fix specific issues mentioned
- Update metadata if needed
- Resubmit with explanation
Crashes in production
Crashes in production
- Check Crashlytics logs
- Reproduce locally
- Fix and submit hotfix
- Expedited review if critical
