On this page (8 sections)
What Google requires for a transfer
- Both developer accounts are registered and active; you need the registration transaction ID of each (search the account email for “developer registration fee”, or find it in Google Payments → Activity).
- “The original account and all apps being transferred must comply with all policy guidelines.” An app with an open policy issue or a suspended account cannot be transferred first and cleaned up later.
- For paid apps or apps with in-app products, the target account needs an active payments profile.
- Integrated services — Google Analytics, Firebase, Play Games Services, AdMob — must have their permissions and links updated before the transfer.
- The target developer approves the request in Play Console; Google support reviews it within 2 business days. Plan the transfer as a one-way move — Google’s transfer guide describes no way to undo a completed transfer, and nobody can promise you a way back.
Source: Play Console Help, Transfer apps to a different developer account (verified 22 September 2026).
What transfers — and what does not
| Transfers with the app | Stays behind / must be recreated |
|---|---|
| User installs and user data | Bulk export and earnings reports for the old account |
| Ratings and reviews | Test groups (internal, closed, open testers) — recreate them |
| Subscriptions and in-app products | Promotions (promo codes already issued stay valid) |
| Download statistics | Permissions on integrated services (Firebase, Analytics, Play Games, AdMob) |
| Play App Signing key held by Google | The upload key file — the old owner keeps their copy |
What breaks unless you prepare it
Firebase and Google Cloud
The Firebase project is not part of the Play transfer. If the new owner is not made an Owner of the Firebase / Google Cloud project, they lose Crashlytics, Analytics, Cloud Messaging, Remote Config and Authentication overnight — or they keep working while the old owner retains full control of user data. Either transfer project ownership, or plan a project migration (new project, new google-services.json, migrated Authentication users, re-issued FCM credentials).
SHA-1 / SHA-256 fingerprints and Google sign-in
Google Sign-In, Firebase Auth phone/Google providers, Maps and other Google APIs are authorised against the fingerprint of the certificate the distributed build actually carries — under Play App Signing, the app signing key Google holds. That distinction decides how much work a transfer creates:
- Upload key reset only — Google keeps signing releases with the unchanged app signing key, so the certificate on installed and newly downloaded APKs is the same as before and registrations matched against it keep working. Update only the places where the upload certificate itself was registered.
- App signing key upgrade — which certificates sign new installations and updates depends on the upgrade option chosen and on the device's Android version, so there is no single new-installs-versus-existing-installs rule to rely on. Read your own App signing page in Play Console, register the applicable new fingerprints with every affected API provider, and keep the older registrations in place wherever a build that uses them is still being served.
- Debug and directly distributed builds — check the certificate on the actual APK. Debug builds normally use a debug certificate; directly distributed APKs may be locally signed or downloaded already signed from Play Console. Register the fingerprints required for the build and API provider you actually use.
The practical instruction is therefore conditional: read the App signing page in Play Console for the current upload and app signing certificates, then compare each API registration against the build it is meant to authorise. A blanket fingerprint rotation after a transfer is usually unnecessary work, and it can break the registrations that were correct.
AdMob, Play Games Services, Analytics
Each is linked to a Play app under an account. Re-link them to the target account before the transfer or the links break; AdMob app IDs remain in the build, but reporting and payment ownership follow the AdMob account, which is a separate decision.
In-app products, subscriptions and the licence key
Products move with the app, but the receiving account needs a payments profile first, and any backend that verifies purchases with the Play Developer API needs a service account under the new account with access granted to the app. The app’s Base64 licence key stays with the app.
Upload key and Play App Signing
The upload key and app signing key serve different roles. Under Play App Signing you sign the bundle with the upload key so Google can verify who you are; Google then signs the APKs that reach users with the app signing key it holds. A transfer moves the app signing key with the app, so installs and updates continue untouched. The upload key, however, is a file the previous owner still has. If continued use of the existing app signing key is a concern, review the receiving account’s key-upgrade options in Play Console; the certificates used for installations and updates depend on the upgrade configuration and Android version, as explained above. If the app is not on Play App Signing, the new owner must receive the original keystore and password or cannot publish updates at all — see lost keystore or upload key.
Developer verification
Under Android developer verification, the registered owner of a package is the account that holds it and can prove the key. A transfer moves the registration; the receiving account must itself be verified (organisation accounts need a D-U-N-S number).
Common scenarios
| Scenario | Extra work |
|---|---|
| Agency or freelancer → client | Client creates and verifies its own account first; Firebase/Cloud project ownership; AdMob ownership decision; upload-key reset so the agency no longer holds a usable key; contract clause on data |
| Personal account → organisation account | Organisation verification with D-U-N-S; payments profile on the organisation; both accounts stay active during the transfer; closed-testing requirement does not restart for transferred apps but check policy status |
| Sale of an app to another company | Due diligence on policy status and account standing (a transfer cannot fix a suspension); revenue cut-over on subscriptions; backend hand-over; service-account rotation |
| Consolidating several accounts | Batch the requests; make sure no app has an open policy issue; recreate tester groups per app |
A transfer is not a clean-up tool
Google requires the source account and every transferred app to be policy-compliant. A transfer cannot move an app away from a suspension, a strike or a pending review, and you should not count on being able to undo it. Resolve enforcement first — see app suspended and account terminated.
Recommended sequence
- Confirm both accounts are active and verified; collect both transaction IDs; set up the payments profile on the target.
- Inventory integrations: Firebase/Cloud project, OAuth clients and fingerprints, AdMob, Play Games, Analytics, backend service accounts, push credentials, licence key.
- Grant the new owner Owner access on Firebase/Cloud; re-link AdMob/Play Games/Analytics to the target account; hand over or plan the upload key.
- Submit the transfer request from the source account; accept it on the target; wait for Google’s confirmation.
- After the transfer: create a service account under the new account for the backend, recreate tester groups, and decide whether to reset the upload key or upgrade the app signing key. Update fingerprints in the Google API projects that the change actually affects — see the conditions above — rather than rotating all of them.
- Ship a small update from the new account to prove the whole chain works.
Before you rotate anything: what actually changed?
Most post-transfer breakage — and most wasted post-transfer work — comes from answering these five questions wrongly. Answer them from Play Console and your API consoles, not from memory:
- Did only the Play developer account change, or did anything about the app itself change with it?
- Did ownership of the Firebase / Google Cloud project or access to its OAuth clients change?
- Was the upload key reset — which changes what Play accepts on upload, and nothing else?
- Was the app signing key upgraded, and which certificates apply to installations and updates on the affected Android versions?
- Which build and distribution channel is the failure actually being reproduced on: a Play release, internal app sharing, a debug build, or a directly distributed APK?
Transferring the iOS version too? The Apple side has different criteria and its own migrations — see App Store app transfer.
Checklist
- Both accounts active and verified; transaction IDs collected; payments profile on the target
- No open policy issues on the app or the source account
- Firebase / Google Cloud ownership transferred or migration planned
- AdMob, Play Games Services and Analytics re-linked
- Upload key decision made (hand-over vs reset); Play App Signing status known
- Backend service account and purchase verification moved to the new account
- Signing change identified (upload key reset, app signing key upgrade or neither), and OAuth clients and API restrictions updated only where that change affects them
- Tester groups recreated; a post-transfer update published successfully
How App Rejection Fix can help
Google moves the listing, the install base and the Play-held app signing key, which stays associated with the app — so existing installs keep updating. What does not move is everything around it: ownership of the Firebase and Google Cloud project, custody of the upload key file, permissions on AdMob, Play Games and Analytics, and the service account your backend verifies purchases with. That is the part that breaks releases weeks later.
- Pre-transfer inventory: Firebase and Google Cloud project ownership, SHA-1 and SHA-256 fingerprints, OAuth clients, AdMob and Play Games links, Play Console service accounts, subscriptions and the payments profile on the receiving side.
- Signing decision: whether the upload key is handed over or reset, whether an app signing key upgrade is warranted, and which API registrations each of those actually affects — see lost keystore or upload key if the old key is gone.
- A sequenced cut-over so sign-in, push and purchase verification are not broken between the transfer and the first update.
- Backend work: moving purchase verification to the receiving account’s service account, updating API restrictions and fingerprints, re-pointing analytics and crash reporting.
- The first post-transfer release, built and tested, to prove the chain actually works end to end — including developer verification registration under the new account.
We cannot promise that a completed transfer can be rolled back, or that Google would approve a later transfer back — ask Play Console support what is available for your case. Account ownership and verification stay with you. The initial review is free; migration work is scoped and quoted separately. Google decides whether the transfer request is approved.
Frequently asked questions
What breaks when a Google Play app is transferred to another developer account?
The listing, reviews and install base move. Almost everything the app depends on does not: the Firebase or Google Cloud project stays with its current owner, so the OAuth clients and API keys that authorise sign-in and Maps sit under an account the new owner may not control; AdMob and Play Games links break; purchase verification needs a service account on the receiving side; and subscriptions require a payments profile there. Tester groups are not recreated for you. The signing certificate on released builds does not change unless you deliberately change it. Most transfer problems surface days later, in the first release after the move.
Can a Google Play app transfer be reversed?
Do not plan one on the assumption that it can be rolled back. Google's transfer documentation sets out the process and the conditions but describes no way to undo a completed transfer, and we cannot promise that Google will reverse one or approve a later transfer back — which is why the inventory work belongs before the request rather than after it. If you do need to undo a completed transfer, ask Play Console support what is available for your case, with both account owners on hand. Google reviews a transfer request within about two business days; the preparation around it — signing keys, fingerprints, backend ownership, payments — is the part that takes real time.
Related: Google Play App Transfer
Does the signing key move with the app?
The upload key and app signing key serve different roles. Under Play App Signing Google holds the app signing key and uses it to sign the APKs delivered to users, and it stays with the app through a transfer — so the transfer by itself does not change the certificate on anyone's installed app. The upload key is the separate decision: either the previous owner hands their keystore over, or the receiving account requests an upload key reset in Play Console. A reset changes only what Play accepts on upload; it does not re-sign released builds. Fingerprints registered with Google Sign-In, Firebase, Maps and other APIs are matched against the certificate the distributed build actually carries, so update them if the app signing key is upgraded, and wherever a service was registered against the upload or debug certificate — not automatically because the upload key changed.
Related: Google Play App Transfer, Lost Keystore / Upload Key