DEV Community

Cover image for What I Fix in My Android Build Before Starting a 14-Day Google Play Closed Test
Praveen Kumar
Praveen Kumar

Posted on Originally published at Medium

What I Fix in My Android Build Before Starting a 14-Day Google Play Closed Test

The 14-day clock in Google Play closed testing doesn't care whether your build is ready. It starts when testers opt in, and every bug they hit after that costs you goodwill you'll need on day 9.

So I treat the day before the closed test like a release day. Not a full mobile app testing cycle, just a short preflight that catches the things testers would otherwise find for me. This is that list, in the order I do it.

Quick version of the rule first: if your personal developer account was created after November 13, 2023, you need at least 12 testers opted in to a closed test for 14 continuous days before you can apply for production access. Meeting it lets you apply. Google still decides.

1. Push the exact build to internal testing first

Internal testing is the cheapest place to find out your AAB is broken. Builds there reach testers fast, and I'm the only tester that matters at this stage.

What I check on my own phone, installed from the Play Store link and not from Android Studio:

  • The app installs from Play, not just via adb install. Signing and Play App Signing problems show up here.
  • The version name on the About screen matches what I uploaded. With more than one build flavor it's easy to upload the wrong one, and this is the only check that catches it.
  • R8/ProGuard didn't strip something the release build needs. Debug builds hide this completely.

One warning: internal testers don't count toward the 12, and anyone opted in to your internal test isn't eligible for the closed test until they leave it. Keep the internal list to yourself and maybe one teammate.

2. Read the pre-launch report before anyone gets a link

When you publish to a testing track, Play Console can run a pre-launch report. Google installs your build on a set of real devices in its test lab, crawls it for a few minutes and lists crashes, ANRs, accessibility warnings and screenshots per device.

I don't treat every warning as a blocker. I do treat these as blockers:

  • Any crash on launch.
  • A crawler stuck on the login screen. That usually means I forgot to give it credentials in the pre-launch report settings, so it tested one screen and called it a day.
  • Screenshots showing a broken layout on a small or very tall screen.

If the crawler can't get past your sign-in, neither will a tester who skims your instructions.

3. Make the first launch boringly crash-free

First launch is where testers decide whether to open your app again tomorrow. A crash on day 1 is how you end up with someone who opted in but never comes back.

I run these on a fresh install, with app data cleared:

  • Cold start with no network. Airplane mode, open the app. It should show something useful, not a blank screen or a crash.
  • Every permission denied. Notifications, location, camera, whatever you ask for. Tap Don't allow on all of them and keep using the app.
  • Onboarding skipped or backed out of. Testers press Back in places you never expected.
  • An older Android version. If your minSdk is 24, I want at least one run on something old, even an emulator.

Preflight board for a Google Play closed test: internal track, pre-launch report, crash-free first launch, test account, listing and countries, feedback channel and version plan
My seven preflight checks, grouped by what breaks if I skip them.

4. Give testers a way in without a support ticket

If your app needs an account, decide how a stranger gets one before the test starts.

My options, in order of preference:

  1. Let people sign up normally, and test that flow from a brand-new Google account.
  2. If sign-up is invite-only or paid, create a shared test account and put the login in the tester message.
  3. If parts of the app are behind sign-in, fill in App access under App content in Play Console, so reviewers can get in too.

What I avoid: email verification links that land in spam, SMS codes that don't reach some countries, and "contact us for access". Each one costs testers, and testers are the whole point of this exercise.

5. Store listing and countries set on the closed track

Testers land on your Play listing from the opt-in page. A placeholder icon and a one-line description make the app look abandoned before it's installed.

My minimum: a real icon, a short description that says what the app does, two or three phone screenshots, and a privacy policy URL that actually loads.

Then the setting people forget: the closed track has its own Countries / regions list. If a tester's Play country isn't selected, they can opt in and still not be able to install. I select every country my testers might be in, not just my launch market.

6. One feedback channel, set before day 0

On the Testers tab there's a feedback URL or email field. Whatever you put there shows on the opt-in page. Leave it blank and feedback goes nowhere.

I pick one channel and stick to it. A shared email works. A simple form works. Five channels mean I miss things, and missed feedback makes Google's production-access questions harder to answer later.

7. A version plan for the 14 days

This is the one most developers skip, and it's the one I'd keep if I could only do one.

Testers stay opted in when you publish updates to the closed track. Their copy just updates. That's good, but it means a bad update reaches everyone at once, and every release goes through review, so a hotfix isn't instant.

My plan looks like this:

  • Day 0: the build that passed steps 1 to 6.
  • Around days 4 to 6: one planned update with fixes from the first feedback.
  • Around days 9 to 11: a second update only if feedback justifies it.
  • Last few days: freeze. No new features, nothing that touches login.

Every release bumps versionCode, gets a short "what's new" note, and goes to internal first for a quick sanity check. I also keep the previous build's AAB handy in case I need to ship it again with a higher version code.

14-day version plan for a Google Play closed test: launch build, mid-test fix update, optional second update and a freeze before applying for production access
Two planned update windows and a freeze. Testers stay opted in through updates, so a bad build hits everyone at once.

What I don't fix before day 0

Being honest about scope keeps the preflight short:

  • Minor UI polish and copy tweaks.
  • Features that aren't on the main path testers will use.
  • Performance work, unless it's an ANR.

All of that can go in the day 4 to 6 update, and the feedback usually tells me which polish matters.

If you don't have 12 people ready

The preflight gets your build ready. It doesn't give you Android app testers. If you're still working out how to get 12 testers for 14 days, TestMyApps runs 14 testers on real Android phones for 16 days, from $15, with testers joining within 6 hours. Their how-it-works page lists the same prep I'd want from anyone: a live closed release, the right opt-in link, working login details and a stable build. There's a free retest, and a refund if that still isn't approved. Details are on the 12 testers for 14 days page.

TestMyApps how-it-works page, "Before the clock starts" section: closed-testing release live, official opt-in URL, working login details, stable build
Live testmyapps.app/how-it-works page (captured 28 Oct 2026). The prep list lines up with steps 1, 4 and 7 above.

The night-before check

Before I send the opt-in link, I answer five questions:

  1. Does the Play-installed build launch offline with every permission denied?
  2. Did the pre-launch report get past my login screen?
  3. Can a stranger sign in with only the tester message?
  4. Are all my testers' countries selected on the closed track?
  5. Do I know what goes in the day 4 to 6 update, and what doesn't?

If any answer is no, I wait a day. Starting the clock a day late is cheap. A test where half the testers quit after one crash costs a lot more.

Top comments (0)