Guideline 5.1.2 rejection: Data Use and Sharing — tracking
How the rejection usually reads: "Your app uses the AppTrackingTransparency framework, but we are unable to locate the App Tracking Transparency permission request" / "the privacy label does not match"
Why it happens
Tracking means linking user or device data with third-party data for advertising or sharing it with a data broker. If the build contains an ad or attribution SDK, the App Privacy label must say so and the ATT prompt must appear; if the label says you track but the reviewer never sees the prompt, that is a 5.1.2 rejection. The scan checks the SDKs and the ATT symbol; the label lives in App Store Connect and can be pasted into the listing check.
What can be checked before you submit
2 of RejectProof’s checks map to Guideline 5.1.2. Each one reads your .ipa — no upload — and reports the evidence with a fix.
- Tracking (IDFA) without App Tracking Transparency prompt text
PB-09 · guideline 5.1.2 · likely rejection
You must ask the user for tracking permission and explain why. Expo: install expo-tracking-transparency and add NSUserTrackingUsageDescription. Swift: add NSUserTrackingUsageDescription to Info.plist and call ATTrackingManager.requestTrackingAuthorization.
- ATT used but the tracking usage description is empty
PB-13 · guideline 5.1.2 · likely rejection
See PB-09. This check confirms the same problem with a second piece of evidence (ATT symbol + empty text). Put a real sentence in NSUserTrackingUsageDescription.
What a scan cannot tell you
Static checks read the build; they do not run it. Whether a reviewer likes your design, agrees with your content, or considers the app “sufficiently different” is their call. Fix the mechanical layer first so the human review is about your product, not about a missing plist key.