Privacy manifests

Modern platform Mid-level Swift 5.0+ iOS 17+ Reviewed By Alok Singh

Pick the fix

App Store Connect warns that your app uses UserDefaults without a declared reason. Fix?

Options
Hint 1 of 1

Which file declares API reasons?

Choose an answer, then open Show answer below to check it.

Show answer

Answer: A Add PrivacyInfo.xcprivacy with the UserDefaults API category and reason CA92.1, and update SDKs that lack manifests

Correct. That declares the approved reason for app-only defaults.

Why not the others?
  • B Stop using UserDefaults. It's unnecessary; declaring the reason is enough.
  • C Mention it in the privacy policy. The manifest is what's checked.
  • D Ignore the warning. Missing declarations can block submission.

30-second answer

A privacy manifest (PrivacyInfo.xcprivacy) declares what data your app or SDK collects and why, whether it tracks and which tracking domains it uses, and the approved reasons for using required-reason APIs such as UserDefaults, file timestamps, system boot time and disk space. App Store Connect checks it and reports missing declarations, and third-party SDKs must include their own.

Practise saying it · 30 s. No recording, just a timer

Explain privacy manifests.

Say your answer out loud, then check which of these points you covered:

  • Data collected and tracking
  • Required-reason APIs
  • SDK manifests

Deep dive

UserDefaults for app-only data uses reason CA92.1.

Tracking domains are blocked until the user grants ATT permission.

Xcode can generate a privacy report from all manifests in an archive.

Keep the manifest aligned with your App Store privacy labels.

Common mistakes

  • Forgetting that UserDefaults is a required-reason API.
  • Using outdated SDK versions without manifests.

Senior take & follow-ups

Seniors keep manifests, labels and SDKs consistent and checked in review.

Follow-up questions

Think of your answer first, then open the hint.

  1. What happens to tracking domains without ATT?

    Show hint

    Connections to them are blocked.

  2. How do you see all declarations?

    Show hint

    Generate the privacy report from the archive.

Suggest a fix if something here is wrong or out of date.