A beginner-friendly checklist for teams shipping a first store release.
Your dev team said QA passed on Friday. On Monday the app still was not ready for the App Store because the installable build was pointing at test servers, not live ones, and nobody had tested the final version on a real phone.
If you are a founder, product owner, or mobile engineer shipping a first MVP (minimum viable product), you have probably felt this gap: feature complete is not store ready. Release gates are the checks between "coding finished" and uploading to App Store Connect (Apple) or Play Console (Google). Skip them and launch week turns into finger-pointing between mobile, backend, and whoever promised the date.
We run these gates with teams on mobile app development services before anyone opens store admin tools. They are separate from the store forms checklist in our Flutter App Store and Play Store submission checklist.
Plain terms (quick reference)
| Term | Plain meaning |
|---|---|
| Release build | The final installable app package customers (and store reviewers) will use, not the developer preview version |
| Staging vs production | Test servers vs live servers your real users should hit |
| QA | Quality assurance: structured testing before you call the app done |
| App Store Connect / Play Console | Apple's and Google's portals where you submit the app for review |
| TestFlight | Apple's channel for test installs before a public App Store listing |
Gate 1: Release build, not debug
- [ ] Automated build pipeline (CI) produces release installable packages (Android APK/AAB, iOS IPA) from a clean checkout
- [ ] App settings (build flavors, environment files, compile-time flags like
--dart-define) point at production server addresses, not test servers - [ ] App opens cleanly on physical phones and tablets, not only on simulators
- [ ] Code shrinking rules (ProGuard on Android, if used) verified so the app does not show a blank screen on launch
Developer preview builds hide problems. Store reviewers install the release build.
Gate 2: QA sign-off with store scenarios
QA should cover paths Apple and Google reviewers actually try:
- [ ] New users can sign up and log in without someone manually approving each account
- [ ] Core job (book, pay, submit, message) works end to end on live servers
- [ ] App behaves correctly when logged out and logged in
- [ ] Permission prompts (camera, photos, location) show clear, accurate text
- [ ] Slow or offline network does not trap users on endless loading screens
Sign-off means these pass on the release build with production servers, not only on test servers with shortcuts enabled.
Gate 3: Backend and server readiness
The app cannot pass release gates if the servers are not ready:
- [ ] Live server address configured and able to handle review-period traffic
- [ ] Login, session refresh, and error messages behave as the app expects
- [ ] Traffic limits will not block Apple or Google reviewer connections
- [ ] Support email and terms links inside the app load correctly
If login still hits test servers, wait on store submission. Reviewers treat broken core flows as grounds to reject the app.
Gate 4: Crash and stability bar
- [ ] Acceptable crash rate on internal testing or TestFlight (your team sets the bar)
- [ ] No known showstopper crashes on startup, checkout, or main navigation
- [ ] Crash and usage reporting enabled for production so launch day is observable
A green QA ticket with open showstopper bugs is not a pass.
Gate 5: Owner and marketing alignment
- [ ] Store description matches version 1 features only (no future roadmap promises)
- [ ] Screenshots match the current app screens
- [ ] Marketing knows launch means submit plus store review, not "code merged and marked done"
Misaligned promises create pressure that store review was never designed to absorb.
What happens after gates pass
Once these five gates are green, hand off to the store submission checklist: signing, privacy disclosures, data safety forms, and listing metadata. That work is paperwork-heavy; release gates are engineering-heavy. Both must pass.
If your team is stuck between "built" and "live" and stakeholders keep asking why the app is not in the store yet, the gap is usually unnamed phases, not slow developers. We mapped that journey for non-technical buyers in a plain-language guide: full delivery journey from idea to store launch.
Which gate blocked your last release: production settings, server readiness, or QA scope?












