How-To

How to Upload a Unity Game to TestFlight from Windows

Updated August 2026 · 7 min read · by the MacFree team
Short answerUnity exports the Xcode project on Windows; the compile, code-sign and upload steps run on a cloud macOS machine. With a cloud build service or an Editor tool like MacFree, a Windows PC can put a build on TestFlight in about 15–25 minutes. You need a paid Apple Developer account and an App Store Connect API key.

TestFlight is how you get your Unity game onto real iPhones for testing. Here's the complete path from a Windows PC — including the parts most tutorials skip.

What you need before you start

Step 1 — Set your bundle identifier

In Unity, open Player Settings → Other Settings and set a unique reverse-DNS bundle identifier such as com.yourstudio.yourgame. Don't leave Unity's default com.DefaultCompany... — Apple rejects it. This value must match your App Store Connect app record exactly.

Step 2 — Create the app record in App Store Connect

Go to App Store Connect → Apps → + → New App, and register your bundle ID. Without this record, an upload has nowhere to land and fails after the build has already run.

Step 3 — Generate an App Store Connect API key

Under Users and Access → Integrations → App Store Connect API, generate a key with the App Manager role. Download the .p8 immediately — Apple lets you download it only once — and note the Key ID and Issuer ID. This key is what lets a machine upload on your behalf without your password.

Step 4 — Create your signing material

You need an iOS distribution certificate and a matching App Store provisioning profile for your bundle ID. Traditionally this means Xcode or the Apple Developer portal plus openssl. It can also be done entirely through the App Store Connect API from Windows, which is how automation tools avoid the Mac requirement.

Step 5 — Build, sign and archive

Unity exports the Xcode project on Windows, but the final compile and code-sign must run on macOS. This is the step that goes to a cloud machine — Unity Build Automation, a CI runner, or a tool that manages it for you.

Step 6 — Upload and wait for processing

The signed .ipa is uploaded to App Store Connect using your API key. After a few minutes of Apple-side processing the build appears in TestFlight, where you can add internal testers or a tester group.

Two things commonly bite here: your build number must be unique and higher than the last one for that version, and a first upload often shows "Missing Compliance" until you answer the encryption question.

The shortcut

MacFree compresses steps 4–6 into one button inside the Unity Editor. It creates the certificate and profile, runs the cloud build, signs, stamps a unique build number, and uploads to TestFlight — from Windows or Linux, with no Mac and no Xcode.

Get to TestFlight in three clicks

Connect your keys once, then build and ship from the Unity Editor on Windows.

Get MacFree on the Unity Asset Store →

What do I need to submit a Unity game to TestFlight?

Pulling the requirements into one list, this is the complete set:

Notably, a Mac is not on that list — only the build machine needs macOS, and it can be in the cloud.

Frequently asked questions

What do I need to submit a Unity game to TestFlight?

You need a paid Apple Developer Program membership, a unique bundle identifier registered with Apple, an app record in App Store Connect, an App Store Connect API key, an iOS distribution certificate with its private key, a matching App Store provisioning profile, a 1024x1024 opaque app icon, and a unique increasing build number for each upload.

Can I upload a Unity game to TestFlight from Windows?

Yes. Unity exports the Xcode project on Windows, and the compile, code-sign and upload steps run on a cloud macOS machine. Tools such as MacFree or a CI service handle those steps, so you can reach TestFlight without owning a Mac.

How long does a TestFlight build take to process?

The cloud build typically takes 15–25 minutes for a small to medium Unity project. Apple's processing after upload usually adds a few minutes before the build is available to testers.

Do I need a paid Apple Developer account for TestFlight?

Yes. TestFlight distribution requires a paid Apple Developer Program membership ($99/year). This is an Apple requirement and cannot be bypassed by any third-party tool.