Link copied!
Guides·Updated ·8 min read

Google Play Quality Requirements: Memory, Bitmaps, R8

Play announced memory, bitmap, and 25% DEX optimization thresholds on Aug 26, 2026. Enforcement starts February 2027. What indie apps actually have to change.

Lavender sticker-collage of Google Play quality requirements with MEMORY, BITMAP, R8 25%, FEB 2027, and ZERO-TAP stickers

Quick answer

What are Google Play’s technical quality requirements for 2026–2027?

On August 26, 2026, Google Play announced new technical quality requirements. From February 2027, apps and games must stay under documented P90 memory and bitmap thresholds and meet 25% DEX obfuscation, optimization, and shrinking when DEX is large enough. From April 2027, apps with sign-in must restore credentials with zero-tap on device migration. Missing a requirement can reduce visibility and publishing capabilities.

  • Memory and DEX bars start February 2027; zero-tap starts April 2027
  • Anon RSS+Swap and bitmap memory are core vitals, P90 over 28 days, mobile/tablet only
  • Apps need 25% obfuscation, optimization, and shrinking above 10MB DEX; games above 50MB
  • R8 is recommended; other shrinkers can meet the same 25% floors
  • Recategorizing an app as a game to dodge thresholds violates Play metadata policy
On this page

Indie Android teams just got a calendar, not a suggestion. On August 26, 2026, Google Play published technical quality requirements for memory, bitmaps, DEX optimization, and zero-tap sign-in restoration. The blog post is polite. Play Console Help is not: these requirements are not optional, and missing them can reduce visibility and publishing capabilities.

Read the thresholds in Play Console technical quality requirements and the announcement on the Android Developers Blog . This page is the indie translation: which bars actually apply, what “P90” means in Console, and what to do before February 2027 without pretending a category switch will save you.

The dates that matter

Google Play technical quality timeline (2026–2027)
DateWhat happensWho it hits
Aug 26, 2026Requirements announced; vitals and bundle insights start showing the new metricsEvery Play app and game
Sep 30, 2026Last day a production Block Store integration still counts as zero-tap compliantApps restoring sign-in with Block Store
February 2027Memory (Anon RSS+Swap), bitmap memory, and DEX optimization thresholds enforcedApps and games that miss the documented floors
April 2027Zero-tap Restore Credentials required for apps with sign-inApps with optional or mandatory sign-in; games currently exempt

Announcement was August 26, 2026. Memory and DEX enforcement starts February 2027. Zero-tap sign-in restoration starts April 2027. Block Store only grandfathered if it was already in production by September 30, 2026.

Memory: Anon RSS+Swap, by RAM tier

Play is adding two core vitals: Memory usage (Anonymous RSS + Swap) and Bitmap memory usage. Like other vitals with bad-behavior thresholds, Console uses the last 28 days of data and judges you at the 90th percentile. A P90 of 2 GB means 10% of samples were worse than 2 GB. The memory bars apply to mobile and tablet only — not Wear, TV, or XR.

Foreground P90 memory thresholds: apps vs games
Device RAM tierApps, foreground P90Games, foreground P90Apps, user-perceived / background P90
4 GB2 GB2.25 GB1 GB / 1 GB
6 GB2.25 GB2.75 GB1.25 GB / 1.25 GB
8 GB2.25 GB3.5 GB1.5 GB / 1.5 GB
12 GB3.25 GB4 GB1.75 GB / 1.75 GB
16 GB4.25 GB5 GB2 GB / 2 GB

Play splits thresholds by category and RAM tier. A 4 GB phone app must stay at or under 2 GB foreground P90; a game on the same tier gets 2.25 GB. Cached Anon RSS+Swap is not given a numeric bad-behavior cap in the current table. Sub-4 GB and 16 GB+ tiers are listed without numeric thresholds.

Games get higher caps because Play says they have different foreground memory patterns and often sit on native engines. User-perceived services and background states are tighter than foreground for apps; games keep more headroom there too (2.0 GB on 4 GB devices, up to 3.5 GB on 16 GB). Cached Anon RSS+Swap is shown in Console but the published bad-behavior table leaves that column blank.

Bitmaps: stop holding images when the UI is gone

Bitmap memory is a separate vital. Play’s point is blunt: you cannot render bitmaps unless the UI is visible, so holding decoded images in background or cached states is wasted RAM. Thresholds are higher than zero because a sample might land right after a state change while you are still answering onTrimMemory.

Bitmap memory bad-behavior thresholds (P90)
App stateP90 that counts as bad
ForegroundNo numeric bad-behavior cap published
User-perceived services> 200 MB
Background> 200 MB
Cached> 400 MB

Keeping more than 200 MB of bitmaps in user-perceived services or background, or more than 400 MB when cached, is bad behavior. Foreground bitmap use is measured but not given a published numeric cap in the current table.

  • Decode images to the actual view size. Full-resolution assets in a 1080p list row are a self-own.
  • Use a memory-conscious loader (Coil, Glide, or equivalent) and shrink the memory cache when the UI hides.
  • Release bitmaps on TRIM_MEMORY_UI_HIDDEN. Do not keep static references to Bitmaps or Views.
  • Watch the new out-of-memory crash filter in Android vitals. That is the OS killing you under pressure, not a mysterious native abort.

DEX: 25% obfuscation, optimization, and shrinking

From February 2027, uploads need a minimum of 25% obfuscation, 25% optimization, and 25% shrinking. Play recommends R8 and says other shrinkers are fine if they hit the same floors. This one applies across form factors, unlike the memory vitals.

DEX optimization floors on Google Play
CategoryEnforced when DEX isObfuscationOptimizationShrinking
Apps> 10 MB DEX25%25%25%
Games> 50 MB DEX25%25%25%

Play only enforces the 25/25/25 DEX bars when the binary has a non-negligible DEX size: more than 10 MB for apps, more than 50 MB for games. Check each App Bundle in Play Console’s app bundle explorer.

Zero-tap restore, April 2027

If your app supports sign-in — optional or mandatory — you must restore that session when a user moves to a new Android device and chooses device-to-device transfer or cloud backup. The documented method is the Android Restore Credentials API, available from Android 9. The requirement is mobile and tablet only. Apps without accounts, and users who were signed out or in guest mode, are out of scope.

  • Games are currently exempt. Play says dedicated game-auth guidance is coming in 2027. Single-account games are still encouraged to adopt Restore Credentials now.
  • Block Store integrations that were already restoring sign-in in production on or before September 30, 2026 still count. Later Block Store work does not.
  • Permanently private and enterprise device-management apps are out of scope. Heavily regulated finance and health apps may request an exemption in Console before enforcement.
  • Restore Credentials authenticates; it does not complete OAuth grants or MFA. Restoring identity (“welcome back”) meets the letter. Play says a device-to-device restore is strong proof of possession and should not force another MFA step.

What an indie app should actually change

You do not need a platform team. You need a 28-day vitals baseline and a shrinking pipeline you can explain. Open Android vitals → Memory, filter by RAM tier and app state, and look at P90 — not the pretty median. Then turn on full-mode R8 (or your shrinker) and read the optimization insights on the next bundle upload.

  • Foreground leaks first: static Context, retained Activities, unbounded image caches, “just in case” SDKs you forgot you shipped.
  • Background next: long-lived services, FGS that keep bitmaps warm, work that should have been WorkManager.
  • DEX last if you are already on R8 full mode. If minify is still off in release, that is the entire ticket.
  • Sign-in apps: schedule Restore Credentials before the Block Store cutoff if you were counting on Block Store and are not in production yet.

Get a Play quality baseline before February 2027

Ninety minutes will not finish the memory work. It will tell you whether you have a February problem or an April problem.

  1. Read P90, not the median

    In Android vitals, open Memory. Note Anon RSS+Swap and bitmap memory at P90 for foreground, user-perceived services, background, and cached, split by 4 / 6 / 8 / 12 / 16 GB RAM tiers. Mobile and tablet only.

  2. Check DEX on the shipping bundle

    In app bundle explorer, confirm DEX size and the obfuscation / optimization / shrinking percentages. Apps over 10 MB DEX and games over 50 MB DEX need 25% on each axis.

  3. Turn on shrinking for release

    Enable R8 (recommended) or another shrinker. Use the R8 Configuration Analyzer if keep rules are eating the 25% shrinking floor. Re-upload and read Console’s optimization insights — local CI drift is real.

  4. Trim bitmaps when the UI hides

    Hook onTrimMemory, drop decoded bitmaps on TRIM_MEMORY_UI_HIDDEN, and downsample to view size. Re-check cached and background bitmap P90 after a week of real traffic.

  5. Wire Restore Credentials if you have sign-in

    Implement the Restore Credentials API (Android 9+), test device migration, and only rely on Block Store if that integration was already in production by September 30, 2026. Games can skip for now; do not skip if you ship a normal account graph.

Play quality-requirement questions

Are these Google Play quality requirements optional?

No. Play Console Help says the requirements on that page are not optional. Not meeting a requirement can affect visibility and publishing capabilities on Google Play. Memory and DEX enforcement starts February 2027; zero-tap sign-in restoration starts April 2027.

Do I have to use R8?

Play strongly recommends R8, but other shrinking tools can satisfy the requirement if they reach 25% obfuscation, 25% optimization, and 25% shrinking. The floor is enforced for apps with more than 10 MB of DEX and games with more than 50 MB of DEX.

Can I recategorize my app as a game to get higher memory limits?

Not if the product is not a game. Play distinguishes apps and games from the category in store settings. Changing that category so you qualify for different technical thresholds is a violation of the store listing metadata policy.

Does zero-tap apply to games and apps without login?

Games are currently out of scope. Apps that do not offer user accounts are not affected. The April 2027 rule applies to mobile and tablet apps that support optional or mandatory sign-in, using Restore Credentials from Android 9, with a limited Block Store grandfathering window that closed for new production integrations after September 30, 2026.


Sources, verified 2026-08-26:

Free tools that help here

Fix the binary. Do not let the listing go stale while you do it.

Memory work takes sprints. Shoppers still decide from screenshots. AppGrowthKit keeps App Store and Google Play creatives current — AI layouts and copy, editable layers, device frames, store-ready export — while you ship the R8 and restore-credentials work.

Try AppGrowthKit for Free