Xcode Archive & Export: Step‑by‑Step Guide to Preparing an App Store Connect .ipa
Learn how to archive, verify, and export an iOS app from Xcode for App Store Connect submission, with prerequisites, checks, and recovery tips.
18 Oct 2026, 18:19 UTC

Desired outcome
The goal is to produce a signed .ipa file that can be uploaded to App Store Connect and appear in the version list of your app.
Prerequisites
- Xcode 15 or later installed on macOS 13+.
- An active Apple Developer Program membership.
- A provisioning profile that matches the app’s bundle identifier.
- The project must use a supported architecture (arm64 for devices, arm64e for App Store).
- If the app uses SwiftUI, Xcode 13+ is required for live preview integration; older versions may cause archive failures.
Focused procedure
- Open Xcode and create a new project (File → New → Project). Choose a template that supports SwiftUI, e.g., “App”. Name the project
MyAppand set the bundle identifier tocom.example.myapp. - Add a SwiftUI view (e.g.,
ContentView.swift) and ensure the Info.plist lists the correct supported interface orientations. - Select the scheme that corresponds to the target you intend to ship (usually the default scheme).
- From the menu bar choose Product → Archive. Xcode builds the app, creates an archive, and opens the Archive window.
- In the Archive window verify that the “Export” button is enabled. If it is greyed out, check the signing settings: the provisioning profile must be attached to the scheme and the bundle identifier must match.
- Click the “Export” button. The Export assistant appears with options such as “App Store Connect”, “Ad Hoc”, “Enterprise”, etc. Choose “App Store Connect”.
- In the next screen you can select the export method (e.g., “Upload to the App Store”), the distribution channel, and optionally add release notes. Confirm the settings and click “Next”.
- Choose a destination for the generated .ipa file (default is
/Applications/Xcode.app/Contents/Developer/Archives). The assistant will create the file and display its size. - After export, open Finder and run
du -hon the .ipa to confirm it is under the 10 GB limit. If the size exceeds the limit, consider removing unused assets or using incremental builds. - Open App Store Connect, navigate to My App → iOS → Versions, and click “+”. Drag the .ipa into the upload area or use the “Select a file” button. Wait for the upload to finish.
- When the upload completes, the new version should appear in the version list. Click “View Live” to verify that the app launches correctly on a test device.
Expected checks
- Code signing: the archive must show a valid signing identity and no “Code signing required” warnings.
- Provisioning profile match: the profile’s bundle identifier must exactly equal the app’s bundle identifier.
- Architecture support: verify that the archive contains arm64 (or arm64e) slices; you can inspect the archive with
xcodebuild -showBuildSettingsor by opening the .xcarchive in Finder. - Device orientation: the Info.plist must list the required orientations; mismatched orientations cause rejection during upload.
- Archive size: ensure the .ipa is below the 10 GB limit; large apps may need to be split or built with “Only Installing” to reduce size.
- SwiftUI integration: in Xcode 13‑14, the live preview may interfere with archiving; rebuild the project without preview files or upgrade to Xcode 15 where the issue is resolved.
Recovery options
If the archive is rejected during upload, the most common cause is a mismatched provisioning profile. Re‑create the profile in the Apple Developer portal, download it, and re‑open the scheme’s “Signing & Capabilities” tab to select the new profile. Then repeat the archive step.
When the Export assistant reports a size‑limit error, open the archive, delete unused assets or run a clean build (Product → Clean Build Folder), and re‑archive. For very large apps, consider splitting the archive into “App Store Connect” and “Ad Hoc” exports, or use Xcode’s “Export for App Store” with “Includes Bitcode” disabled if bitcode is not required.
If the build fails to appear in App Store Connect after upload, verify that the Apple ID used for upload has the “App Manager” role and that the version number is unique and higher than the previous one.
Verification checklist
- Archive window shows “Export” enabled and no signing warnings.
- Exported .ipa size < 10 GB.
- Upload in App Store Connect completes without errors.
- New version appears in the version list and passes the “App Store Connect TestFlight” review.
Summary
Archiving and exporting in Xcode is a built‑in, version‑stable workflow that turns a compiled app into a distributable .ipa. By confirming provisioning, architecture, and size constraints before export, you avoid the most frequent rejection reasons. Follow the step‑by‑step procedure, run the verification checks, and use the recovery steps outlined above to keep the process smooth.
0 replies
A thoughtful contribution can make all the difference. Be the first to share one.