Signing & publishing

Converting HTML to an AAB for Google Play

Play will not accept the APK you have been testing with. Here is what an App Bundle changes, what you need before you upload, and the requirements that reject first submissions.

7 min read Updated September 2026

You have a working APK on your phone. You open Play Console, and it refuses the file. This is not a bug: since August 2021 every new app must be published as an Android App Bundle, and an AAB is a different kind of artefact — one that cannot be installed on a device at all.

What follows is what actually changes for a converted website, and everything Play wants alongside the file.

Step 1 — Build the bundle, not the package

Same project, same content, different output target. Where the APK build produces one file containing every device's resources, the bundle contains all of them separately for Play to split. If you are using a build service, this is a choice of target rather than a different project. In Gradle it is bundleRelease instead of assembleRelease.

Nothing about your HTML, CSS or JavaScript changes. The bundle wraps the same content.

Size calculator showing the APK estimate beside the smaller Play download produced from an App Bundle
The AAB column is what a user actually downloads once Play has stripped what their device cannot use.

Step 2 — Understand what signing now means

This is the part that surprises people. With an App Bundle, Play generates and signs the APKs users install, so Play needs a key of its own.

Keep your upload key and its password backed up somewhere you will still have in three years. A password manager entry beats a file on the laptop you will replace.

Step 3 — Get the identifiers right before you upload

These are checked at upload and are painful to change afterwards — the package name being impossible to change at all.

Package Name GeneratorBuild and validate a valid applicationId Open the tool

Step 4 — Assemble the store listing

The bundle is a fraction of a submission. Play also wants:

AssetRequirement
App icon512 × 512 PNG, 32-bit, no transparency
Feature graphic1024 × 500, shown at the top of the listing
Phone screenshotsAt least 2, up to 8
Short description80 characters
Full description4,000 characters
Privacy policyA real, reachable URL — required for essentially every app
Data safety formDeclares what you collect and share
Content ratingA questionnaire, answered honestly
APK Icon GeneratorEvery Android launcher size from one image Open the tool
Generated icon set including the 512 pixel Play Store icon
The store icon is a separate asset from the launcher icons, with its own no-transparency rule.

The requirement that actually rejects web apps

Play's policy on minimum functionality is where converted websites get turned down. An app that is nothing but a WebView pointed at a URL — no offline support, no native behaviour, nothing a browser bookmark would not do — can be rejected as a repackaged website.

What moves an app onto the right side of that line:

Also required: you must own or have rights to the content. Wrapping someone else's website is rejected, and reported.

Step 5 — Upload and wait

Create the app in Play Console, upload the AAB to a track — internal testing first, always — and complete the listing. Review for a new developer account commonly takes a few days, and first submissions from new accounts get more scrutiny.

One thing worth doing before you submit: install what Play will actually serve, not what you built. The internal test track gives you exactly that in a few minutes, and it is the only way to catch a problem introduced by the bundle splitting itself.

Questions people ask

Why will Google Play not accept my APK?

New apps must be published as App Bundles, a requirement since August 2021. Only apps first published as APKs before that date can still ship APK updates.

Can I test an AAB before uploading?

Not by installing it directly — an AAB is not installable. Use Play's internal testing track, which delivers exactly what real users would get, or generate device APKs locally with Google's bundletool.

Does Google keep my signing key?

With Play App Signing, Play holds the key used to sign the APKs users install, while you keep a separate upload key. The trade-off is real but favourable: a lost upload key can be reset, whereas losing the only signing key used to be unrecoverable.

Will my converted website be rejected by Google Play?

It can be, if it is only a WebView pointing at a URL with nothing a browser could not do. Bundled offline content, push notifications, native navigation or device features move it past the minimum functionality policy.

How long does Play review take?

Commonly a few days for a new developer account, sometimes longer for a first submission. Updates to an established app are usually faster.

Read next

Ready to turn your site into an app?

Upload an HTML file or a ZIP, set your icon and name, and download a signed Android app. No Android Studio, no command line.

Open the builder