Key takeaways
- Bolt doesn't publish to the App Store itself: wrap the published bolt.new site in a native shell, or create an Expo project in Bolt and build it with EAS.
- Wrapping is fastest for an existing web app but needs real native features to clear Guideline 4.2; Expo produces a React Native app but means starting a new project.
- Both routes need Sign in with Apple next to Google, In-App Purchase instead of Stripe for digital features, account deletion and a review account that works inside the app.
- WebViewGold, built by our team, turns the published Bolt site into an Xcode project; appsubmitter.io signs, lists and submits either route in your own account.
Our recommended solution
Turn your Bolt app into a real iOS app with WebViewGold
WebViewGold wraps the Bolt web app you already have in a native Xcode project and adds push notifications, a native offline screen, deep links, a QR scanner and more – the native value reviewers at the App Store look for. Built by our own team, and we submit WebViewGold apps all the time.
Can you convert Bolt to an iOS app?
Yes – but not with a button inside Bolt. To convert Bolt to an iOS app, you either wrap your published bolt.new site in a native Xcode project such as WebViewGold, or create an Expo project in Bolt, download the code and build and submit it with Expo's EAS command-line tools. Both routes end in App Store Connect under your own Apple Developer account; which one fits depends on whether you already have a working Bolt web app.
Bolt, the browser-based AI builder from StackBlitz, works in JavaScript: Node.js on the backend and any JavaScript framework on the frontend. Since Bolt v2 (October 2, 2025), Bolt Cloud adds hosting with a free .bolt.host domain (custom domains on Pro), Bolt Database or Supabase, authentication with email and Google, Stripe payments and security audits, built on Netlify and Supabase according to Bolt. Projects sync with GitHub, and older ones may still be hosted on Netlify. One sentence from Bolt's documentation shapes everything below: "Projects created for web do not easily switch over to mobile." For a native app you write mobile app in the first prompt, and Bolt creates an Expo project.
Wrapper or Expo: the two routes side by side
| Route 1: wrap the bolt.new site | Route 2: Expo app built in Bolt | |
|---|---|---|
| Starting point | Your existing, published web project | A new project with "mobile app" in the first prompt |
| What App Review gets | Your live site inside a native shell | A React Native binary |
| Main review risk | 4.2 – too close to the website | 2.1 and 4.3 – incomplete or generic |
| Updates | Web changes go live with Update; native changes need a new build | Rebuild and resubmit, per Bolt's docs |
| Native features | Wrapper modules: push, offline screen, Face ID, scanners, StoreKit | Expo modules you add to the code |
| Digital purchases | StoreKit through the wrapper | RevenueCat, which Bolt's docs point to |
| Build tooling | Xcode or WebViewGold's Cloud Builder | EAS cloud builds; Node.js, Git and an Expo account |
| Best for | Bolt web apps that already work and have users | Apps that are mobile-first from day one |
Two more routes exist. A progressive web app needs no review, but Bolt has no PWA documentation, so manifest and service worker are your job – and you give up App Store presence. Capacitor can package exported code, yet its documentation says loading a remote site via server.url is "not intended for use in production", so a production Capacitor app means bundled assets and native plugins. For most existing Bolt projects, the real decision is the table above.
Want your Bolt app in the App Store without the trial and error?
Book a free consultation call: we check your web app, tell you which native features it needs and what to fix before review. Or hand it off – our App Specialists set up signing and CI/CD, prepare the store listing and submit the app for you.
Route 1: wrap your published bolt.new site with WebViewGold
- Publish publicly on your production domain. Paid plans can attach a custom domain and lose the Made in Bolt badge after a republish; avoid Private visibility and the random bolt.host name Bolt assigns at first publish.
- Fix authentication URLs. Bolt projects start with
localhost:3000as the Site URL. Under Database → Authentication → Advanced, set it to the production domain and add every domain, reset route and your app's URL scheme to the URI allow list. - Adapt the layout for iPhone and iPad:
viewport-fit=cover, safe-area padding, no hover-only menus, large tap targets. A custom user-agent suffix lets the site hide its web header and footer inside the app. - Configure the project. Enter the production URL in
Config.swift, set bundle ID, name, icon and splash screen, and choose which links open outside the app – documents, social profiles, checkout pages for physical orders. - Switch on the modules your app needs (table below) and add a purpose string to
Info.plistfor each permission they use. - Build in Xcode, or let the Cloud Builder configure, build and upload in the browser; our team also offers a done-for-you setup.
WebViewGold is developed by our team, sold as a one-time purchase (Extended license for In-App Purchases), and its documentation lists Bolt among the supported builders. Which modules matter depends on what you built:
| What you built in Bolt | Modules that add real value |
|---|---|
| SaaS dashboard or internal tool | Native sidebar or navigation footer, Face ID re-login, push for alerts, offline screen |
| AI tool with paid credits or plans | StoreKit In-App Purchases, push when a job finishes, native share dialog for results |
| Marketplace or community | Universal links for shared listings, push for messages, QR scanner, native rating dialog |
| Booking or event app | Push reminders, QR check-in, calendar entries, Apple Wallet passes for tickets |
Route 2: build an Expo app in Bolt and ship it with EAS
- Start a new Bolt project and put
mobile appin the very first prompt, so Bolt sets it up as an Expo project. - Test on your phone with Expo Go: the Device Preview icon in Bolt shows a QR code to scan.
- Download the code. You need Node.js LTS, Git and an Expo account; install the EAS CLI with
npm install -g eas-cli, sign in witheas login, runnpm installand check the setup withnpx expo-doctor. - Set
nameandsluginapp.json– Bolt's docs warn that the slug can't change after the first build – then runeas initandeas build:configure. - Run
eas build --platform ios --auto-submit. The build runs on macOS machines in Expo's cloud; EAS creates the app record in your Apple Developer account, sets up a TestFlight group and submits the build for internal testing. EAS can also generate and manage certificates and provisioning profiles. - Complete the listing in App Store Connect and submit for review. Every later mobile change means a new build and a new submission.
For in-app purchases, Bolt's docs point to RevenueCat's guide for Bolt-generated Expo apps. For Sign in with Apple, the usual path is Expo's expo-apple-authentication module with ios.usesAppleSignIn enabled in the app config.
The shortcut from Bolt to the App Store
WebViewGold: your Bolt app, native on iOS
Instead of building native features from scratch, start from WebViewGold. You get ready-made Xcode and Android Studio projects for your website, with native modules you switch on in the configuration:
- Push notificationsOneSignal or Firebase, for real, personal events
- Native offline screenNo browser error pages when the connection drops
- Native splash screenApp-like start instead of a loading web page
- Deep linksLinks open the right screen inside the app
- QR & barcode scannerDevice features the website alone can't offer
- In-app purchasesNative purchase flows where the store requires them
No tool guarantees an approval: Apple still judges what your app offers. Use the native features in your main user journey – our App Specialists review your WebViewGold app before it goes to the App Store.
App Store rules both routes have to meet
| Rule | Wrapped Bolt site | Expo app |
|---|---|---|
| 4.8 Login Services | Sign in with Apple wherever Google appears, via Supabase's Apple provider on a Supabase project you control | expo-apple-authentication next to Google |
| Google sign-in | Never inside the web view: native code with ASWebAuthenticationSession or Google's Sign-In SDK, or Google on the website and email plus Apple in the app | A native sign-in flow instead of a web view |
| 3.1.1 In-App Purchase | StoreKit through the wrapper; Bolt's Stripe integration only for physical goods and services | RevenueCat; Stripe only for physical goods and services |
| 5.1.1(v) Account deletion | A Delete account option backed by a server function | The same backend function, called from the app |
| Purpose strings | Info.plist entries for camera, location, Face ID | ios.infoPlist in the app config |
| 2.1 Review access | A confirmed email-and-password account with sample data | The same, in a build that talks to your production database |
A handoff of Google sign-in to Safari satisfies Google's rules, but Apple describes sending people to the browser to sign in as a poor experience under Guideline 4, so treat it as a last resort. If your Bolt app sends prompts or files to an AI model, Guideline 5.1.2(i) requires you to disclose that and get explicit permission first. And App Privacy details must cover Supabase, Stripe, analytics and every SDK in the binary.
TestFlight, review notes and the rejections to expect
Test the TestFlight build on an iPhone and an iPad with a fresh install: sign-up with email confirmation, sign-in with the review account, password reset, purchase, account deletion and – for the wrapped site – Airplane Mode. Then write Notes for Review that name every native feature, explain which content comes from your Bolt site and give the review account. The rejections Bolt apps tend to collect:
- 4.2 when the wrapped site offers nothing beyond Safari – see 4.2 for WebView apps.
- 2.1 when the reviewer can't sign up because a redirect still points to localhost or the free hosting quota ran out.
- 4.8 for Google sign-in without Sign in with Apple – 4.8 for WebView apps has the details.
- 3.1.1 for Stripe checkout of digital features.
- 4.3 and 4.2.6 for generic generated designs, or apps an agency publishes for clients under its own account.
- 5.6 when features appear after approval – our article on Bolt apps and Guideline 5.6 covers the fix.
Signing, listing and submission without the detours
appsubmitter.io supports both routes. For a WebViewGold app we set up certificates, provisioning profiles and a fastlane pipeline; for an Expo app we set up signing and CI/CD – for example GitHub Actions or Codemagic – on the repository Bolt syncs to. We prepare the App Store Connect listing and App Privacy details, run an AI-powered pre-submission check reviewed by an App Specialist, write the Notes for Review and handle every message with App Review – in your own developer account, with our specialists working as members of your team. Code changes aren't included and are quoted upfront.
Book the iOS service or talk through your Bolt project in a free consultation call. Planning Android as well? Our guide to converting Bolt to Android covers Google Play.
Checklist before you submit
- You chose a route: wrap the existing bolt.new site, or build a new Expo project in Bolt.
- The site is published publicly on your production domain, without the Made in Bolt badge.
- Site URL and URI allow list point to the production domain and include your app's URL scheme.
- Native features serve the core journey – not just a splash screen around a web view.
- Google sign-in never runs inside an embedded web view, and Sign in with Apple is offered next to it.
- Digital features are sold through In-App Purchase; Stripe only covers physical goods and services.
- Users can delete their account in the app.
- Every permission has a purpose string, and App Privacy details include Supabase, Stripe and analytics data.
- Data sent to AI models is disclosed, and users give explicit permission first.
- The review account works inside the TestFlight build, and the Notes for Review describe every feature.
Frequently asked questions
Can I publish a bolt.new app on the App Store?
Do I need a Mac to convert Bolt to an iOS app?
Should I rebuild my Bolt web app as an Expo app?
Can I update my Bolt iOS app without going through review again?
How long does App Store review take?
Does Apple reject WebView apps made with Bolt?
Recommended solution
From Bolt to the App Store: WebViewGold + appsubmitter.io
- 1 Build with WebViewGold Turn your website into native iOS and Android projects.
- 2 Add native value Push, offline screen, deep links or scanning in your main flow.
- 3 We submit it Our App Specialists submit and talk to the review team.
WebViewGold is made by our team (jocapps GmbH). It is a tool, not a guarantee – approval decisions are made by Apple and Google.
Sources and further reading
- Bolt Support – Expo for mobile apps
- Bolt Support – Supported technologies
- Bolt Blog – Introducing Bolt v2 (October 2, 2025)
- Bolt Support – Database: Authentication settings
- Expo Docs – EAS Build introduction
- Apple – App Store Review Guidelines, 4.2 Minimum Functionality
- Apple – App Review: review times, appointments and appeals
- Apple – Offering account deletion in your app
Store policies and third-party products change regularly – always check the current versions. This article is independent advice and not affiliated with or endorsed by Apple, Google or any other company or product mentioned; all trademarks belong to their owners. WebViewGold and appsubmitter.io are made by our team at jocapps GmbH.