Do you have a great idea for an iOS app or a Mac app? Looking for the right Mac to code it on? You’ve come to the right place. In this article, we will look at why a Mac is necessary for iOS development and why a Mac is a great choice for developers. We also reveal the minimum Mac you need for coding – including whether a MacBook Air will be sufficient.
Whether you are a seasoned app developer looking to update your Mac to something more substantial, or just trying your hand at creating an app for the first time and hoping to find a low-cost Mac that’s good enough for the purpose, we will help you find the best Mac for your needs.
You may be wondering if Apple’s M1, M2 or M3 Macs are good enough for developers or if the M2/M3 Pro, M2/M3 Max or M2 Ultra would be better. You may even be wondering if you should choose a Mac with an Intel processor. We’ll take a look at those questions below.
If you want to skip the buying advice, you can jump straight to our recommendation of the best Mac for developers.
Why you need a Mac for iOS & macOS development
To develop an iOS or Mac app you will need the following:
- Membership of the Apple Developer Program. It costs $99 annually (about £80 in the UK) and gives you access to beta software (although you can now get access to betas without a paid account), advanced app capabilities, extensive beta testing tools, and app analytics (more information here.) To just test and deploy applications you only need an Apple ID, but you will need to be a member of the Developer Program if you want to sell your apps on the App Store.
- Even if you developed your app using something other than a Mac, you will need a Mac to compile the final product that is uploaded to the App Store.
- Xcode is the primary tool for macOS and iOS development and it is only available on the Mac. It is a free download from the Mac App Store and the current version is 15.1 the time of writing. That includes Xcode IDE, Swift, C/C++/Objective-C compilers, Instruments analysis tool, simulators, and SDKs for the latest versions of iOS, iPadOS, watchOS, tvOS, and macOS. Note that Xcode 15 requires macOS 13 Ventura 13.5 or later, so you also need…
- A Mac that can run macOS 13 Ventura or later. (See our macsOS compatibility checker).
One key reason to buy a Mac for development is the simple fact that it’s difficult to run macOS on anything other than a Mac. You could build a hackintosch, and some people do, but there are lots of reasons why we wouldn’t recommend that as a solution.
We also have a guide to coding and programming on a Mac.
Can Apple’s M1, M2 or M3 Macs be used by developers?
There is a lot of positive to be said about Apple M-series chips which so far include the M1-series, the M2-series (including the M2 Pro, Max and M2 Ultra) and the M3-series (with the M3 Pro and M3 Max, so far). Ever since the introduction of the M1 in November 2020 Apple’s home-made Arm-based chips have proved groundbreaking and the benchmarks impressive. These new Macs compared very favorably with the older Intel-powered Macs. In fact, even the M3-powered iMac beats the best-specced iMac Pro from a few years ago. As you can see from the table below.
For an overview of all the M-series chips, so you can see just how powerful they can be, take a look at the benchmarks below for a clearer picture:
It used to be the case that the Mac was chosen for development because you could run not only macOS on it, but also Windows and Linux and other operating systems by using virtualization and virtual machine software. However, this isn’t as simple as it was. With the introduction of the M-series chips the architecture has changed and it is no longer as simple to run Windows on a Mac. Because Macs no longer use the same X86 platform as Windows if you want to run Windows on your Mac the only choice is to use the Arm version of Windows, if you need another version of Windows you need to use an Intel-powered Mac (or a PC).
This move from X86 to Arm may also mean that the software you use might not be fully supported. However, over the past few years, many apps have been updated for the Arm-based chips. If the app you need isn’t native yet, Apple includes Rosetta which translates old X86 code so it can run on Arm (there may be some lag if you are having to rely on that though). You can check the status here: Apps Ready for M1 and we run through which apps work on M1 Macs in a separate article. Luckily many essential apps do already run natively on the M-series chips, including Python, Unity and Chrome.
One criticism of the first batch of M1 Macs was that they could only support 16GB RAM (or unified memory as Apple refers to it). Apple rectified that with the M2 Macs and M3 Macs, which support 24GB unified memory. If that still doesn’t feel like enough, the M1 Pro and M2 Pro chips support up to 32GB memory, the M3 Pro supports up to 36GB memory (18GB as standard), the M1 Max chips support 64GB, the M2 Max chips support up to 96GB, and the M3 Max up to 128GB. The M1 Ultra can support up to 128GB unified memory, while the M2 Ultra takes that to 192GB.
There is a lot of debate as to whether you, as a developer, will need 32GB or more RAM. It should be noted that RAM in the M-series Macs is very different to RAM in the Intel-based Macs, but we still advise that you get 16GB RAM or more (we always recommend that you buy the most amount of RAM you can afford because it isn’t possible to upgrade it later.) If you feel you need to max out the RAM you have the choice to go up to 192GB–unfortunately the price of the additional RAM (which you won’t be able to update later) is high.
All those disadvantages aside, the Apple silicon Macs do offer some excellent positives such as incredibly long battery life; cool, quiet operation; and benchmark-beating specs. If you don’t need to run other operating systems and you don’t need to use software that isn’t yet native to the M1 chip the M-series Macs will not hold you back.
Choosing the best Mac for app development
We have already established that you will need a Mac that can run macOS 13 Ventura 13.5 or later in order to use the latest version of Xcode, and here are the Mac that can run Ventura:
- MacBook models from 2017 or later
- MacBook Air models from 2018 or later
- MacBook Pro models from 2017 or later
- Mac mini models from 2018 or later
- iMac models from 2017 or later
- iMac Pro (all models)
- Mac Pro models from 2019 or later
- Mac Studio (all models)
So which of these Macs would be best?
If you were to consider every Mac included above that would be a huge range of Mac laptops and desktops. Some are better suited to app development than others. You might find a Mac that looks like a bargain, but another Mac could offer much more for only a little extra money.
To help you decide on the best Mac for your needs we’ll look at the following requirements below: screen, portability, RAM, CPU, storage, battery life, ports and peripherals while assessing each Mac’s suitability for coding.
Best MacBook for developers
In this section, we will look at each Mac available now and discuss its merits as a coding machine. If you are trying to decide between MacBook Air and a MacBook Pro we’ll address this next. However, a Mac mini or Mac Studio may suit you better if you are looking for the most bang for your buck in which case you may want to skip to the best Mac for development section.
Apple 14-inch MacBook Pro (M3 Pro, 2023)
The 14-inch MacBook Pro with an M3 Pro chip is a good choice for developers. It will allow you to kit it out with 36GB RAM if you don’t feel that the 18GB that comes as standard is enough. How much RAM you need depends on the kind of development work you are doing. The total RAM needed will depend on the requirements of the applications you need and your development tools, you’ll also need to consider the RAM requirements if you want to run multiple containers or virtual machines on your Mac. We think you will need 16GB RAM at the minimum, and since the machine ships with 18GB as standard, you should be fine here. If you are buying a new Mac then we’d recommend that you get as much RAM as you can afford as a build-to-order option to future-proof your purchase because it’s been years since it was possible to update the RAM on MacBooks.
You’ll also get a 11- or 12-core CPU and 14- or 18-core GPU. When it comes to the processor–the CPU–there is no difference between the M3 Pro and M3 Max (excluding the entry-level Pro which has fewer processor cores). There is a bigger difference when it comes to GPU cores though. However, as a developer, the number of GPUs may matter less, unless you are planning to play games or use apps that require powerful graphics.
There is an even faster chip on offer which supports even more memory. The M3 Max is an option in both the 16-inch and 14-inch MacBook Pro, but choosing the 14-inch MacBook Pro will save you money if you don’t need the bigger screen and better battery life of the 16-inch model.
You may be intrigued to know that back in November 2021 Twitter, Uber, and Shopify announced that they had given their developers M1 Max MacBook Pro machines. The reason they chose to go with the M1 Max is because they found that compilation time, specifically Android build time, was cut in half.
The main reason to choose the M3 Max as a developer would be to get the maximum 128GB RAM and 40 GPU cores. If you configure the 14-inch MacBook Pro with those specs it will cost $4,699/£4,799, which is $300/£300 less than the same configuration on the 16-inch model.
The MacBook Pro comes with either 512GB or 1TB storage as standard. You can configure up to 8TB storage if necessary, but our advice would be that you shouldn’t need a lot of storage on the basis that your code shouldn’t take up a lot of space–if it does you might need to look at your code.
Buy the MacBook Pro from Apple or check out the best MacBook Pro deals right now here: Best MacBook Pro deals.
Apple 16-inch MacBook Pro (M3 Pro, 2023)
The 16-inch MacBook Pro is practically identical to the 14-inch model and offers the same options for the M3 Pro or M3 Max chip. The big differences are the bigger screen–useful if you need lots of windows open at once–and better battery life. Those two things may be really important to you. They come at a price though–generally $300/£300 more than the same on the 14-inch MacBook Pro.
Do you need the bigger screen? One of the most useful things for a coder is a big screen. As a developer you will probably have several programs and windows open at once: a web browser, a text editor, and the Xcode IDE (Integrated Development Environment) to name a few. You will benefit from a large screen or things will feel uncomfortably cramped (even more so if you are using Unity3d for game development, for example).
However, if you want to use a big screen there is nothing to stop you plugging an external display into your MacBook Pro. A separate screen is a good option if you are looking for a portable Mac. That way you have the benefit of being able to code wherever and whenever inspiration hits, and benefit from a bigger screen when you are at your desk. What about when you aren’t at your desk though? If you want as much screen as you can get on a Mac laptop then the 16-inch MacBook Pro is the one to pick.
While we are discussing the screens. The 14-inch and 16-inch MacBook Pro offer Pro Motion, which means refresh rates up to 120Hz. Refresh rates are adapted according to what’s on the screen at the time. There are certainly applications that will benefit from this more than others. It’s questionable how much of a benefit it will be to developers.
The 14-inch and 16-inch MacBooks are able to go up to 1,000 nits sustained (full-screen) brightness, 1,600 nits peak brightness (although the extra brightness is only utilized by certain apps and for HDR content, so most of the time it will only go to 600 nits). The M2 MacBook Air doesn’t offer Pro Motion and brightness is limited to 500 nits.
Buy the MacBook Pro from Apple or check out the best MacBook Pro deals right now here: Best MacBook Pro deals.
Apple 14-inch MacBook Pro (M3, 2023)
The 13-inch M2 MacBook Pro has been replaced by a 14-inch M3 MacBook Pro and it is a good option if you are on a budget, although we do suggest you upgrade to 16GB RAM at the minimum (+$200/£200), or 24GB (+$400/£400) if you can afford it.
The reason we’ve picked the 14-inch MacBook Pro over the MacBook Air is to do with how well the machine would cope if you were really pushing it. The MacBook Pro includes a fan where the MacBook Air doesn’t so it will be better able to cool itself, rather than throttling the machine to cope with the pressure.
One disadvantage of the M3 version of the 14-inch MacBook Pro (and the MacBook Air) is that it only supports one external display (although there are workarounds, read: How to use dual monitors with M1/2/3 Macs). If you need more than one display (in addition to your built-in display) then you would be wise to choose an M3 Pro-powered version of the 14-inch or 16-inch MacBook Pro, as those models can support three external displays.
Alternatively, the Mac mini can support a second display via HDMI, for two displays total. While the Mac Studio can support up to five displays.
Apple 15-inch MacBook Air (M2, 2023)
There are three different MacBook Air available. A $999/£999 M1 MacBook Air that is the cheapest Mac laptop you can buy, a M2 MacBook Air with a 13.6-inch screen went on sale in July 2022 (and costs just $100/£150 more than the M1 MacBook Air). We discuss these models in our comparison of the M1 and M2 MacBook Air.
However, there is an even bigger MacBook Air on sale as of June 2023, giving you the benefits of the lighter, cheaper Mac laptop, without sacrificing screen space. For a lot less than the 14-inch MacBook Pro, the 15-inch MacBook Air screen gives you a decent amount of display space to view code and work with multiple windows (although we’d always recommend plugging into an external monitor when you are at your desk.)
If you were thinking of getting a MacBook Air for casual app development we’d recommend it as an option. Upgrade the RAM to at least 16GB though.
If you needed something for more extensive coding then it might not have the uumph though. You could expect faster compile times from the M3 version of the 14-inch MacBook Pro mentioned above. As we said, one of the biggest differences between the MacBook Pro and MacBook Air is that the Air lacks a fan, which could mean that it slows down in order to avoid overheating during more intensive activity, so keep that in mind.
Buy the MacBook Air from Apple or check out the best MacBook Air deals right now here: Best MacBook Air deals.
Best Mac for coding
Actually, some of the best Macs for developers are desktop Macs, which generally offer more power for less money. So if you don’t mind being tied to your desk these are a good options:
Apple Mac mini (M2 Pro, 2023)
The Mac mini is an attractive package and we expect many developers will be wondering whether to get one. It’s the cheapest Mac going, although you will have to factor in the cost of a monitor and keyboard and mouse – but you probably have them anyway.
With the Mac mini you can get an impressive and powerful machine for a fraction of the price of a similarly speced alternative Mac. For example, for $599/£649 you can get a M2 Mac mini with 8-core CPU, 10-core GPU, 256GB SSD, 8GB RAM (update that to 16GB or for another $200/£200). A MacBook Air with the exact same specs would cost more than double that at $1,299/£1,349.
There’s an even better Mac mini to consider though. The M2 Pro Mac mini costs $1,299/£1,399 and comes with 10-Core CPU, 16-Core GPU and 16GB unified memory as standard. It also features four Thunderbolt 4 ports compared to two on the M2 Mac mini. If you were to buy a similarly specced 14-inch MacBook Pro you’d have to spend $1,999/£2,129. We’re not sure that the extra $700/£730 is worth spending unless you really need a laptop.
Buy the Mac mini from Apple or check out the best Mac mini deals right now here: Best Mac mini deals.
Apple Mac Studio (M2 Max, 2023)
If you need more power than the Mac mini M2 Pro offers then look to the Mac Studio with M2 Max (or the M2 Ultra version if you are really power-hungry). This machine offers maximum power at a lower price than the equivalent Mac. Sure you will need to plug in a display, but if you already have one that won’t be a big issue, and even if you don’t, a decent display doesn’t have to cost a fortune.
The M2 Max version of the Mac Studio means you get up to 96GB RAM, a mass of ports, plus enough GPU and CPU cores to keep everything smooth. At $1,999/£2,099 it might seem a lot of money, but compared to a roughly equivalent 14-inch MacBook Pro M2 Max at $3,099/£3,349 it’s a decent saving.
Buy the Mac Studio from Apple or check out the best Mac Studio deals right now here: Best Mac Studio deals.
Can Xcode run on a PC?
As we said above, there is not a version of Xcode for Windows. You need a Mac to run Xcode. There are a few ways around this limitation, for example, you could pay to access a Mac from your PC via the cloud and do your coding there. Services like macincloud or MacStadium enable developers to offload Xcode builds to Macs so they can test iOS and Mac apps. But it might just be cheaper and more efficient to buy a Mac.
It’s also illegal to run macOS on a PC–although some developers will find ways of running macOS on a PC, be it via a VM or a tool like VirtualBox, or because they have built a Hackintosh. We wouldn’t recommend going to such lengths, but you can read about how to install macOS on a PC here.
You might think you will get away with breaking the legal agreement with Apple not to run macOS on a PC, but remember you are going to be asking them to approve your app, so don’t give them any reason to say no! Attempting to run Xcode on something other than a Mac also means you are likely to experience issues and you will never know if it is your code or the dodgy installation you are using. If your app matters that much to you then use the right equipment.
There are alternatives to Xcode that will allow you to make an iOS app on a PC.
Can I use Flutter to develop iOS and macOS apps without a Mac?
Flutter is an open-source development kit from Google that makes it easy to create an app that can be used across a variety of platforms. It means that developers only need to code once and then the app can be converted to iOS, Android and others. Understandably there are many wondering if this process means developers can bypass the necessity to use a Mac.
In a word, no, although you could use Flutter to create an app for multiple platforms on a Linux machine or a PC, you will still need to use a Mac to test the application and submit it to Apple for distribution on the App Store.
Flutter can be installed on macOS alongside Xcode. If you have an M1 Mac you might be concerned that Flutter isn’t yet M1 optimized, but it can be used via Rosetta. Download Flutter here.
Can I develop on an iPad?
There is one other option, you could code on an iPad, the best option would be an iPad Pro with a separate keyboard. Read: A developer’s week working from the iPad for one developer’s experience using an iPad.
How to get a cheap Mac for coding
Sometimes, as much as you would love to own the best and most powerful Mac, the budget just won’t stretch above £1,000/$1,000. Maybe that is more than you are willing (or able) to pay. Luckily there are a few options:
Student discount
If you are a student, check out Apple’s education store to get a discount on your new Mac. Read more here: How to get an Apple student discount at Apple’s Education Store.
Refurbished store
Apple sells Macs that have been returned to it. These could be ex-display Macs from Apple Stores, or they might be Macs that were returned due to a fault that has since been fixed, or it might be old stock that the company is selling after a new model has launched. You can pick up some good deals here. See: How much can you save at Apple’s Refurbished Store?
Reseller discounts
You may also be able to find a good deal on one of the previous generation MacBook Pro from a reseller. Check out our best deals:
Best MacBook Pro deals this month
Rent a Mac in the cloud
If you really can’t afford an adequately specced Mac for programming your app on you could rent one in the cloud. For example macincloud or MacStadium and get access to Mac servers from $20 a month.
AWS also offers some Mac mini models powered by the AWS Nitro System. Plus customers can choose from macOS Mojave (10.14), macOS Catalina (10.15), macOS Big Sur (11), and macOS Monterey (12) as Amazon Machine Images (AMIs).
Want to know even more about programming on a Mac? Read:
- Best programming language for Mac
- How to make apps with Apple Swift 5
- How to use Swift playgrounds
- How to learn Swift: books, courses, guides
- How to learn Python coding on a Mac