App Store Compliance Playbook

App Store and Google Play rejection playbook

The short answer. Many rejections trace back to a few documented causes. A demo account that does not work, a privacy declaration that does not match what the app and its SDKs really collect, missing in-app account deletion, digital goods sold outside in-app purchase, and an incomplete or placeholder build. This playbook maps documented rejection patterns to the rule behind each one and the fix, and ships a guard that flags selected risks in your project before you submit.

Start here

You are Read this
About to submit Pre-submission checklist
Rejected on the App Store Apple rejection map
Rejected on Google Play Google Play rejection map
Want to appeal Root causes and the appeal playbook
Building a specific kind of app Rejection map by app type
Using Expo, React Native or Flutter Cross-platform frameworks

Laws and deadlines

Privacy, security and payments

Frequently asked questions

Why was my app rejected under Apple guideline 2.1? The reviewer could not fully use the app. Usually a broken demo account, a backend that was down, placeholder content or an in-app purchase that did not load.

Do I need a privacy manifest? Yes, for iOS apps that call required-reason APIs. SDKs on Apple’s list of commonly used SDKs must ship their own manifest, and signatures when used as binary dependencies. A missing API declaration triggers ITMS-91053 on upload.

Do I need in-app account deletion? Yes. Apple requires deletion to start inside the app. Google requires an in-app path plus a web page where users can request deletion.

Can I use Stripe instead of in-app purchase? For physical goods and real-world services, yes. For digital goods it depends on the storefront. In-app purchase is the default, the EU allows alternative payment processing, and US link-out rules loosened in 2025.

How many testers does a new Google Play account need? Personal accounts created after 13 November 2023 need a closed test with at least 12 testers opted in for 14 days in a row before they can apply for production access.

Does the EU AI Act affect my app? Possibly. Article 50 transparency duties apply from 2 August 2026, and which ones bind you depends on whether you are a provider or a deployer.

More answers in the Q&A discussions.

Run the guard

git clone https://github.com/mjmirza/app-store-compliance ~/repositories/app-store-compliance
bash ~/repositories/app-store-compliance/scripts/install.sh install

Maintained by Mirza Iqbal. Not affiliated with Apple or Google. App Store is a trademark of Apple Inc. Google Play is a trademark of Google LLC.