Before you start
What do I need to convert HTML to an APK?
An index.html that opens correctly in Chrome from your disk, a square icon, and a few minutes. No Android Studio, no code changes. The complete guide walks the whole path; the Offline Readiness Checker tells you in seconds whether the file is ready.
Can I upload HTML, CSS and JavaScript as separate files?
Yes — as a ZIP with index.html at its root and the other files next to it, using relative paths. Or merge them into one file with the merger. The folder-structure guide has the four rules.
Does it work with a framework build (React, Vue, Vite, Next)?
Yes, from the production build folder, with a relative base path and a classic (non-module) script. The folder-structure guide lists the setting for each tool.
Can I convert an HTML5 game?
Yes. Phaser, Construct, GDevelop and canvas games convert well: export to a folder, zip its contents, upload. The game runs full-screen with your icon and the back button is handled.
How the app behaves
Does the app work offline?
A bundled HTML file or ZIP works fully offline — the files are inside the APK. Only things the page still fetches from the internet need a connection: CDN scripts, web fonts, an API. The checker lists every one.
Why does my JavaScript work in Chrome but not in the app?
Because inside the APK the page is loaded from local files, and browsers treat local files more strictly: module scripts are refused, fetch() of a local file is blocked, and paths starting with / point at the device root. Ten fixes, each with a test →
Where does the app save data?
In localStorage or IndexedDB, on the phone, in the app's private directory. Both persist across restarts and updates and are cleared only by clearing the app's data or uninstalling. The storage guide →
Can the app use the camera, microphone or location?
Yes. Switch each one on when you build and the standard web APIs work inside the app; the user is asked the first time a page uses the feature. Background location and Bluetooth need a native app.
Does the back button work?
Yes. It walks back through your pages and exits only from the first one, as Android users expect. A bottom tab bar (Pro) adds a way home from every screen.
Does the app update when I change my HTML?
For a bundled app, no — the files are inside it, so rebuild with a higher version code and install over the old one; saved data survives. For a live-URL app, instantly, since it loads your site. The versioning guide →
Google Play
Can an HTML app go on Google Play?
Yes. Play rejects bare wrappers around a website with nothing added, not apps written in HTML. A bundled offline app's content is the app. Play requires an AAB (Pro), a privacy policy URL, a Data safety declaration and a content rating. The checklist, in order →
Why will Play not accept my APK?
Because new apps must be uploaded as an AAB, not an APK, since August 2021. Build an AAB on Pro.
Do I need a privacy policy if the app collects nothing?
Yes — Play requires one on every listing. The generator writes an honest one for an offline app in a minute; the Data safety helper gives the matching form answers.
Does it make iOS apps?
No — Android only. An iOS build needs a Mac, Xcode and Apple's $99-a-year developer program and cannot run in this cloud pipeline.
Can I convert HTML I do not own?
No. You must own the content or have permission to publish it as an app. Wrapping someone else's site or work is a copyright violation, is rejected by Google Play and is grounds for account removal. See the DMCA policy.
Signing, updates and uploads
What is a signing key and do I need my own?
Android refuses to install an unsigned app, so every build is signed. Free builds are signed with a key managed for you. To update an app already on Google Play every release must be signed with the same key as the first, which is what Pro's own-key option is for. Back it up; an app whose key is lost cannot be updated. Make one →
How do I update the app?
Rebuild with a higher version code and install over the old one. Package name and signing key must match for Android to treat it as an update rather than a second app.
How big can my HTML or ZIP be?
5 MB of source content on the free tier, 18 MB on Pro. A URL app has no limit because it loads from your server. Images are usually what fills it — resize to phone width and convert to WebP.
Account, billing and privacy
Why do I need an account to build?
Builds use real compute and are tied to an identity so limits are fair, projects persist and downloads are retrievable later. The tools need no account because they never touch our servers.
What do you do with my HTML?
It is sent to the build service, used to produce your app and kept with your project so you can rebuild; deleting the project removes it. Nothing of ours is added to your page. Files dropped on the tools are never uploaded at all. Details in the privacy policy.
Can people see my code in the APK?
Yes — an APK is a ZIP and your HTML is inside it. Never put secret API keys or passwords in the bundle. The security guide →
How much does it cost?
Building APKs is free. Pro — AAB, your own key, splash, onboarding, tabs, push, 18 MB — is $5 a month, sold through Google Play in our Android app. See pricing.
Can I get a refund?
Google Play handles subscription refunds, including the self-service window straight after purchase. The refund policy explains what Google handles and when we can help.