How to publish an app to the App Store without a Mac
Xcode only runs on a Mac, but you don't need one to publish. The ways to get an iPhone app onto the App Store from Windows or any computer, step by step.

By Sigsten Gustavii· · 8 min read
Apple has one rule that trips up almost everyone who wants to publish an iPhone app from Windows: the tools that build and sign an app for the App Store, Xcode and its command-line cousins, only run on macOS. Every app on the App Store passed through a Mac at some point.
That does not mean the Mac has to be yours. In 2026 there are several ways to publish without owning one, and the simplest needs nothing more than a browser. This guide covers what Apple requires, the routes that work, and the full Borel flow step by step.
What Apple requires, whoever does the building
Whichever route you take, these pieces stay the same:
- An Apple Developer Program membership, $99 a year. You can enrol as an individual, or as an organization, which needs a D-U-N-S Number. Enrolment happens on Apple's website and in the Apple Developer app, not on a Mac.
- An App Store Connect record for the app: its name, bundle identifier, category, age rating, privacy details and pricing.
- A signed build, compiled with Xcode and signed with a certificate and provisioning profile from your developer account.
- A store listing: screenshots, a description, keywords, a support link and a privacy policy link.
- App Review: a person at Apple tries the app against the App Review Guidelines before it goes live.
The only step that truly needs macOS is the third one. Everything else happens in a browser, in App Store Connect.
Four ways to publish without owning a Mac
| Route | How the app is built | What you do yourself | Good for |
|---|---|---|---|
| An AI builder that publishes (Borel) | On the builder's Mac, with Xcode | Fill in the listing, press Publish | People who want the app, not the toolchain |
| A cloud build service | On the service's Mac | Set up the project, signing and upload | Teams already using React Native or Flutter |
| A rented cloud Mac | On a remote Mac you control | Everything, over remote desktop | Developers who need full Xcode |
| Borrowing a Mac | On a friend's or work Mac | Everything, in person | A one-off, if you know Xcode |
Route 1: an AI builder that publishes for you
If you are making the app with AI anyway, the shortest route is a builder that also does the Apple part. Borel writes native Swift and SwiftUI, compiles it with Xcode on its own Mac, and has a publish flow that builds, signs and uploads the app to App Store Connect. You stay in your browser the whole time.
Route 2: a cloud build service
Cross-platform frameworks have their own build services. Expo's EAS Build, for example, compiles iOS apps for React Native projects on Macs in the cloud. You still write and configure the project yourself, usually in a code editor and a terminal, and you manage signing and the upload. It works well for teams that already code.
Route 3: rent a Mac in the cloud
Several companies rent remote Macs by the hour or month. You connect over remote desktop and use Xcode as if the Mac were on your desk. It is the most flexible route and the most hands-on: you need to know Xcode, signing and App Store Connect.
Route 4: borrow one
A friend's Mac works for a single upload if you already know the steps, but every update means borrowing it again. Apps need updates more often than people expect, if only for new iOS versions.
How to publish with Borel, step by step
Here is the full route in Borel, from a finished app to the App Store. If you have not made the app yet, start with how to make an iPhone app with AI.
Step 1: Get the app ready in the simulator
Use the app in the iPhone simulator in your browser the way a stranger would. Apple's reviewers will open every screen, so fix anything unfinished, remove sample content you do not want public, and make sure sign-up works if the app has accounts.
Step 2: Join the Apple Developer Program
Enrol at developer.apple.com for $99 a year. Individual enrolment is usually quick; an organization needs its D-U-N-S Number and can take longer. Do this early so it is ready when the app is.
Step 3: Run the review check
On Pro, the Publish button at the top of the workspace opens a card with Run review, a check of your app for App Review risks, such as missing permissions text or features that do not work yet. Fix what it finds before Apple's reviewers do.
Step 4: Fill in your app's listing
Publish asks one question per screen: the App Store name, the icon, the category, screenshots, a description, and a phone number for Apple's reviewer. Borel drafts the category from your app, and any screen can wait; the last page lists what Apple still needs, each with a tick or a cross and a reason.
Step 5: Connect App Store Connect
Sign in to Apple from the flow. Borel sets your app up at Apple, so there is nothing to click through on Apple's website. Your credentials are stored encrypted on Borel's servers and are only used to build and publish, never placed in your app.
Step 6: Send to Apple
Borel's Mac builds the app with Xcode, signs it and uploads it to App Store Connect. Once Apple has processed the build, it shows up in TestFlight, where you can try the real build on your phone before it goes to review. Read TestFlight on Apple's site for how testers join.
Step 7: App Review and release
Submit the build for review. Apple says that on average 90% of submissions are reviewed in less than 24 hours, though a new app can take longer, and a rejection comes with the guideline it failed and a note. Fix it, send a new build, and resubmit. When it passes, the app goes live on the App Store.
What Apple checks that catches people out
Most rejections have nothing to do with how the app was built. They come from the listing and the details. The common ones:
- Unfinished features: a button that does nothing, placeholder text or a screen that says "coming soon".
- Sign-in the reviewer cannot use: if the app has accounts, give Apple a demo login in the review notes.
- No way to delete an account: an app that lets people create an account must let them delete it inside the app.
- Missing privacy details: a privacy policy link and accurate App Privacy answers in App Store Connect.
- Too little app: Apple turns down apps that are just a website in a frame or do very little.
- Payments outside Apple: digital goods and features must be sold through in-app purchase.
Common mistakes when publishing without a Mac
- Starting the developer enrolment last. It can take days for an organization. Start it while you build.
- Treating publishing as the finish line. iOS updates, review feedback and people's requests all mean new builds. Pick a route that makes updates as easy as the release.
- Screenshots that do not match the app. Apple compares them with what the reviewer sees.
- Skipping TestFlight. A few minutes on a real phone catches problems the simulator cannot show, like how the app feels in your hand.
A checklist before you press Publish
Run through this list once the app works in the simulator. Each item is something Apple's reviewers look at, and each takes minutes to fix now and days to fix after a rejection.
- Every button and screen does something; nothing says "coming soon".
- Sample content you do not want public is cleared or replaced with your own.
- If the app has accounts: sign-up, sign-in, sign-out and deleting the account all work, and a demo login is ready for the reviewer.
- Permission prompts, such as for the camera or location, say in plain words why the app needs them.
- You have a privacy policy at a public web address, and a support page or email.
- Your screenshots come from the current version of the app.
- The App Store name and description describe what the app really does, with no claims you cannot back up.
- Anything sold inside the app goes through in-app purchase, with a way to restore purchases.
You can also ask Borel to look for problems before you run the review check. A prompt like this one works well:
I'm about to publish this app to the App Store. Go through every screen and tell me:
1. Anything that does nothing when tapped, or looks unfinished
2. Any sample content that should be cleared before publishing
3. Any permission the app asks for, and whether its explanation is clear
4. Whether sign-up, sign-in and deleting an account all work
Then fix what you find, one item at a time.What it costs
On Borel: Pro from $20 a month, which includes publishing, plus Apple's $99 a year. Building and uploading on Borel's Mac costs nothing extra. Other routes add the cost of a cloud Mac or build minutes, and your own time. Our post on what an iPhone app costs in 2026 has the full picture, and the Windows publishing guide covers the same flow from a PC.
Questions people ask
Can you publish an iPhone app without a Mac?
Yes. The app still has to be built on a Mac, but not on yours. Borel builds, signs and uploads it from its own Mac while you work in a browser on Windows or any other computer.
Can I upload an app to App Store Connect from Windows?
App Store Connect itself works in any browser, but the build has to come from Xcode on a Mac. A service like Borel does that part and uploads the build for you.
Do I need an Apple Developer account to publish?
Yes. Publishing to the App Store needs Apple's Developer Program, $99 a year. You only need a free Apple ID to install an app on your own iPhone.
How long does App Review take?
Apple says 90% of submissions are reviewed in less than 24 hours on average. A new app, or one that needs changes, can take a few days.
Can I publish updates without a Mac too?
Yes. With Borel, an update is the same flow: change the app in the chat, then send the new build to Apple from Publish.
Publishing is the step that used to need a Mac and an afternoon in Xcode. I wanted it to be a few screens in a browser, so that is what we built.
– Sigsten
Make your iPhone app in Borel
Describe the app you want and see its first screens before you pay anything.
See your app free