Xcode Cloud: Setting Up CI/CD for iOS Apps
Xcode Cloud is Apple’s continuous integration and delivery (CI/CD) service built directly into Xcode, tightly integrated with TestFlight and App Store Connect. Here’s the basic setup, the limits, and when a paid tier is worth it.

What’s included for free
Every Apple Developer Program membership includes 25 free compute hours per month on Xcode Cloud at no extra cost — enough for small to medium projects with a moderate build frequency.
How to create your first workflow
- Open your project in Xcode.
- From the menu, choose Integrate → Create Workflow.
- Connect your repository (GitHub, GitLab, and Bitbucket are supported, along with built-in integration for private repos tied to your Apple ID).
- Configure build triggers — a push to a specific branch, a pull request, manual runs, or a schedule.
- Define the workflow’s actions: build, automated tests (via XCTest), archive, and deliver to TestFlight.
- Save the workflow — the first build runs automatically the next time a trigger fires.

Typical workflow steps
- Build — compiles the project to confirm the code builds without errors.
- Test — runs unit and UI tests in parallel across multiple simulators to speed up feedback.
- Archive — creates a distribution archive.
- Deploy to TestFlight — automatically ships the built archive to TestFlight once earlier steps succeed.
What happens when you hit the 25-hour limit
Builds triggered beyond the free limit stop with a usage-limit-exceeded message. Your options:
- wait for the next billing month, when the limit resets;
- upgrade to a paid tier for more compute hours;
- optimize your workflow — e.g., run the full test suite only on pull requests into the main branch rather than every commit, to cut hours used.
Paid tiers
Beyond the free 25 hours, additional paid plans offer more compute hours per month — check Apple’s current pricing page for exact tiers and amounts, since these are subject to change.
Xcode Cloud vs third-party CI/CD
| Xcode Cloud | Third-party (GitHub Actions, Bitrise, Codemagic, etc.) | |
|---|---|---|
| TestFlight integration | Native, minimal setup | Requires extra setup via API/fastlane |
| Free tier | 25 hrs/month included with membership | Varies by provider |
| Cross-platform support | Apple ecosystem only | Often supports Android and other platforms simultaneously |
| Configuration flexibility | Limited to the Apple ecosystem | Generally broader, including arbitrary Docker images |
Xcode Cloud tends to win for teams working exclusively on Apple platforms who value minimal setup; third-party tools tend to win for teams with hybrid (iOS + Android) projects that want a single unified CI/CD system.
FAQ
Do I need a separate Mac to use Xcode Cloud?
No — builds run on Apple’s cloud servers; a local Mac is only needed for writing code and configuring workflows, not for the build itself.
Can Xcode Cloud build macOS apps, not just iOS?
Yes — Xcode Cloud supports builds for all Apple platforms: iOS, macOS, watchOS, tvOS.
Do compute hours get charged for failed builds?
Yes — hours are consumed by the build’s actual run time regardless of outcome, so optimizing your workflow matters for staying within the limit, not just for speed.
This article is independent and not affiliated with Apple Inc. For official information, see developer.apple.com/xcode-cloud.
Related: TestFlight: Testing Your App Before Release · How to Publish an App on the App Store: Step-by-Step · Apple Developer API & App Store Connect API: Getting Started