Projects · · 4 min read
Publishing My First Game on the Play Store for Free
I share how I turned my Memory Match web game into a free Android app, deployed it on Vercel, wrapped it with Bubblewrap, and navigated the Play Console without spending a rupee.
Yesterday I finally managed to publish free android game on the Play Store. It started as a simple web app called Memory Match that I built in Google AI Studio just for fun. Being from a small town like Pundri, I don’t have a big budget, so I wanted a completely free path from code to store. I tried a few hosting options, hit the free tier of Vercel, and discovered that the whole pipeline could stay cost‑zero. In the next sections I will walk through each step, the tools I used, and the little hiccups that taught me a lot about mobile publishing.
publish free android game: turning a web app into an app bundle
The game itself is a classic memory‑matching card game. I built the logic in Google AI Studio, using a tiny Python backend to shuffle cards and a lightweight HTML/CSS front end. While writing the code I also wrote a separate post about what the project taught me about state management: what a memory match game taught me about state. That article helped me keep the front end simple, which later made the web‑to‑app conversion smoother. I also referenced my free‑government‑scheme finder when I needed to think about API keys and free tiers: Building Yojana Saathi. Finally, I looked at my voice‑assistant project for ideas on structuring config files: How I built JARVIS.
Once the game was playable locally, I pushed the code to a GitHub repository and linked it to Vercel. Vercel’s free plan gave me a custom domain (my‑game.vercel.app) and automatic HTTPS, which was enough for a public demo. The deployment process was a single click – Vercel detected the static site, built it, and gave me a preview URL instantly. I was surprised how fast the site loaded on a 4G connection, which is important for users in rural areas where bandwidth is limited.
With a stable web version in hand, the next challenge was turning it into an Android App Bundle (.aab). I used Bubblewrap, a command‑line tool that wraps a progressive web app (PWA) into a native container. The steps were straightforward: run `bubblewrap init` to generate a manifest, point it at the Vercel URL, adjust the icons, and then `bubblewrap build` to get the .aab file. The biggest surprise was the need to add a service worker for offline support – without it the Play Store rejected the bundle because it didn’t meet the PWA criteria. Adding a tiny service‑worker script solved the problem in minutes.
Setting up the Play Console and store listing
Google requires a Play Console account to upload any app. I created a new account using my personal Gmail, paid the one‑time $25 registration fee (the only cost I couldn’t avoid), and then navigated to the "Create Application" screen. I chose the "Games" category, filled in the title "Memory Match", and uploaded the .aab generated by Bubblewrap. The store listing asked for a short description, a full description, screenshots, and a feature graphic. I reused the screenshots I had taken while testing on Vercel, added a short tagline, and wrote a concise description that highlighted the free nature of the game.
- Create a free Vercel account and link your GitHub repo
- Deploy the static site and verify the URL works
- Install Bubblewrap (`npm i -g @bubblewrap/cli`) Run `bubblewrap init` and point to the Vercel URL Add icons (192×192, 512×512) and a service worker Run `bubblewrap build` to generate the .aab file
- Register for a Play Console account (one‑time $25 fee) Create a new app, choose "Games" category Fill in store listing details (title, description, screenshots) Upload the .aab file and submit for review
Google’s review process took about two days. I received a notification that the app was approved and now appears in the Play Store under the "Free" section. The whole journey taught me that even with zero hosting costs, there are still minimal unavoidable fees – the Play Console registration being the main one. The rest of the pipeline – from Google AI Studio to Vercel to Bubblewrap – stayed completely free, which is a big win for a hobbyist developer in a small town.
Practical takeaway
If you have a static web game or any PWA and you want to reach Android users without spending on servers, you can follow the same steps: host for free on Vercel, wrap with Bubblewrap, and upload the .aab to the Play Console. The only cost you’ll face is the one‑time Play Console fee, but everything else can be done on free tiers. The process also forces you to think about offline support and proper manifest metadata, which improves the overall quality of the app. Feel free to explore my other projects for more examples of free‑tier development, or check out the portfolio page for a quick overview of what I’ve built so far: my projects.
Frequently asked questions
Can I publish an Android app for free without a hosting cost?
Yes. By hosting the web version on a free platform like Vercel and using Bubblewrap to create an .aab, you only need to pay the one‑time Play Console registration fee.
What is Bubblewrap and why do I need it?
Bubblewrap is a CLI tool that converts a progressive web app into an Android App Bundle. It adds the required manifest, icons, and service worker so the Play Store accepts the upload.
Do I need a paid Google Cloud account to use the Play Console?
No. The Play Console itself requires only a $25 one‑time registration. All other services – hosting, build tools, and code editing – can stay on free tiers.
How can I make my web game work offline for the Play Store?
Add a service worker that caches the HTML, CSS, JavaScript, and assets. This satisfies the PWA criteria that Google checks during the bundle review.