The 12-tester rule (read this before paying $25)
If you create a personal developer account, Google requires your app to run a closed test with at least 12 testers opted in continuously for 14 days before you can apply for production access. Not optional, not waivable. It exists to filter spam apps, and it means your realistic timeline from “account created” to “live on Play” is 3+ weeks, not 3 days.
Plan for it: recruit your 12 (friends, a Discord, r/AndroidClosedTesting communities exist precisely for this), start the closed test immediately, and use the 14 days to polish the listing. Organization accounts (with a D-U-N-S number) skip this requirement — worth it if you have a registered business.
Apple has no equivalent rule — one reason some solo developers now launch iOS first despite the higher fee.
1Developer account
Sign up at play.google.com/console: $25 one-time, identity verification (government ID for personal accounts — takes hours to days). Use an email you’ll keep; account transfers are annoying.
2Build an AAB
Play requires Android App Bundles (.aab), not APKs, targeting a current API level (Google ratchets the minimum annually).
Expo / React Native path (no Android Studio needed):
eas build --platform android
produces a signed AAB in the cloud. Let EAS manage your keystore — losing a self-managed keystore historically meant losing your app identity; also opt in to Play App Signing (default now), which makes Google the keeper of the final signing key.
Native path: Android Studio → Build → Generate Signed Bundle → AAB, release build type.
3Create the app + store listing
Play Console → Create app. Then the listing: title (30 chars, keywords matter), short description (80 chars — this is your hook), full description, screenshots (phone required; tablet recommended), feature graphic (1024×500 — required, unlike Apple), icon.
Two forms with teeth:
4Closed testing (the mandatory lap)
Upload the AAB to a closed testing track, add your 12+ testers by email list or Google Group, and send the opt-in link. Testers must install and stay opted in — 12 people for 14 continuous days. Check the tester count mid-window; if someone drops, the clock can stall. Use the window well: crash reports and pre-launch reports (Google auto-tests on real devices) live in the Console.
Submit via EAS instead of the web UI, if you prefer:
eas submit --platform android --track internal
5Apply for production
After the 14 days, the Console unlocks the production-access application: a short questionnaire about your testing and readiness. Approval typically takes a few days. Then promote your build to production, choose countries, and submit for review.
6Review and rollout
Play review in 2026: usually hours to ~3 days for new apps. Rejections come itemized (common: data-safety mismatches, broken login for reviewers — include demo credentials, intellectual-property flags on names/icons). Approved apps go live within hours.
Use staged rollout(e.g. 20% → 50% → 100%) for updates once you have real users — it’s the free insurance Apple doesn’t offer as flexibly.
Google Play vs App Store, publishing-wise
| Google Play | Apple App Store | |
|---|---|---|
| Fee | $25 once | $99/year |
| Mandatory pre-launch test | 12 testers × 14 days (personal accts) | None |
| Review speed | Hours–3 days | 1–3 days |
| Binary format | AAB | IPA (via EAS/Xcode) |
| Realistic first-launch timeline | ~3 weeks | ~1 week |
Launch both from one codebase: that’s the entire practical argument for React Native/Expo output — one project, eas build for each platform, two listings.
One codebase, both stores: generate your React Native app free at shipnative.dev — export, eas build, and start your 12-tester clock this week.