Getting a rejection from Google Play console is frustrating — especially when the rejection message is vague and doesn't tell you exactly what to fix. In 2026, Google's automated review pipeline rejects roughly 1 in 5 submissions on first pass, and the appeal window is tight.
This Q&A covers the six most common rejection scenarios we see at KappS, what they actually mean, and the exact fix that gets your app through review.
Q1: "Your app violates the Metadata policy" — What does this mean?
What Google sees: Your app's title, description, screenshots, or promotional text contains misleading, excessive, or irrelevant keywords. In 2026, Google's metadata scanner has gotten significantly better at detecting keyword stuffing, trademark abuse, and misleading naming patterns.
Common triggers: Including competitor brand names in descriptions, using generic plus keywords in your title (e.g. "Video Downloader - YouTube, Instagram, TikTok"), inconsistent screenshots that don't match your actual app UI, or claiming features your app doesn't deliver.
Fix: Strip your title to 3-5 words maximum. No generic keywords, no competitor names. Each screenshot must match a real screen in your app. Descriptions should describe what the app actually does — not what you wish it did. Resubmit with a metadata audit: read every field as if a reviewer has never seen your app before.
Q2: "Your app has a functionality issue" — But it works fine on my device
What this means: Google's automated testing couldn't complete a core user flow, or your app crashed during the review. This is the #1 rejection reason in 2026, and most developers get defensive because they test on their own high-end device.
The reality: Google Play reviews apps on low-end emulated devices with limited storage, older Android versions, and slow networks. If your app depends on heavy assets, a fast internet connection, or specific hardware features, it will fail on the review device.
Fix: Test your app on an Android emulator with API level 30 (Android 11), 2 GB RAM, and a throttled network connection (set to 3G or slower). Walk through your critical path — onboarding, sign-up, main feature, exit. If any step takes more than 5 seconds on this setup, optimize before resubmitting. Add a fallback UI that handles slow loading gracefully.
Q3: "Deceptive behavior detected" — What did I do wrong?
This is the most dangerous rejection category in 2026 because repeated violations can lead to account suspension. "Deceptive behavior" covers a wide range of violations — hidden functionality, fake reviews, misleading claims, and broken promised features.
Hidden functionality is the most common trigger: code paths that activate different features based on the user's device or region, or features that were promised in the store listing but don't exist in the APK. Google's static analysis in 2026 now detects obfuscated feature gates and remote config switches.
Fix: Remove any remote config or feature flag that alters the core experience between what the reviewer sees and what real users see. If your app has A/B tests, disable them during review. Make sure every feature mentioned in your listing is functional in the submitted APK. No exceptions. If you need server-side features, include a demo mode that simulates them.
Q4: "Content policy violation" — My app isn't offensive
What Google flags: User-generated content (UGC) that isn't properly moderated, sexual content that violates the explicit content policy, or content that targets minors with inappropriate material. In 2026, Google has tightened UGC requirements significantly.
The key requirement: If your app lets users post content, you must have an in-app reporting mechanism, content moderation (either automated or human), and a clear content policy that users agree to during onboarding. Apps without these three elements are rejected instantly.
Fix: Implement three things before resubmitting: (1) An in-app reporting button that users can access from any piece of content, (2) a content moderation pipeline — even a basic keyword filter + human review queue works, (3) a terms-of-service screen during onboarding that explicitly states prohibited content types. For apps targeting children under 13, additionally implement COPPA-compliant data handling.
Q5: "Permissions are excessive or unnecessary" — But my app needs these
Google's stance: Every permission your app requests must be directly necessary for a core feature. Background location, SMS access, call logs, and installed-apps queries are under special scrutiny in 2026.
The mistake: Most developers request broad permissions "just in case" or use SDKs that auto-declare permissions the core app doesn't actually need. Each declared permission is a potential rejection point.
Fix: Audit every permission in your AndroidManifest.xml. For each one, document which feature needs it and whether there is a less-invasive alternative. Remove foreground location if background location will do. Use Android's permission rationale dialog (shouldShowRequestPermissionRationale) to explain why each permission is needed. For SDK permissions, check if your SDK version has reduced-permission options.
Q6: "Your app doesn't meet the minimum quality threshold" — What now?
This rejection is Google's catch-all for apps that aren't obviously violating any specific policy but feel low-effort. Common characteristics: generic icon, placeholder UI text, no privacy policy, broken links in the listing, or inconsistent UI across screens.
In 2026, Google's quality bar has risen significantly — driven by the AI-generated app flood. If your app looks like a template with swapped text, it will be rejected.
Fix: Polish three things: (1) The icon — use a custom design, not a generic template. (2) The onboarding flow — every screen should have complete, grammatically correct text in the language of your store listing. (3) The privacy policy — link a real policy document, not a placeholder. A/B test your app's first-impression quality by showing it to someone who has never seen it before and watching them use it. Fix every point of confusion.
What to Do When the Appeal Fails
The first rejection appeal is often rejected too — this is normal. Google's Tier 1 appeal is handled by the same automated system that rejected you initially. The strategy that works:
- Fix the root cause first, then appeal. Don't appeal with "my app is fine" — Google's data shows that appeals without substantive changes have a 92% failure rate.
- Use the additional details field in the appeal form to explain exactly what you changed and why it resolves the policy concern. Be specific: "Removed the SMS permission from AndroidManifest.xml and migrated to Firebase phone auth" is better than "Fixed permissions issue."
- If a second appeal fails, request a live review through the Play Console help center. Real human reviewers can see nuances that automated systems miss.
- Contact KappS if you're stuck in a rejection loop. We audit and fix rejection-prone apps daily.
Bottom Line
In 2026, Google Play rejection is rarely about a single factor. The apps that pass review consistently share three traits: honest metadata, functional core features on low-end devices, and minimal permissions. Fix those three, and you eliminate 80% of rejection scenarios.
One more thing: don't rush the resubmit. Every rejection is logged to your account history. Multiple rapid resubmissions with no substantive changes trigger trust scoring penalties. Take 24 hours, make real fixes, and submit once.