ITMS-91064 persists across 8+ builds despite verified-correct PrivacyInfo.xcprivacy

I'm getting the following error on every submission (Build 1 through 8), even after multiple clean rebuilds and manual verification of the raw manifest content:

ITMS-91064: Invalid tracking information - A PrivacyInfo.xcprivacy file contains invalid tracking information at the following path: "PrivacyInfo.xcprivacy" and also "PlugIns/[WidgetName].appex/PrivacyInfo.xcprivacy" NSPrivacyTracking must be true if NSPrivacyTrackingDomains isn't empty.

What I've verified locally (via plutil -p and raw cat on both the .xcarchive and the exported .ipa):

  • Main app PrivacyInfo.xcprivacy: NSPrivacyTracking=false, NSPrivacyTrackingDomains=[] (empty)
  • Widget PrivacyInfo.xcprivacy: same, false + empty
  • No duplicate keys found in either file
  • Generated an official "Privacy Report" from Xcode Organizer - no obvious conflict at the app or widget level was shown
  • Updated GoogleMobileAds/UserMessagingPlatform SDKs to the latest version - issue persists
  • Bundle version increments correctly with each build (confirmed via Info.plist inside the actual uploaded archive)

Is there a known caching issue on the App Store Connect validation side, or something else I might be missing? Happy to share the Privacy Report PDF and archive details if helpful.

Answered by N_Shoki in 902601022

Update: That was exactly it! Removing the NSPrivacyTrackingDomains key entirely (instead of leaving it as an empty array) from both the Main App and Widget PrivacyInfo.xcprivacy files resolved the issue. Build 10 was accepted after 8+ consecutive rejections with the same error.

Thank you so much for taking the time to help, Albert — this saved me a huge amount of troubleshooting. Marking this as the solution for anyone else who runs into the same issue.

Accepted Answer

Thanks for the post.

App Store Connect's validation script often throws ITMS-91064 if NSPrivacyTracking is set to false, but the NSPrivacyTrackingDomains key still exists in the file even as an empty array.

Are you leaving the NSPrivacyTrackingDomains empty? Instead of leaving it empty, delete the NSPrivacyTrackingDomains key entirely from both the Main App and the Widget PrivacyInfo.xcprivacy files.

Let me know if that works.

Albert  WWDR

Update: That was exactly it! Removing the NSPrivacyTrackingDomains key entirely (instead of leaving it as an empty array) from both the Main App and Widget PrivacyInfo.xcprivacy files resolved the issue. Build 10 was accepted after 8+ consecutive rejections with the same error.

Thank you so much for taking the time to help, Albert — this saved me a huge amount of troubleshooting. Marking this as the solution for anyone else who runs into the same issue.

@N_Shoki Glad you were able to submit the app without any errors and thanks for posting the verification for other users searching for that error.

Albert  WWDR

ITMS-91064 persists across 8+ builds despite verified-correct PrivacyInfo.xcprivacy
 
 
Q