Do Closed Testers Have to Pay for a Paid App?
Testers must buy a paid app in a closed test, and the price applies to every track at once. What license testing removes from the bill, and what it leaves.
No rename, ever. Google has one narrow deletion path that frees a package name, and the install count decides it. What a change costs your closed test.
Short answer: you cannot change an app's package name. Google fixes it when the first artifact reaches Play Console, and nothing afterwards renames it: not a Console setting, not a support ticket, not an app transfer. The only documented route to a different package name is a second app entry, which means a second tester list, second opt-ins and a fresh fourteen days.
There is one narrow exception, and it is the part almost nobody knows. If you delete the app while it has zero lifetime installs, Google frees the package name for reuse by anyone. One install from one tester and that door shuts permanently, including for you.
So the useful question is not whether the name is changeable. It is which of three moments you are standing between: before the first upload, after the upload but before the first install, or after a tester's phone has finished downloading your build.
Four statements settle the rule. They live on four different pages, which is why the picture looks contradictory until you put them side by side.
Put them together and the model is plain. Identity attaches to the artifact, updates must carry the same identity, and a different identity is a different app. What the first sentence does not say is what happens if you delete the app. That answer is conditional, and it is the reason this is not a dead end.
Three separate events get merged in developers' heads. Only one of them is irreversible at the time it happens, and only one of them cannot be undone afterwards.
The practical consequence is that a window exists between the first upload and the first tester install. It is short — a live closed test can produce installs within minutes of the opt-in link going out — but inside it, a wrong package name is a ten-minute fix rather than a fourteen-day restart.
If you upload a bundle whose package name does not match the app you are inside, Play Console rejects the upload and names the package it expects. That error message is the cheapest warning you will get all year. It arrives before anything is locked, and the fix belongs in your build file, not in Play Console.
Google's Delete an app page is the only place the permanence rule softens, and it softens to a single condition. The steps are not obvious, because deleting requires unpublishing first and unpublishing has its own prerequisites.
The eligibility rules are narrower than people assume:
Then the sentence that matters: “For a deleted app with zero lifetime installs, the package name will be freed up for reuse by anyone.” Its mirror is the one to read twice: “For a deleted app with any lifetime installs, the package name can't be reused by any other app, including apps created by the developer account that created the deleted app.”
That is stronger than most guides admit. It is not that you cannot reuse the name. Nobody can, permanently. A package name that has served a single install is retired from the namespace for good, and Google's app setup page — “Package names can't be deleted or re-used” — is describing the same rule from the other side.
One detail the page buries: when you paste the transaction ID, strip the order prefix. Google's example discards “0.G.” and the digits before “token” or “Registration”. Search the account owner's inbox for the receipt titled “Developer registration fee”, or open Google Payments and filter the activity log for “Google Play Developer”.
Google does not define “lifetime installs” per track, and it does not say whether an opt-in without an install counts. Read literally, the test is installs: someone who accepted the opt-in link but never completed the install has not installed anything, and the count stays at zero. Treat that as our reading of the wording rather than a published rule — the conservative position is that the door shuts the moment one tester's phone finishes the download.
For a closed test that produces three genuinely different situations:
Based on our analysis of 1,500+ closed-testing campaigns, the package name is almost never what stalls a launch. These are our own campaign records, not Google data, and no approval rate is implied by them. When it does appear, the pattern is always the same: the name was decided after the first upload rather than before it, and the realisation landed three or four days into a fourteen-day window.
Deleting is not a rename. It destroys an app record and leaves you refilling it from the beginning.
That last point is the one to sit with. On day eleven, with twelve engaged testers and a package name you have gone off, deleting is a fourteen-day decision and not a rename. Ship it, and change the thing users actually read.
Almost everything a user perceives is editable, which is why the package name matters far less than developers assume. Google's own instruction for the app name is: “Enter the name of your app as you want it to appear on Google Play. You can change this later.”
namespace can be reorganised freely. Since Android Gradle Plugin 8 the namespace drives the R class and the manifest package, not the Play identity.The package name surfaces in exactly one public place: the store URL, play.google.com/store/apps/details?id=your.package.name. That is worth knowing before treating a change as cosmetic. Every link you have sent testers, every QR code and every deep link points at that string, so a rename would break all of them anyway. Google has given you a second reason not to want one.
There are real reasons to pay fourteen days for a new package name. They are narrow, and none of them is aesthetic.
com.someoneelse.app, you can never publish assetlinks.json there, and verified links stay broken for the life of the app.Two build-level traps sit inside that decision. A debug build with an applicationIdSuffix of .debug is a different package, so it cannot be uploaded to the same app. A product flavour with a suffix such as .staging or .dev behaves identically. If an upload is rejected for a package mismatch and you changed nothing, look at the build variant before you look at Play Console.
If you built with an AI tool, check what it chose for you. Lovable, Bolt, Replit, Base44, v0 and Google AI Studio all scaffold a project, and the generated application ID is whatever the tool decided — often com.example.<slug>. Our walkthroughs for Lovable, Bolt.new, Replit and Base44 run the same steps, and this is the one that has to happen before the first upload rather than after.
Everything above collapses into one habit: confirm the identity inside the artifact, not in the Console field and not in your memory.
applicationId inside defaultConfig. That value, not namespace, is what Play sees.applicationIdSuffix, flavour suffixes, and any testApplicationId copied into the wrong block.bundletool dump manifest --bundle app-release.aab and look at the package attribute. The App bundle explorer shows the same value after an upload, which is too late to be useful.Ten minutes now, or a deleted app and a new fourteen-day window later. That asymmetry is the entire argument for doing it in this order.
If you do decide to start over, budget for the integrations keyed to the package name. Each one fails quietly, and usually at the worst moment.
Can I change the package name after uploading only to internal testing? No. Google's wording is about the first artifact — “Once you upload an artifact, the package name for that app is fixed and cannot be changed” — and Play Console forum experts say the same of apps that are not live yet. Internal testing is still an upload.
If I delete the app, does the package name become available again? Only if the app has zero lifetime installs. With any installs, “the package name can't be reused by any other app, including apps created by the developer account that created the deleted app.”
Does changing the package name reset my 14 days? Yes. The clock is per tester and per opt-in, and opt-ins belong to the app's track. A new app entry starts with none, and no tester data transfers across.
Is the package name the same as the name users see? No. Users see the app name, which is editable. The package name appears in the store URL and as the app's identity on the device.
Can I rename the display name and keep the package? Yes, and for most developers that is the correct answer. Google documents the app name as changeable at creation time and afterwards, while the package name is fixed at first upload.
Why was my upload rejected for a package mismatch when I changed nothing? Almost always a build variant. A .debug or .staging applicationIdSuffix produces a different package name, and Play accepts only the one already registered for that app.
Do I need the transaction ID to delete an app? Yes. Console asks for the package name and the developer account's registration transaction ID. The receipt email is titled “Developer registration fee”, and the order prefix has to be stripped before pasting.
Can I transfer the app to another account instead of deleting it? A transfer moves the existing app record, package name included. It is a change of owner, not a rename, so it does not solve a wrong package name.
Policy and product claims here come from pages read in full on 10 November 2026: Create and set up your app, Set up an open, closed, or internal test, Update or unpublish your app, Delete an app, App testing requirements for new personal developer accounts, and Android's Configure the app module.
Where this article draws an inference Google does not state — how “lifetime installs” applies to a closed test, and whether an opt-in without an install counts — it says so in the sentence. The campaign observation is our own record and is labelled as ours.
Register, create the app and choose your tester count. Every plan includes the same monitoring, support and participation guarantee.