Bundle identifier problems that fail an App Store upload

A bundle identifier has to be a real reverse-DNS string registered to your team. If it is still one of Xcode’s template values, or it contains characters Apple does not accept, the upload fails rather than the review: you never reach a reviewer, you get an error from App Store Connect.

Can block submissionconfig.bundle-identifier

Why it matters

The bundle identifier is how Apple ties a binary to an App ID, a provisioning profile and an App Store Connect record. Xcode’s new-project templates generate one from the organisation identifier you typed, and a project that was started quickly and never revisited often still carries it. Such an identifier cannot be registered to your team, so the upload is refused.

Apple requires reverse-DNS segments containing only letters, numbers and hyphens. An underscore, a space or an empty segment makes the identifier malformed, and the failure again happens at upload rather than at review.

A subtler case is an identifier that differs between build configurations. That is a legitimate setup, and it is how separate Debug and Release apps are usually built, but it means the identifier you have been testing is not the one you are about to ship. The value that matters is the one in the configuration the archive is built from.

How to fix it

  1. Open the target’s Build Settings and read PRODUCT_BUNDLE_IDENTIFIER for the Release configuration specifically, not the one shown in the General tab, which reflects whichever configuration is selected.
  2. Replace any template value with the reverse-DNS identifier registered to your team, for example com.yourcompany.yourapp.
  3. Confirm the identifier matches the App ID in your developer account and the record in App Store Connect exactly. The bundle ID is one of the few App Store Connect properties that cannot be edited after the record is created.
  4. If the identifier differs per configuration on purpose, check the Release value is the one you intend to ship and that it is the one registered.

The guidelines behind it

Read from Apple’s App Review Guidelines as last updated October 16, 2026.

What ReviewAhead checks

Bundle identifier. The app target must have a real, well-formed bundle identifier.

  • That an identifier is set on the app target at all.
  • That it is not one of the placeholder values Xcode’s templates generate.
  • That it is well formed as reverse-DNS: letters, numbers and hyphens only.
  • Whether the identifier is consistent across build configurations, and reports the values when it is not.

Apple’s own documentation for this requirement: developer.apple.com. Where this page and Apple disagree, Apple is right and this page is a bug.

Scan my projectScan your Xcode project and see whether this one is a problem in your app, free.

All 38 App Store readiness checks