App Store Connect error guide

Fix ITMS-91056: Invalid Privacy Manifest

ITMS-91056 means App Store Connect found a PrivacyInfo.xcprivacy file with malformed plist syntax, unsupported keys, incorrect value types, invalid domains, or incompatible Required Reason API values.

Check your rejection locally

What the error means

Start with the exact path in Apple’s email. An app can contain multiple manifests, and a valid main-app file does not repair an invalid manifest inside a framework.

Common causes

The XML property list is malformed or its root value is not a dictionary.
A supported key uses the wrong plist type, such as a string where Apple expects an array or Boolean.
NSPrivacyTrackingDomains includes a URL scheme, port, path, query, fragment, trailing slash, or empty value.
A Required Reason API category is paired with an empty or incompatible reason-code array.

How to fix it

  1. 1Locate the manifest path Apple named, including manifests nested inside frameworks.
  2. 2Paste or upload that XML file into the local validator.
  3. 3Correct structural errors first, then review every item marked Developer confirmation.
  4. 4Run plutil -lint locally and validate the archived product before the next upload.

Apple documentation

FAQ

Frequently asked questions

What causes ITMS-91056?

Common causes include malformed XML, unknown keys, incorrect plist types, invalid tracking-domain strings, empty arrays, and category/reason mismatches.

Why does plutil pass when App Store Connect rejects the file?

plutil checks property-list syntax. App Store Connect also validates Apple-specific keys and allowed values.

Can tracking domains contain https://?

No. Apple expects a domain or subdomain only, with no protocol, path, query, fragment, port, or trailing slash.

Which manifest should I fix?

Fix the exact file path in Apple’s email. It may belong to the app or to a bundled third-party framework.

Check the actual email and manifest

Get evidence, source classification, fix steps, and a locally generated correction draft. No login and no file upload.

Open the free checker