Codemagic
Mobile-first CI/CD for Flutter, React Native, native iOS/Android, Unity, and Ionic apps, with macOS M2 build machines so you can build and sign iOS apps without owning a Mac.
Use Cases
Free Tier
500 free macOS M2 build minutes/month, 1 parallel build, 1 team member, unlimited apps, 30-day artifact storage
How to Maximize the Free Tier
Your 500 minutes reset monthly, so track usage in the Codemagic dashboard to avoid running out mid-month. With only 1 parallel build on the free plan, queue heavy jobs off-peak and lean on caching (Flutter pub, npm) to shave minutes off repeated dependency installs. Artifact storage is limited to 30 days, so download release builds to your own storage (e.g., a free-tier cloud bucket) before they expire. Combine with a GitHub repo that triggers builds only on pull requests and main — not every branch — to conserve minutes. For Flutter projects, enable incremental builds in settings to reuse previous build outputs.
Getting Started
Sign up at codemagic.io with GitHub, GitLab, or Bitbucket → connect your mobile app repository → Codemagic auto-detects Flutter/React Native projects and generates a default workflow → set environment variables (signing keys, API tokens) → push a commit to trigger your first build → download the artifact from the Artifacts tab within 30 days.
Pros
- Mobile-first: Purpose-built for Flutter and cross-platform workflows with pre-installed SDKs and device simulators, plus code signing handled for you
- No Mac required: Free macOS M2 minutes let you build and sign iOS apps from any OS
- Unlimited apps: Free plan allows unlimited applications, so side projects don't compete for quota
Cons
- Low parallelism: Only 1 concurrent build on the free plan, so multiple branch pushes queue up
- Short artifact retention: Build history and artifacts expire after 30 days, so you must archive binaries yourself
- Single-user limit: Free plan allows only 1 team member; collaboration requires a paid plan