Disclosure: App369 publishes this guide and sells a fixed-price App Fix Ticket for code fixes. Review decisions belong to Apple and Google, so no fix guarantees approval.
Key takeaways
- Read the guideline number in the rejection first: Apple's 2.1, 2.3, 5.1.1 and 4.8 point to something in the build or the listing, while 4.2, 4.3 and 3.1 can mean changing the product.
- If your app supports account creation, Apple and Google both require a way to delete the account inside the app.
- Google Play's Data safety form has to include data collected through third-party SDKs, not only your own code.
- New personal Google Play accounts created after November 13, 2023 must run a closed test with at least 12 testers opted in for 14 days in a row.
- No fix guarantees approval: review decisions belong to Apple and Google.
Pricing an app? Try the free app cost calculator or get a range for your project in the instant quote.
Short answer: a rejection names the rule it broke. Apple quotes a guideline number such as 2.1 or 5.1.1; Google Play names a policy such as Data safety or Photo and Video Permissions. Find that rule below; each one links to a full fix page that quotes Apple’s or Google’s own wording. No fix guarantees approval, because review decisions belong to Apple and Google.
App Store and Google Play rejections fall into two kinds: a gap in the build or the listing that you can fix and resubmit, and a product decision the store disagrees with. The 13 rejections below cover both, for apps built by hand or with AI builders. Facts about each rule come from Apple’s or Google’s documentation, as checked on the linked fix page; the advice on what to do and in which order is App369’s.
App Store: the build or the listing
These four guidelines point to something missing or wrong in what you submitted. Fix it, resubmit, and say what changed in your reply.
Guideline 2.1: App Completeness
The reviewer couldn’t sign in, the app crashed, or placeholder content was left in. Apple’s Guideline 2.1 says to “include demo account info (and turn on your back-end service!) if your app includes a login.” Add a working demo account to the App Review Information, and test the release build on a real device. Full steps: Guideline 2.1.
Guideline 2.3: Accurate Metadata
The screenshots, preview or description don’t match the app. Apple’s Guideline 2.3.3 says “Screenshots should show the app in use, and not merely the title art, login page, or splash screen.” Also list each new feature specifically in the Notes for Review. Full steps: Guideline 2.3.
Guideline 5.1.1: Data Collection and Storage
The fix page covers account deletion, purpose strings, the privacy policy link and permissions asked for too early. Apple’s rule: “If your app supports account creation, you must also offer account deletion within the app.” Purpose strings must say what the feature does with the data, and the privacy policy needs a link in App Store Connect and in the app. Full steps: Guideline 5.1.1.
Guideline 4.8: Login Services
The app signs people in with Google, Facebook, X or LinkedIn and has no equivalent option. Add another sign-in option that limits data to name and email, lets people keep their email private, and doesn’t collect activity for advertising without consent. Apple lists exceptions, such as apps that only use your company’s own accounts. Full steps: Guideline 4.8.
App Store: the product itself
These four guidelines can mean changing what the app is or how it charges, not just the build. Read the rejection closely before redesigning anything.
Guideline 4.2: Minimum Functionality
The app is the website in a frame, mostly marketing or links, or made from a template. Apple’s Guideline 4.2 says “Your app should include features, content, and UI that elevate it beyond a repackaged website.” Build the app around something only an installed app does for your users. Full steps: Guideline 4.2.
Guideline 4.3(a): Spam
Apple treats the app as a copy: several near-identical apps under different Bundle IDs, or one that is “indistinguishable from what’s already widely available,” in the words of Apple’s Guideline 4.3. Apple’s guideline suggests one app with the variations provided through in-app purchase, and Guideline 4.2.6 covers apps built for clients from a template. Full steps: Guideline 4.3 spam.
Guideline 3.1.1: In-App Purchase
Digital features are unlocked with a payment outside in-app purchase, such as a Stripe checkout or a license key. Sell those through in-app purchase. Physical goods and real-world services are the other way round: Apple says to use a method such as Apple Pay or a card. On the United States storefront, buttons and links to buy on your website are allowed; other storefronts need one of Apple’s entitlements. Add a way to restore purchases. Full steps: Guideline 3.1.1.
Guideline 3.1.2: Subscriptions
The sign-up screen doesn’t say what people get, or the billed price isn’t the most prominent one. Apple’s subscriptions page says “the amount that will be billed must be the most prominent pricing element in the layout.” Add Terms of Use and Privacy Policy links in the app and in the metadata. Full steps: Guideline 3.1.2.
Google Play: policy rejections
Google Play policy rejections name a policy and what Play Console expects for it. In App369’s reading of these three, the fix is in the app, the Play Console declaration, or both.
Data safety form rejected
The form has to cover every SDK in the app. Google Play’s Data safety help says the declaration “includes data collected and handled through any third-party libraries or SDKs used in their apps.” Apps with account creation also need in-app account deletion and a web page to request it. Full steps: Google Play Data safety.
Photo and Video Permissions
Google allows READ_MEDIA_IMAGES and READ_MEDIA_VIDEO only when the system photo picker isn’t sufficient for core functionality. Switch to the photo picker, and check the merged manifest, since a plugin can add the permission. Full steps: Google Play photo and video permissions.
Foreground service declaration
Each foreground service type the app declares needs a declaration in Play Console, with a video that shows the user starting the feature in the app. Google Play’s help says you’ll need to “declare any foreground service types that you use in a new declaration on the App content page” in Play Console. Full steps: Google Play foreground service.
Google Play: before you can publish
These two block a release rather than reject it. Both come from Play Console and upload rules, not from review.
12 testers for 14 days
Personal developer accounts created after November 13, 2023 must run a closed test with at least 12 testers opted in for 14 days in a row before Play Console allows production. In App369’s advice, invite more than 12, so one drop-out doesn’t leave you short. Full steps: Google Play 12 testers for 14 days.
“You need to use a different version code”
The upload reuses a versionCode. Android’s versioning docs say “You can’t upload an APK to the Play Store with a versionCode you have already used for a previous version.” In Flutter, raise the number after the + in pubspec.yaml. Full steps: Google Play version code already used.
Which to check first
The fastest route is the exact rule the rejection names, then the part of the app the reviewer saw. App369’s full order for a rejected build:
- Copy the guideline number or policy name from the rejection, and open its fix page.
- Check whether the fix is in the build, the listing, or Play Console declarations.
- Fix that, and test the release build on a real device with a fresh account.
- Reply in App Store Connect or Play Console with what changed and where the reviewer can see it.
- If the rejection needs a product decision (4.2, 4.3 or 3.1), decide that before writing code.
The /fix/ index lists every App Store and Google Play fix. For the next store deadlines, see App Store and Google Play deadlines.
Need a hand?
App369 fixes the code behind a rejection at a fixed price, but no fix guarantees approval: review decisions belong to Apple and Google. If one defect is the whole problem, the App Fix Ticket covers it in two fixed-price steps: a $450 diagnosis that finds the root cause and gives you a fixed quote for the fix, then the fix itself. A rejection that needs a product decision (4.2, 4.3 or 3.1) starts with a paid consultation to agree what to change; if it then needs building, you get a written fixed-price quote. Describe the problem to start.
Want this done at a fixed price?
Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.
Frequently asked questions
- What is the fastest way to fix an App Store rejection?
- Fix exactly what the rejection names, then reply in App Store Connect with what you changed and where the reviewer can see it. If the rejection quotes a guideline number, the matching fix page below lists the causes for that number.
- Why did Apple reject my app under Guideline 4.3 spam?
- Apple treats the app as a copy of other apps: several near-identical apps under different Bundle IDs, or an app indistinguishable from what's already widely available. Apple's guideline suggests one app with the variations provided through in-app purchase.
- Why did Google Play reject my app over Photo and Video Permissions?
- The app requests READ_MEDIA_IMAGES or READ_MEDIA_VIDEO, which Google allows only when system pickers like the Android Photo Picker are not sufficient for core functionality. Switch to the photo picker, or check whether a plugin added the permission.
- Can App369 get my app approved?
- No one can guarantee approval, because review decisions belong to Apple and Google. The App Fix Ticket fixes the code defect behind a rejection in two fixed-price steps: a $450 diagnosis with a fixed quote for the fix, then the fix itself.
Sources
- Apple, App Review Guidelines
- Apple Developer, Auto-renewable subscriptions
- Play Console Help, App testing requirements for new personal developer accounts
- Google Play Help, Data safety section
- Google Play Help, Restricted permissions with minimum scope alternatives
- Google Play Help, Foreground service and full-screen intent requirements
- Android Developers, Version your app
Related Resources
Related guides
AI API Errors: 7 OpenAI, Claude, Gemini and MCP Fixes (2026)
AI feature broken by a 401, 429 or 529, or an MCP connector that won't connect? 7 OpenAI, Anthropic, Gemini and MCP errors, what each means and how to fix it.
Read moreExpo and Flutter Build Errors: 12 Fixes (2026)
Expo or Flutter build failing, or the app crashes after release? 12 mobile build errors, from EAS builds and pod install to TestFlight and Gradle, and each fix.
Read more