Set the bundle ID before you add capabilities to your app and before you upload or export your app.
The default bundle ID is a string formatted as a reverse-domain—for example, com.MyCompany.MyProductName
. Xcode creates this string by concatenating the organization identifier and the product name (with spaces removed) that you enter when you create your project from a template.
For watchOS apps, the embedded WatchKit app and WatchKit extension targets must have the same bundle ID prefix as the iOS target. If you change the iOS app’s bundle ID, you must change the WatchKit app and WatchKit extension target’s bundle ID to match. The WatchKit app target must have the format [Bundle ID].watchkitapp
and the WatchKit extension target must have the format [Bundle ID].watchkitextension
.
For tvOS apps that share the App Store Connect app record of an iOS app, the tvOS app must have the same bundle ID as the iOS app.
For macOS apps, ensure that every bundle ID is unique within your app bundle. For example, if your app bundle includes a helper app, make sure that its bundle ID is different from your app’s bundle ID.
For macOS versions of an iPad app, the macOS bundle ID is derived from the iOS bundle ID, so you only set the iOS bundle ID. To learn more, go to About the Mac app built with Mac Catalyst bundle ID.
Important: The bundle ID in the Xcode project must match the bundle ID in App Store Connect. If you previously uploaded your app to App Store Connect, you can no longer change the bundle ID in App Store Connect.
In the project editor, choose the target, click General, then reveal the Identity settings.
Enter the bundle ID in the Bundle Identifier field.