Before you start: is one file enough?
Open your HTML file in a text editor and look for lines like <link href="style.css">, <script src="app.js"> or <img src="photo.jpg">. Each of those points to another file. If you upload only the HTML, those files won't come along and the app will look broken.
You have two easy fixes:
- Inline everything. Paste the CSS into a
<style>block and the JavaScript into a<script>block. Good for small pages. - Upload a ZIP instead. Put the HTML and its files in one folder, zip it, and use the ZIP option in the same app. Make sure
index.htmlsits at the top level of the ZIP.
Links to things on the internet — a Google Font, a CDN library — are fine as long as the app has a connection. If it has to work offline, see HTML to APK offline.
Make it phone-friendly first
The app shows your page exactly as a phone browser would. Two minutes here saves you a rebuild later:
- Add
<meta name="viewport" content="width=device-width, initial-scale=1">in the<head>. Without it, everything looks tiny. - Make buttons big enough to tap — around 48 pixels tall is a good rule.
- Use
localStorageif you want to remember scores, settings or notes between launches. It works inside the app.
Convert it, step by step
- Install the builder. Get HTML & ZIP to APK Builder from Google Play and sign in once.
- Choose "HTML file" and pick your
.htmlfrom your phone's storage. If it's on your computer, email it to yourself or drop it in Google Drive first. - Name it. The app name is what shows under the icon, so keep it short — 12 characters or so fits most launchers.
- Add an icon. A square PNG, 512 × 512 or bigger, looks sharp on every phone.
- Set a package name like
com.yourname.calculator. This one is permanent, so choose something you're happy to keep. - Tap Build. It runs in the cloud, so you need a connection while it builds. Usually it's done in a few minutes.
- Download and install. Open the APK. Android will ask you to allow installs from that source the first time — that's normal for any app from outside Google Play.
If something looks wrong
| What you see | Why | Fix |
|---|---|---|
| Plain text, no styling | The CSS lives in a separate file | Inline it, or upload a ZIP |
| Buttons do nothing | The JS lives in a separate file, or a script fails | Inline it; test the page in Chrome on your phone |
| Everything is tiny | No viewport meta tag | Add the viewport line shown above |
| "App not installed" | An older test version with a different signature is installed | Uninstall the old one, then install again |
What people usually build this way
Single-file apps are perfect for small, focused tools: a tip calculator, a unit converter, a quiz for a class, a price list for a shop, a wedding schedule, a little canvas game. If yours is bigger — several pages, lots of images — the HTML, CSS and JS to APK guide covers whole projects.
Try it now — it's free
No watermark, no card, no Android Studio. Pick what you're starting from:
Questions people ask
Can I convert an HTML file to APK on my phone?
Yes. The builder is an Android app, so you can pick the file, build the APK and install it all on the same phone.
Is converting HTML to APK free?
Yes. The free plan builds a signed APK with no watermark. Pro ($5/month) is only needed for Google Play's AAB format and extras like push notifications.
Why does my HTML app look different from my browser?
Usually a missing viewport tag or files that weren't included. Add the viewport meta tag and inline your CSS and JS, or upload a ZIP of the whole folder.