Blog
5 min read

How to Turn Your Web App Into a Mobile App (Without Rebuilding It)

Three realistic paths from a web app to a phone app: make it a PWA, wrap it with Capacitor for the App Store and Google Play, or rebuild with React Native. Costs, what Apple rejects, what you need (yes, a Mac), and how to choose.

You built a web app — maybe with Lovable, Replit or Claude — and now people want it "in the App Store". You don't necessarily have to start over. There are three realistic paths, each with different costs and trade-offs.

Path 1: Make it a PWA (cheapest)

A progressive web app is your existing website with a manifest, icons and a service worker added. People can install it to their home screen, it opens full-screen like an app, and it can work offline and send notifications.

  • Effort: a day or two.
  • Cost: nothing extra.
  • App stores: no (by default).
  • Limits: iPhone users install via Safari's Share menu; device features are limited.

If your main goal is "an icon on my users' phones", start here. See what is a PWA?

Path 2: Wrap it with Capacitor (the usual answer)

Capacitor is an open-source tool that puts your web app inside a real native app shell for iOS and Android. Your HTML, CSS and JavaScript run inside it, and plugins give access to the camera, push notifications, file system, biometrics and more.

The broad steps:

  1. Make sure your app builds to static files (a Vite or React app does; a Next.js app needs a static export or should load from your live server).
  2. Add Capacitor to the project and create the iOS and Android projects.
  3. Build your web app and copy it into the native projects.
  4. Open the iOS project in Xcode and the Android project in Android Studio to run, sign and publish.

What you'll need

  • For iOS: a Mac. Building and submitting iPhone apps requires Xcode, which only runs on macOS. (Cloud build services exist if you don't own one.)
  • An Apple Developer Program membership — $99 per year — to publish on the App Store.
  • A Google Play developer account — a one-time $25 fee.
  • App icons, screenshots, a privacy policy and store descriptions. (Does my app need a privacy policy? — for app stores, yes.)

The App Store rejection risk

Apple's review guidelines reject apps that are "simply a web site bundled as an app" — apps that don't offer enough beyond the website. To get through review, your app should feel like an app:

  • native-feeling navigation, no visible web chrome,
  • works properly offline or handles no connection gracefully,
  • uses some native features — push notifications, camera, haptics, sharing,
  • no links that bounce people out to a browser for core features.

Google Play is generally more lenient, but quality still matters.

Payments: a big catch

If your app sells digital goods or subscriptions used inside the app, Apple and Google generally require you to use their in-app purchase systems and take a commission — rules vary by country and are changing in some regions. Selling physical goods or services is different. Check the current store rules for your situation before you build around a payment flow. (Stripe vs Paddle vs Lemon Squeezy covers web payments.)

Path 3: Rebuild with React Native or Expo

React Native (often with Expo) builds genuinely native interfaces using React. If your web app is in React, the concepts carry over, but the UI components are different, so most screens are rewritten.

  • Effort: weeks to months.
  • Result: the best native feel and performance.
  • When: the app is your core product, users expect a polished native experience, or you need heavy device features.

You keep your backend either way — the API, database and logins your web app already uses can serve the mobile app too. That's the part that's hardest to rebuild, and you don't have to.

How to choose

PWA Capacitor React Native
Reuses your web code Fully Almost fully Logic only
In app stores No Yes Yes
Native feel Fair Good Best
Device features Limited Most All
Time Days 1–3 weeks Weeks–months
Needs a Mac for iOS No Yes Yes (or cloud builds)

A sensible sequence for most small products: PWA first to see whether people use it on their phones; Capacitor when you need app-store presence or notifications; React Native only if the mobile app becomes the main product.

Before any of this: make the web app mobile-ready

Every path depends on your app already working well on a small screen. Fix layouts, tap targets and text sizes first — see responsive design basics. And make sure your API is served over HTTPS from a stable domain; mobile apps can't call localhost.

The summary

  • PWA: cheapest, installable, no app stores.
  • Capacitor: wraps your web app for the App Store and Google Play; needs a Mac, a $99/year Apple account and a $25 Google account, and must feel like a real app to pass review.
  • React Native: rewrite the interface for the best native result.
  • Your backend works for all three.

EasySpawn hosts your app's backend — API, database and logins — on your own domain with HTTPS, so your web app, PWA and mobile apps can all talk to the same server. See how it works or join the waitlist.

Related: Web App vs Mobile App · What Is a PWA? · What Is an API? · Move a Replit App to Your Own Hosting

Keep reading