Hardware Requirements for iOS Development (May 2023)

From the cheapest viable option to the best value Mac for iOS Developers.

Hardware Requirements for iOS Development (May 2023)
Photo by Dmitry Chernyshov / Unsplash

I see people asking questions about which hardware to get for iOS development quite often, especially beginners just starting out but also sometimes more experienced developers who start running into performance issues with their current Mac. As a former iOS Team lead in two companies where I had to make informed decisions about which hardware to get for what level of developer and where I could test out different Macs on differently sized projects, here are my current recommendations.

In the end, I also answer some frequently asked questions:

This article was last updated in May 2023. If 6 months have passed since then when you read this, ping me on Twitter & remind me to update.

The Cheapest Mac for Developers ($750+)

Hardware:

M2 Mac Mini (8GB RAM & 256GB SSD) for $600 (or $470 M1 refurbished)
+ monitor (at least $120)
+ wireless mouse & keyboard (at least $30)

Pros:

  • Fast build times with future-proof M2 Apple Silicon processor
  • Fast SSD for opening Xcode projects quickly (many small files)
  • Cheapest overall option with a total price (including periphery) of ~$750
  • Built-in ports, no adapter needed (2x USB-A, 2x USB-C, HDMI, LAN)

Cons:

  • Immobile (not a Laptop)
  • Requires additional periphery (mouse, keyboard, monitor)
  • 256 GB SSD is just enough for development, no space for other media
  • 8GB RAM limits concurrent simulators & tooling running in background

Upgrade Options

  • Get 512GB SSD if you plan to use it for other purposes as well (+$200)
  • OR buy an 8TB external hard drive for the same price (for media only)
  • Get 16 GB RAM if you want to have many apps/simulators open (+$200)
  • Get the 24" iMac for a 4.5K monitor, Apple mouse & keyboard (+$700)

When money is the main concern, e.g. this is just a hobby for you, and you know you’re going to be coding from a fixed place. Or if you want to use the Mac as a media server as well for your home (with an external hard drive).

The Cheapest Mobile Mac for Devs ($1,000+)

Hardware:

13" MacBook Air (8GB RAM & 256GB SSD) for $1,000 ($850 refurbished)

Pros:

  • Fast build times with future-proof M1 Apple Silicon processor
  • Fast SSD for opening Xcode projects quickly (many small files)
  • Mobile (Laptop with 13" built-in screen, keyboard & trackpad)

Cons:

  • More expensive than the Mac mini (even with peripherals included)
  • Using an external hard drive instead of upgrading SSD is not viable
  • You will need to buy and take with you a USB-C adapter for compatibility
  • 256 GB SSD is just enough for development, no space for other media
  • 8GB RAM limits concurrent simulators & tooling running in background

Upgrade Options

  • Get 512GB SSD if you plan to use it for other purposes as well (+$200)
  • Get 16 GB RAM if you want to have many apps/simulators open (+$200)

When money is a concern but you need a Laptop anyways, e.g. because you’re a student, and you want to be flexible and take it always with you.

The Best Value Mac for Developers ($2,500+)

Hardware:

16" MacBook Pro (16GB & 512GB) for $2,500 ($1,930 M1 Pro refurb.)

Pros:

  • 12-core M2 Pro with another ~40% faster build times (compared to M2)
  • Larger & higher quality 4K, 120Hz, HDR screen (compared to Air)
  • Longest battery life in any Mac ever (longer than M2 Max or 14" variants)
  • Built-in card-reader and HDMI port & 1 extra USB-C (compared to Air)
  • Fast 512GB SSD for opening Xcode projects quickly (many small files)
  • Fast 16 GB RAM large enough for nearly all developer workflows
  • Mobile (Laptop with 16" built-in screen, keyboard & trackpad)

Cons:

  • Quite expensive (saved built time worth it if coding professionally)

Upgrade Options

  • Get 1TB SSD if you want to have some extra headroom (+$200)
  • Get M2 Max CPU for double GPU power & 32 GB RAM (+$800)

When build performance is your main concern (= professional developers) and you don’t want to waste any money on small improvements, get this.

If you prefer the 14" form factor, that is similarly recommendable but comes with some smaller drawbacks such as a shorter (but still amazing) battery life and louder (but still very silent) fans for just $200 of savings. Beware: The base 14" model which costs $500 less comes with only a slower 10-core CPU!


Want to see your ad here? Contact me at ads@fline.dev to get in touch.

Frequently Asked Questions

Some frequently asked hardware questions and my personal take on them.

Apple Silicon or Intel?

Screenshot of this XcodeBenchmark repository table.

Short answer: Apple Silicon.

Long answer:
Not only does every Apple Silicon Mac beat the most price-comparable Intel Mac in performance. Apple Silicon is also better optimized for specialized tasks such as Machine Learning and comes with a unified memory that helps apps start much faster than with Intel processors.

Don’t take my word for it: This Xcode real-world benchmark shows that even the base M1 CPU with just 8GB RAM in the cheap Mac mini or MacBook Air models beats out every single Intel processor shipped in MacBooks or iMacs, including a maxed-out i9 3.6 GHz 10-core CPU with 128 GB RAM! Only the Intel Mac Pro can beat it with a Xeon 2.5 GHz 28-core CPU, but that again stands no chance against a much cheaper Mac Studio with M1 Ultra.

How much disk space do I need?

Analyzing my current Developer folder size with the app DaisyDisk.

Short answer: At least 256 GB, better 512 GB+.

Long answer:
The current version of Xcode (13.3.1) takes ~32 GB on my machine (mostly due to simulators for iPhone, AppleTV etc. that are shipping with it), but calculate with at least 40 GB as Apple is going to add new simulators for their AR/VR product(s) soonish. When you upgrade to a new major macOS version, you need around ~35 GB of free disk space. When building, Xcode produces a lot of build artifacts, most of them stored in the so-called DerivedData folder — this can easily take 2–10 GB even just for one project. Let’s also leave 10 GB for other apps and tools (e.g. SwiftLint installed via Homebrew) that you will want to install even if you don’t use the Mac for anything else but development. This adds up to a ~95 GB minimum.

While this means it is possible to develop with just 128 GB in theory, you’ll need to always think about disk space with every step you make and clear out caches or older versions of tools all the time. This gets really annoying really fast, trust me, I’ve been there myself. Each time you want to upgrade to a new Xcode version, you’ll need to first uninstall the old version as you don’t have yet another 40 GB of free disk space, for example. Also, you can never install multiple iOS SDKs to test how your app behaves with older iOS versions.

A more realistic minimum calculation therefore is:

  • 40 GB for macOS
  • 80 GB for 2 versions of Xcode installed at the same time
  • 20 GB for having 4 SDK versions installed at the same time
  • 30 GB for build artifacts of 3 different projects at the same time
  • 20 GB for other development-related apps and tools
  • 50 GB for other apps (Pages, Numbers, Notion, Slack, Zoom, etc.)

That adds up to 240 GB, so a 256 GB SSD is just enough to do serious iOS development. But this only works if you exclusively do iOS development on this Mac and don’t use it to sync your iPhone photos or videos on it, for example. If you want to use the Mac for other uses as well, get at least 512 GB SSD. This will also give you the headroom to try out other technologies, like installing Android Studio to try out Android development as well.

How much RAM do I need?

Short answer: At least 8GB, better 16 GB.

Long answer:
8GB is a good start and you should be able to run a single Simulator plus Safari with many tabs easily on it without many hiccups. But as soon as your project gets larger and you start doing two things at once and maybe even have a server or VM running in the background, you’ll be limited by the RAM.

And if you consider ever doing Android development on the machine, too, you definitely need the 16GB option because (unlike iOS Simulators) the Android Emulator can’t efficiently share RAM with the host system.

While the difference is very noticeable when comparing 8GB to 16GB, the differences are much smaller when going from 16GB to 32GB. Matt Gallagher recently wrote a good comparison on Twitter, ending with the final note: “Don’t choose RAM over faster CPU”. I totally agree with that.

What about the Mac Studio?

Short answer: Get the M1 Ultra Mac Studio, if you can afford it. It’s a beast.

Long answer:
The base Mac Studio for $2,000 has a slightly slower 10-core CPU than the best-value MacBook Pro recommended above. You can of course get it to save $500 if you don’t need the MacBook’s amazing screen, speaker system, and mobility. But then you need to pay for a monitor, mouse & keyboard which (as we’re at the professional level here) can cost you about the same unless you have them.

But the M1 Ultra variant for $4,000 is the more interesting device here because it has twice the CPU cores and comes with yet another 40% faster build times compared to the 10-core M1 Pro and thus is still faster than M2 Pro. If money isn’t a concern to you, feel free to get it for the fastest currently possible build times.

💁🏻‍♂️
Enjoyed this article? Check out my app RemafoX!
A native Mac app that integrates with Xcode to help translate your app.
Get it now to save time during development & make localization easy.
👨🏻‍💻
Want to Connect?
Follow me on 👾 Twitch, 🎬 YouTube, 🐦 Twitter, and 🦣 Mastodon.