NoMacSign in
← Blog

Where to build an iOS app when you have no Mac

A straight comparison of the ways to get a signed iOS build without owning a Mac: what each one assumes you already know, what it costs, and which one fits an agent-driven workflow.

· 8 min read

Need a Mac for this? NoMac gives your agent full macOS with Xcode for $0.80 an hour, billed by the minute. Start now →


Every option here produces the same artefact: a signed .ipa built on a Mac you do not own. They differ in what they assume you already know, and that assumption is the whole decision. Prices are as published at the time of writing. Check them: they move.

OptionAssumes you knowRough costBest for
GitHub ActionsYAML, Fastlane, keychain and signing setupmacOS runners billed at a 10× minute multiplierTeams already living in GitHub
CodemagicMobile CI concepts, some YAML500 free macOS minutes, then ~$0.095/minFlutter and cross-platform teams
BitriseCI workflow designFree hobby tier; Pro from ~$200+/monthLarger mobile teams with a CI owner
Xcode CloudXcode, and owning a Mac to configure itCompute hours, some included with the developer programmeAll-Apple teams already in Xcode
EAS BuildThe Expo toolchain30 free builds/month, then ~$3 per iOS buildReact Native and Expo apps
NoMacNothing about CI; your agent runs Xcode$0.80 an hour, by the minute, prepaid from $10Solo developers and agents shipping native apps

The question that actually decides it

Not price. It is: do you want to operate a pipeline, or do you want an app on a phone?

Those are different products sold with similar words. A CI platform gives you a programmable build machine. It is enormously powerful, and it expects you to bring signing knowledge, Fastlane, a workflow file and an afternoon. That is a good trade when you have engineers. For a solo person whose app was written mostly by an agent, the pipeline is a second project larger than the first.

GitHub Actions

Free-ish if you are already there, and the macOS runners are real. The cost that surprises people is the minute multiplier: macOS minutes bill at roughly ten times Linux. The cost that hurts is the setup: certificates in secrets, a keychain created and unlocked in a step, a Fastlane lane that works on a fresh runner. Everything in iOS code signing errors, decoded is a thing you will meet personally.

Codemagic and Bitrise

Purpose-built mobile CI, good at what they do, and both now ship MCP servers so an agent can trigger builds. Codemagic starts cheap and meters; Bitrise sells seats and tiers, with Pro plans starting north of two hundred dollars a month. Either is a sound choice for a team with someone who owns CI. Neither is designed for someone who has never seen a provisioning profile. The onboarding assumes a mobile engineer, because that is who they sell to.

Xcode Cloud

The most integrated option and the most Apple-shaped: it lives inside Xcode, understands signing natively, and hands off to TestFlight cleanly. The catch is circular for our purposes: configuring it comfortably means opening Xcode, which means owning a Mac, which is the problem we started with.

EAS Build

Excellent if you are on Expo, and it can build bare native projects too. But the audience, docs and defaults all assume the Expo toolchain, and thirty free builds a month goes fast when you are iterating with an agent that ships four times an hour.

NoMac

Disclosure: ours. It is not a CI platform. It is a full macOS VM with Xcode and administrator access that your agent starts, drives and stops itself, over MCP, a CLI, an API or SSH. There is no workflow file: the agent runs xcodebuild, reads the output and fixes the source in the same loop.

Signing and shipping are tools the agent calls. set_up_signing makes the App Store profiles with your App Store Connect key, which stays on NoMac's server. send_to_testflight uploads the signed .ipa, and publish submits it for review once you approve. That goes past TestFlight to the actual App Store submission, which most of this list leaves to you in App Store Connect.

It costs $0.80 an hour, billed by the minute from prepaid credit that never expires; a five-minute build is about 7 cents. Each session is a new VM, deleted when it stops, but the account's 50 GB drive keeps the project and its build caches between sessions, so the next build is incremental.

What that costs you is the pipeline. If you need a build matrix on every commit, a bespoke test stage, or an artefact pipeline feeding three environments, use a real CI platform: that is what they are for.

An honest test.If you can write a Fastlane lane from memory, pick a CI platform; you will get more from it. If the sentence “import the .p12 into a temporary keychain and unlock it in the build step” means nothing to you, you do not need to learn it to ship an app. The time is better spent on the app.

What none of them do for you

  • ·Create the app record in App Store Connect the first time. Still manual, everywhere.
  • ·Answer the App Privacy label or the age-rating questionnaire: attestations, not data entry.
  • ·Make an app distinctive enough to pass guideline 4.3.

Which is why the build service is the smaller half of the problem. See Apple's three paperwork blockers and why App Review rejects AI-built apps for the half that actually stops releases.

Give your agent a Mac in a minute.

Full macOS with Xcode and root, over MCP, CLI, API or SSH. $0.80 an hour, billed by the minute. The Mac is deleted at stop; your 50 GB drive is kept for the next one. No Apple account needed to start.

Get started from $10

7-day money-back guarantee on your first purchase. Credit never expires.

Connect your agent →