Xcode is a complete developer toolset for creating apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. Xcode brings user interface design, coding, testing, debugging, and submitting to the App Store into a unified workflow.
Downloading and updating Xcode
The current release of Xcode is available as a free download from the Mac App Store. The Mac App Store will notify you when an update is available or you can have macOS update automatically as it becomes available.
The latest beta version and previous versions of Xcode can be downloaded from the Downloads page. To download Xcode, simply sign in with your Apple ID.Apple Developer Program membership is not required.
Using Xcode
Get step-by-step guidance on how to use Xcode to build, test, and submit apps to the App Store.
Submitting apps to the App Store using Xcode
Xcode provides an integrated workflow for Apple Developer Program members to prepare and submit apps to the App Store. Use the latest version of Xcode available on the Mac App Store to submit your apps or, when available, the latest Release Candidate from the Downloads page.
Don't submit apps built using beta software, as beta versions of Xcode, Operating Systems, and SDKs are for development and testing only.
Learning about changes to Xcode
To learn about the latest features and capabilities in Xcode, see What’s New in Xcode. For update details in the latest released versions, including each beta release, see the Xcode Release Notes.
Minimum requirements and supported SDKs
Xcode is a complete developer toolset for creating apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. Xcode brings user interface design, coding, testing, debugging, and submitting to the App Store into a unified workflow. Downloading and updating Xcode. The current release of Xcode is available as a free download from the Mac App Store. Because my iPad update to iOS 13 then my old app doesn't work correctly, but source code of my App is Swift 2.3 and my Mac also update to Mac OS Catalina, when I download Xcode 8.3 from Apple Developer web site and install it alert Xcode 8.3 is not from Apple so it can't open. Download and Install macOS Catalina. Install Xcode 11 Beta. SwiftUI Tutorial. Create a new APFS Volume. Open up Disk Utility — you can use spotlight by pressing cmd+space: Now right click your main hard drive — it is most likely called Macintosh HD and select Add APFS Volume. Step Two – Install XCode on Windows. Once the macOS Catalina is installed, open it up and switch it on from VMware or VirtualBox. Next, open the App Store and search for XCode. XCode on App Store. On the results, click the XCode then click Get on this window. It will ask for your Apple ID, sign in and it will start.
Xcode Version | Minimum OS Required | SDK | Architecture | Deployment Targets | Simulator | Swift |
---|---|---|---|---|---|---|
Xcode 13 beta | macOS Big Sur 11.3 | iOS 15 macOS 12 tvOS 15 watchOS 8 DriverKit 21 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-15 iPadOS 13-15 macOS 10.9-12 tvOS 9-15 watchOS 2-8 DriverKit 19-21 | iOS 10.3.1-15 tvOS 10.2-15 watchOS 3.2-8 | Swift 4 Swift 4.2 Swift 5.5 |
Xcode 12.5.1 | macOS Big Sur 11 | iOS 14.5 macOS 11.3 tvOS 14.5 watchOS 7.4 DriverKit 20.4 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.7 iPadOS 13-14.7 macOS 10.9-11.5 tvOS 9-14.7 watchOS 2-7.6 DriverKit 19-20.4 | iOS 10.3.1-14.5 tvOS 10.2-14.5 watchOS 3.2-7.4 | Swift 4 Swift 4.2 Swift 5.4 |
Xcode 12.5 | macOS Big Sur 11 | iOS 14.5 macOS 11.3 tvOS 14.5 watchOS 7.4 DriverKit 20.4 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.6 iPadOS 13-14.6 macOS 10.9-11.4 tvOS 9-14.6 watchOS 2-7.5 DriverKit 19-20.4 | iOS 10.3.1-14.5 tvOS 10.2-14.5 watchOS 3.2-7.4 | Swift 4 Swift 4.2 Swift 5.4 |
Xcode 12.4 | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11 (Apple silicon Mac) | iOS 14.4 macOS 11.1 tvOS 14.3 watchOS 7.2 DriverKit 20.2 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.4 iPadOS 13-14.4 macOS 10.9-11.1 tvOS 9-14.3 watchOS 2-7.2 DriverKit 19-20.2 | iOS 10.3.1-14.4 tvOS 10.2-14.3 watchOS 3.2-7.2 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12.3 | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11 (Apple silicon Mac) | iOS 14.3 macOS 11.1 tvOS 14.3 watchOS 7.2 DriverKit 20.2 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.3 iPadOS 13-14.3 macOS 10.9-11.1 tvOS 9-14.3 watchOS 2-7.2 DriverKit 19-20.2 | iOS 10.3.1-14.3 tvOS 10.2-14.3 watchOS 3.2-7.2 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12.2 | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11 (Apple silicon Mac) | iOS 14.2 macOS 11 tvOS 14.2 watchOS 7.1 DriverKit 20 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.2 iPadOS 13-14.2 macOS 10.9-11 tvOS 9-14.2 watchOS 2-7.1 DriverKit 19-20 | iOS 10.3.1-14.2 tvOS 10.2-14.2 watchOS 3.2-7.1 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12.1 | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11 (Apple silicon Mac) | iOS 14.1 macOS 10.15.6 tvOS 14 watchOS 7 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14.1 iPadOS 13-14.1 macOS 10.9-11 tvOS 9-14 watchOS 2-7 DriverKit 19 | iOS 10.3.1-14.1 tvOS 10.2-14 watchOS 2-7 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12 | macOS Catalina 10.15.4 (Intel-based Mac) | iOS 14 macOS 10.15.6 tvOS 14 watchOS 7 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 9-14 iPadOS 13-14 macOS 10.6-10.15.6 tvOS 9-14 watchOS 2-7 DriverKit 19 | iOS 10.3.1-14 tvOS 10.2-14 watchOS 3.2-7 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 11.7 | macOS Catalina 10.15.2 | iOS 13.7 macOS 10.15.6 tvOS 13.4 watchOS 6.2 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.7 iPadOS 13-13.7 macOS 10.6-10.15.6 tvOS 9-13.4 watchOS 2-6.2 DriverKit 19 | iOS 10.3.1-13.7 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.6 | macOS Catalina 10.15.2 | iOS 13.6 macOS 10.15.6 tvOS 13.4 watchOS 6.2 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.6 iPadOS 13-13.6 macOS 10.6-10.5.6 tvOS 9-13.4 watchOS 2-6.2 DriverKit 19 | iOS 10.3.1-13.6 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.5 | macOS Catalina 10.15.2 | iOS 13.5 macOS 10.15.4 tvOS 13.4 watchOS 6.2 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.5 iPadOS 13-13.5 macOS 10.6-10.15.4 tvOS 9-13.4 watchOS 2-6.2 DriverKit 19 | iOS 10.3.1-13.5 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.4.x | macOS Catalina 10.15.2 | iOS 13.4 macOS 10.15.4 tvOS 13.4 watchOS 6.2 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.4.x iPadOS 13-13.4.x macOS 10.6-10.15.4 tvOS 9-13.4 watchOS 2-6.2 DriverKit 19 | iOS 10.3.1-13.4.x tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.3.x | macOS Mojave 10.14.4 | iOS 13.3 macOS 10.15.2 tvOS 13.3 watchOS 6.1.1 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.3 iPadOS 13-13.3 macOS 10.6-10.15.2 tvOS 9-13.3 watchOS 2-6.1.1 DriverKit 19 | iOS 10.3.1-13.3 tvOS 10.2-13.3 watchOS 3.2-6.1.1 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11.2.x | macOS Mojave 10.14.4 | iOS 13.2 macOS 10.15.1 tvOS 13.2 watchOS 6.1 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.2.x iPadOS 13-13.2.x macOS 10.6-10.15.1 tvOS 9-13.2 watchOS 2-6.1 DriverKit 19 | iOS 10.3.1-13.2.x tvOS 10.2-13.2 watchOS 3.2-6.1 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11.1 | macOS Mojave 10.14.4 | iOS 13.1 macOS 10.15 tvOS 13 watchOS 6 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13.1 iPadOS 13-13.1 macOS 10.6-10.15 tvOS 9-13 watchOS 2-6 DriverKit 19 | iOS 10.3.1-13.1 tvOS 10.2-13 watchOS 3.2-6 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11 | macOS Mojave 10.14.4 | iOS 13 macOS 10.15 tvOS 13 watchOS 6 DriverKit 19 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-13 iPadOS 13-13 macOS 10.6-10.15 tvOS 9-13 watchOS 2-6 DriverKit 19 | iOS 10.3.1-13 tvOS 10.2-13 watchOS 3.2-6 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 10.3 | macOS Mojave 10.14.3 | iOS 12.4 macOS 10.14.6 tvOS 12.4 watchOS 5.3 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-12.4 macOS 10.6-10.14.6 tvOS 9-12.4 watchOS 2-5.3 | iOS 10.3.1-12.4 tvOS 10.2-12.4 watchOS 3.2-5.3 | Swift 4 Swift 4.2 Swift 5 |
Xcode 10.2x | macOS Mojave 10.14.3 | iOS 12.2 macOS 10.14.4 tvOS 12.2 watchOS 5.2 | x86_64 armv7 armv7s arm64 arm64e | iOS 8-12.2 macOS 10.6-10.14.4 tvOS 9-12.2 watchOS 2-5.2 | iOS 8.1-12.2 tvOS 9-12.2 watchOS 2-5.2 | Swift 4 Swift 4.2 Swift 5 |
Xcode Download For Catalina Free
Legend
Minimum OS Required: The version of macOS required to install this version of Xcode.
SDK: The version of SDKs included in this version of Xcode.
Architecture: The architectures supported for development by this version of Xcode.
OS: The iOS, iPadOS, macOS, tvOS, and watchOS versions supported by this version of Xcode for developing, installing, and debugging applications.
Simulator: Versions of iOS, tvOS, and watchOS simulators supported for development by this version of Xcode.
Swift: Version of Swift supported for development by this version of Xcode.
Providing feedback and reporting bugs
Your feedback goes a long way toward making Xcode even better. With Feedback Assistant, you can report issues or request enhancements to APIs and tools. Provide detailed information about issues, including your system and developer tool versions, and any relevant crash logs or console messages. To ask questions and find answers from Apple engineers and other developers, visit the Apple Developer Forums.
Invalid private key and certificate pairing
If you receive an error message saying, 'Xcode could not find a valid private-key/certificate pair for this profile in your keychain,” the Keychain Access application on your Mac is missing either the public or private key for the certificate you’re using to sign your app.
This often happens when you're trying to sign and build your app from a different Mac than the one you originally used to request your code signing certificate. It can also happen if your certificate has expired or has been revoked. Ensure that your app’s provisioning profile contains a valid code signing certificate, and that the Keychain Access application on your Mac contains that certificate, the private key originally used to generate that certificate, and the WWDR Intermediate Certificate.
For instructions on how to resolve this and other code signing errors, review the Code Signing Support page.
Apple security updates
For information on the security content of Xcode updates, visit the Apple security updates page.
Xcode is the Mac app that developers use to create apps for Apple’s platforms, like iOS. In this tutorial, you’ll learn how you can download and install Xcode on your Mac.
Here’s what we’ll get into:
- 3 approaches to download and install Xcode on your Mac
- Tips and tricks to keep your Xcode up-to-date
- How to install Xcode betas on your Mac
Ready? Let’s go.
Xcode can only be installed on a Mac. Want to build apps with a PC? Check out your alternatives here.
How To Download Xcode for macOS
How do you download Xcode for macOS? You’ve got a few options:
- Get Xcode via the Mac App Store
- Download Xcode via developer.apple.com/downloads
- Install through Mac App Store CLI (see below)
Let’s walk through the approaches you can use to download and install Xcode on your Mac, and their advantages. We’ll start with the Mac App Store, because that’s the simplest option.
Here’s how you can download and install via the Mac App Store:
- Make sure you’re logged into macOS with your Apple ID
- Open the Mac App Store app
- Search for “xcode” in the search field, at the top-left
- Click on the Xcode app item that appears
- Click on the Get or Install buttom at the top-right to download and install Xcode
There are a few things you should know, though. Xcode is a huge app, about 7 gigabyte (GB) in size. You’ll need about 15 GB of free space on your Mac to install Xcode this way.
Installing via the App Store is simple, easy and seamless. Unfortunately, issues with downloading, like a lost connection, etc., usually means you’ll have to reattempt the download.
Author’s Note: Installing Xcode via the App Store never maxes out my download speed — not even close. On a 500 Mbps fiber line, it regularly drops down to 200 KB/s.
Installing Xcode on Mac
Installing Xcode via the Mac App Store is as simple as clicking Install. However, there’s an approach that gives you more control: developer.apple.com/download.
Here’s how that works:
- Go to developer.apple.com/download and log in with your Apple ID
- Click on More in the top-right of the page, next to Beta and Release
- In the search field on the left, type “xcode” and press Enter
- Locate and click the appropriate version of Xcode in the list
- In the panel slides out, click the
.xip
filename, i.e. Xcode 12.xip and save/download that file onto your Mac
This will download a .xip
file, which includes Xcode. The download size is currently about 7 gigabyte (GB). You’ll need at least twice that size of free storage on your Mac to install Xcode with this approach. Downloading Xcode this way is often faster than through the Mac App Store.
Once you’ve downloaded Xcode, open and unzip the .xip
file. This may take a while. You can then drag-and-drop the Xcode.app
file to your ~/Applications
folder. Finally, start the Xcode app. You’ll be greeted with the following prompt:
Click Install in this prompt. Xcode will now attempt to install the Xcode Command Line Tools on your Mac. They are CLI tools used to compile apps with Xcode, among other things. You often need these tools to work with other programming languages on Mac, as well.
A disadvantage of manually installing Xcode through the Developer portal is that Xcode won’t automatically update. This isn’t necessarily a bad thing, however, because you can use this approach to install multiple versions of Xcode side-by-side. This is helpful for debugging or trying out beta versions of Xcode (see below).
There’s another, more hidden benefit. Installing Xcode through the Mac App Store limits you to the most recent version of Xcode. If your version of macOS or Mac OS X doesn’t support the latest version of Xcode, you can usually install older versions via developer.apple.com!
You can pinpoint the latest version of Xcode that your Mac supports by cross-referencing a few tables on Wikipedia. First, figure out what macOS version you have. Then, go to the Xcode wiki, and find your version of macOS in the min macOS version to run column between Xcode 9.x and 12.x. The version of Xcode you can run is in the row above the one you found. For example, the latest version of Xcode you can run on macOS 10.13.6 (High Sierra) is Xcode 10.1. Keep in mind that running an older version of Xcode often limits for which iOS, Swift and SwiftUI versions you can build.
Updating Xcode to The Latest Version
How do you keep your Xcode up-to-date? Apple regularly releases new versions of Xcode. They typically include bug fixes and performance improvements, as well as new Xcode features, like the minimap.
More importantly, new Xcode versions include new versions of the iOS SDKs, Swift and SwiftUI. You can only use these new technologies with the latest versions of Xcode.
You can update your Xcode to the latest versions like this:
- If you’ve installed Xcode via the App Store, updates happen automatically, or you can manually initiate an update in the Updates tab of the app
- If you’ve manually installed Xcode via developer.apple.com, you’ll also need to manually install the newer version; updates aren’t automatic
How do you know if Xcode has a new version?
- You get a notification on your Mac (if installed via App Store)
- Keep an eye on developer.apple.com/news/releases (official)
- Check out xcodereleases.com
- Follow @XcodeReleases on Twitter
By the way, there’s a 3rd way to download and install Xcode on your Mac. It’s called mas-cli, and it’s essentially a Command Line Interface (CLI) wrapper for the Mac App Store. It uses the App Store – from the command line… Nice!
You can install mas-cli
via Homebrew, a package manager for Mac. Installing mas-cli
via Homebrew happens like this:
You can then list apps installed through the App Store on your Mac, with:
You can then search for Xcode like this:
Then, copy the numerical code you see on screen to install Xcode:
You can find outdated apps with mas outdated
. You can then upgrade all outdated apps with mas upgrade
, or selectively update Xcode by its identifier:
Awesome!
Author’s Note: As I understand it, you’ll need to have installed an app via the App Store before you can install it again with mas-cli
.
Getting Xcode Beta Versions
Apple regularly releases beta versions of upcoming software, like iOS, macOS and Xcode. This enables developers to try out new features before they become available to the general public, and provide feedback and bug reports back to Apple.
How can you download and install Xcode’s beta versions? Here’s how:
- Go to developer.apple.com/download and log in with your Apple ID
- Choose one of the following:
- Click Beta in the top-right:
- Select Applications
- Locate the featured Xcode beta you need
- Click Download
- Click More in the top-right
- Use the search field to find “xcode”
- Locate the Xcode beta you need
- Expand the panel by clicking on it
- Click the
.xip
to download
- Click Beta in the top-right:
- Once you’ve got a
.xip
, unzip it, copy the.app
to your~/Applications
folder, and start the Xcode app.
As we’ve discussed before, you can install multiple versions of Xcode side-by-side with this approach. You can, for example, have the regular Xcode installed via the App Store, and install a beta version of Xcode next to it.
You don’t need to have a paid Developer Account to install betas of Xcode. Just use the free Apple Developer Account. It can occasionally happen that Apple restricts beta software to paid subscribers only, however.
If you’re installing multiple Xcodes, change their filenames to reflect their versions. That makes it easier to tell them apart! Just so you know: when you switch between installed Xcode versions, you usually get that “Install additional components” prompt again. There are ways around that, but it’s simplest to just let it install again whenever Xcode needs to.
Further Reading
Managed to install Xcode on your Mac? Awesome! Now you know how to install Xcode’s betas next to it, and keep everything up-to-date. Here’s what we discussed in this tutorial:
- 3 approaches to download and install Xcode on your Mac
- Tips and tricks to keep your Xcode up-to-date
- How to install Xcode betas on your Mac
Xcode Download For Catalina Download
Want to learn more? Check out these resources: