10 reasons to choose Codemagic CI/CD in 2022–2023
Tags: devops, flutter, mobile, ios
Published: 2022-11-21 08:33:46

[Codemagic](https://codemagic.io/start/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) is a CI/CD (continuous integration and continuous delivery) tool that is best suited for mobile developers. It can help you speed up your release cycle, get actionable feedback faster, and forget about the pain of manually submitting your apps to stores.

Codemagic is evolving fast: This year, we added M1 Mac mini build machines and changed our pricing so that everyone can afford to use the friendliest mobile DevOps tool on the market.

Why using a CI/CD tool is especially important for mobile app development
-------------------------------------------------------------------------

Mobile application development has come a long way over the last decade, and users have developed high expectations for the look, feel, and functionality of the apps they use. They expect apps to work smoothly, be available across multiple platforms, look nice, and be intuitive.

All of that requires a fast software development life cycle so that you can quickly test concepts, fix issues, and iterate in order to improve the quality of your app and release new features. Building such a release cycle is impossible without adhering to DevOps best practices, which include automating a lot of tasks and improving collaboration between team members by building a continuous integration and continuous delivery pipeline for your app.

For continuous integration, you'll need a version control system such as GitLab, GitHub, or Bitbucket (Codemagic supports all of these version control systems, by the way) for your source code. You will also require a tool that will grab the source code from your repository, run automated tests, and build it into an actual working app.

For continuous delivery, you'll usually use the same tool to automatically publish your app to the app stores, such as Google Play and Apple App Store. This means that just committing your code with a change to a repository or approving a pull request is enough to trigger a pipeline that will automatically build, test, and deploy your app with that change and enable users to access it immediately.

Tools that carry out the above processes are called continuous integration and continuous delivery services, or CI/CD for short.

There are many CI/CD tools available in the market, from universal solutions such as Jenkins or GitHub Actions to hosted mobile-first cloud services such as Codemagic, Bitrise, or Appcircle. How do you know which CI/CD service is best for building mobile apps?

> Download our ebook ["Continuous Integration and Delivery for Mobile Apps"](https://codemagic.io/ci-cd-ebook/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

Below, you'll find ten reasons why you should consider using Codemagic in 2022 (and 2023) for your mobile app development.

1\. Never overspend
-------------------

Codemagic has a unique billing model that helps you save money by adapting to your needs.

Firstly, you get 500 free build minutes per month. If you need more, you only pay for the build minutes you have used at the end of the month.

And if your usage exceeds 50 build-machine hours per month, you won't have to pay more than $299 a month --- Codemagic fixes the costs for you while providing unlimited build minutes. This is done automatically, so there's no need to worry about optimizing the spend --- we'll optimize it for you.

Finally, if you're sure you will be building extensively every month, you can choose the annual plan with the same unlimited usage but at a 20% discount so that you pay $2,870 per year of unlimited use.

> Learn more about [Codemagic's pricing](https://codemagic.io/pricing/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)


2\. Build with Apple silicon machines
-------------------------------------

This winter, Codemagic [introduced Apple M1 build machines](https://blog.codemagic.io/codemagic-mac-mini-m1-release/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution), which recently replaced the old Intel Mac minis as our default VMs (even though you can still use Intel machines if you need to). That means that you can build with M1s even on a free plan. Once you exceed the limit and need to pay for build minutes, Codemagic still offers M1 Mac minis at a fraction of the price of what other mobile CI/CD services offer.

> Read [how Codemagic managed to lower its pricing while improving its infrastructure](https://blog.codemagic.io/how-codemagic-lowered-prices-and-improved-infrastructure/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

3\. Enjoy good performance
--------------------------

There are many benefits of using Apple silicon build machines in continuous integration/continuous delivery pipelines. The improvements in build speed that they provide are just amazing. Building with other Codemagic machines is also quite fast, primarily because they have all the necessary tools, such as Flutter SDK, Android Studio, Xcode, Unity Editor, and many more preinstalled.

You can find the build machine specs and information about preinstalled software via the links below:

-   [macOS build machine specs](https://docs.codemagic.io/specs/versions-macos/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)
-   [Linux build machine specs](https://docs.codemagic.io/specs/versions-linux/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)
-   [Windows build machine specs](https://docs.codemagic.io/specs/versions-windows/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

> Learn more about how [Mac M1 build machines increase the build speed of Flutter apps](https://blog.codemagic.io/flutter-m1-vm-comparison/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

4\. Forget about maintaining infrastructure
-------------------------------------------

Perhaps even more importantly, you don't need to worry about maintaining infrastructure and updating dependencies. We always keep all the software up to date so that you don't need to worry about it --- you can just use it, and we'll take care of the maintenance. You don't need to update your environment. We've got you covered, from the latest Xcode versions (actually, we have several versions to choose from) to the latest Flutter versions.

And with Codemagic, there's no such thing as "our build server is broken" anymore --- there are always build machines in the pool ready to build your apps.


5\. Embrace flexibility with the visual Workflow Editor or YAML Infrastructure as Code
--------------------------------------------------------------------------------------

Codemagic offers two different approaches to building CI/CD pipelines, and you can choose the one that suits you best. With our visual Workflow Editor, you can follow a very intuitive (yet well-documented) process to build a CI/CD pipeline with just a few clicks.

Alternatively, you can utilize the power IaC (Infrastructure as Code) with codemagic.yaml. This method gives you infinite options for customizing your pipeline and enables you to set up new pipelines within a few minutes by simply copying and pasting the contents of your codemagic.yaml file from the previous pipeline.

Choose whichever approach you like best. What's even better is that you can start with the simple Workflow Editor and then export your configuration as a codemagic.yaml file to continue tweaking it.

> Learn how to [get started with the Workflow Editor](https://docs.codemagic.io/flutter-configuration/flutter-projects/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) and [codemagic.yaml](https://docs.codemagic.io/yaml-basic-configuration/yaml-getting-started/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

6\. Build white-label apps at scale
-----------------------------------

Have you built a successful app for one service and want to sell it to another service with minor tweaks? This is called white labeling, and Codemagic supports it at no additional cost. No matter which white-labeling approach you choose or whether you're using Flutter, React Native, or another framework, Codemagic can help you build all flavors of your white-label app with a single commit and distribute them all to the stores using their respective accounts.

Codemagic speeds up release cycles for your white-label applications, helping you make sure your clients are happy with your app.

> Learn more about [white labeling apps with Codemagic](https://docs.codemagic.io/knowledge-others/white-label-apps/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

7\. Build for all platforms
---------------------------

One of the core benefits of frameworks such as Flutter, React Native, and Unity is their support for many platforms, and Codemagic allows you to enjoy this support at its fullest.

Codemagic has Linux, Windows, and Mac build machines. (The latter even come with two different architectures --- x86/x64 and ARM64.) We allow you to build apps for the following platforms:

-   Android
-   iOS
-   Windows
-   Linux
-   Mac
-   Web
-   Standalone Oculus VR headsets

Codemagic can not only build your app for all these platforms but also help you automate deployment to the respective stores.



8\. Enjoy tight integrations with App Store and Google Play
-----------------------------------------------------------

Codemagic is tightly integrated with both App Store Connect and the Google Play Store. This means that setting up automated deployment is easier with Codemagic. It can help you with steps such as code signing, automatic app versioning, distributing apps to TestFlight or Google Play Beta, and more.

Also, did you know that publishing to the App Store with Codemagic doesn't consume your build minutes? Well, now you do.

> Learn more about [Codemagic's App Store Connect integration](https://docs.codemagic.io/yaml-publishing/app-store-connect/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

9\. Use integrations with various test automation tools
-------------------------------------------------------

Codemagic has quite an extensive list of [integrations](https://codemagic.io/integrations/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) that are documented and ready for you to try out. Among those integrations, we'd like to specifically highlight tools that allow you to automate testing, including[ Katalon](https://docs.codemagic.io/integrations/katalon-integration/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) (one of the most powerful engines for no-code test automation),[ Kobiton](https://docs.codemagic.io/integrations/kobiton-integration/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) (for testing on real devices),[ Sofy](https://docs.codemagic.io/integrations/sofy-integration/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) (for low-code test automation), and[ Firebase Test Lab](https://docs.codemagic.io/yaml-testing/firebase-test-lab/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution) (for cloud-based testing for Android and iOS apps on various devices).

And there are many more integrations that can help you improve testing, code coverage, and more.

> Get acquainted with [Codemagic's integrations](https://codemagic.io/integrations/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution)

10\. Get help from our very responsive support
----------------------------------------------

With some SaaS companies, it can be difficult and time-consuming to reach support, and they often don't really solve your issue. Codemagic is different: You can contact our support using the in-app chat (for paying customers) or on[ GitHub Discussions](https://slack.codemagic.io/) (for everybody). We strive to provide help within 24 hours, and it usually takes just a few hours.

We also offer[ free onboarding assistance](https://codemagic.io/onboarding-assistance/?utm_source=devto&utm_medium=cm-reasons-devto&utm_campaign=flutter_distribution), and our DevOps engineers are here for you to get the most out of Codemagic and build better pipelines.

Conclusion
----------

Choosing the right CI/CD for mobile app development might seem like a complicated task, but it essentially boils down to choosing the solution with the best parameters, such as:

-   Ease of use
-   Cost
-   Features and integrations
-   Build speed

Codemagic excels at all of the above. It is easy to set up and use, is much more affordable than its competitors, is feature-rich, and has a lot of useful integrations. And finally, Codemagic's virtual machines are really, really fast.