Google Play has two target API level bars, and missing them does two different things.
Since 31 August 2026, Google Play will not accept a new app or an app update unless it targets Android 16, API level 36 or higher. A second and lower bar, Android 15, API level 35, decides something else entirely: whether an app already on the store stays available to new users on newer phones. Both numbers and both dates below come from Google's own two pages on this, read on 21 October 2026. Most people meet this requirement in the middle of publish to app store work, when the upload comes back refused.
The question people actually ask is the second one. If you fall behind, does the app vanish, or does it just stop taking updates? Google answers that directly, and the answer is neither of those two.
Start hereThe short version
API 36 to ship, API 35 to stay on the shelf.
One policy page carries two requirements with two numbers. The submission requirement is Android 16, API level 36 or higher, and it applies to a brand new app and to every update you submit. The app availability requirement is Android 15, API level 35 or higher, and it applies to an app that is already published. Both took effect on 31 August 2026.
Falling below the availability bar does not delete anything. Google's wording is that the app stops being discoverable to Play users whose devices run a version of Android newer than the app's target, and stays available on devices at that level or lower. Anyone who already installed it keeps it. An extension to 1 November 2026 exists for apps that are out of compliance, and it is written around distribution rather than around uploads.
What target API level does Google Play require right now?
Android 16, API level 36 or higher, for a new app and for an app update, since 31 August 2026. The requirements table in Play Console Help prints the same date in both columns, which is worth noticing because people assume updates get a grace period that new apps do not. They do not. The previous step was Android 15, API level 35, from 31 August 2025, so the pattern over the last two years has been one new number every 31 August.
The definitions on that page are narrower than everyday speech, and they decide which rule you are under. A new app is one not yet published on Google Play. An existing app is one that is published. An app update is a new version you are submitting for review to replace your existing app. A version bump that fixes a typo is an app update, so it has to clear API 36 like anything else.
Phones and tablets are the strictest case. Wear OS and Android Automotive OS apps need Android 15, API level 35 or higher. Android TV and Android XR apps need Android 14, API level 34 or higher. The Android developers guide puts the rule at the moment of upload: when you upload an APK, it has to meet Google Play's target API level requirements. That is the sentence to remember, because it explains why nothing warns you earlier. The build succeeds locally. Play refuses it.
One exception is printed, and it is narrow. Permanently private apps that are restricted to users in a specific organization and intended for internal distribution only are excepted. That is the whole list on both pages. Neither of them names a testing track, so an internal or closed test is not documented as exempt from the level the policy names.
Check yours
What your current target API level costs you
Pick the number in your targetSdkVersion. The two answers below come from two separate rules, which is why they can disagree.
Nothing picked yet. If you do not know the number, it is in the Gradle file your build reads, or in the build properties of your app config.
Does your app disappear from Google Play if it falls behind?
No, and it does not simply stop taking updates either. The documentation describes a third outcome that sits between the two stories you will hear. An existing app has to target Android 15, API level 35 or higher to remain available to new users on devices running a version of Android higher than the app's own target. An app at Android 14, API level 34 or lower is only available on devices running a version of Android the same as or lower than what it targets. The listing stays up. It goes invisible to a slice of the market, and the slice grows every time Google ships a release.
Google answers the existing user question in plain language in its own help. Users who previously installed the app from Google Play are not impacted, and can still discover, re-install and use the app on any Android version the app supports. So an out of date app keeps working on the phones it is already on, and keeps working after a factory reset for those people. Google adds the obvious commercial consequence: download levels may drop, because new users on newer Android cannot discover or download it.
What a stranger sees is the part that costs you money quietly. Google Play will tell a user on a newer device that the app is not available to install on their device because it was made for an older version of Android. Nobody tells you this is happening. Your store link still resolves, your reviews are still there, and the install button is gone for everyone on current hardware. If you want the listing itself to go away, that is a separate action you take: Google's own answer to developers who no longer plan to update is that they can unpublish the app.
So the honest summary is two sentences. An app below API 36 cannot ship an update. An app below API 35 is hidden from new users on newer phones while remaining installed, re-installable and functional for everyone who already has it. Those are different thresholds with different effects, and the half of the internet that says your app gets pulled has collapsed them into one rule that does not exist.
Who gets an extension, and until when?
The date is 1 November 2026, and both Google pages name the same one. Read on 21 October 2026, that leaves eleven days. The wording is that you will be able to request an extension to 1 November 2026 if you need more time to update your app, and that the extension keeps you distributed to all Google Play users until then.
Not everyone gets a form. Google says only apps that are not compliant with the policy receive a policy warning and a notification in Play Console, and that the extension form is reached through the details page of that warning or issue on the Policy status page. So the sequence is the reverse of what you would expect. You do not apply in advance. You wait to be flagged, then follow the notification. If you are below the bar and see no warning, the warning is the thing to go looking for, on Policy status, rather than the form.
Two cautions about what the extension buys. First, every sentence describing it is about distribution: continuing to be distributed to all Google Play users until 1 November 2026. Nothing on either page says an extension lets you upload a build that targets an older API level, so do not plan a release on that reading. Second, as of 21 October 2026 the same Play Console Help page contradicts itself on availability. Near the top it says you will be able to access your app's extension forms in Play Console later this year, in the future tense, while the frequently asked questions further down describe the form as available on the Policy status page. The deadline it refers to passed on 31 August. Trust your own Policy status page over either sentence.
Policy status is also where the rest of the release blockers collect, and the target API level is rarely the only one. The declaration most often sitting next to it is the google play data safety form, which blocks a release in the same way and for a completely different reason. Clear both in one pass rather than discovering the second one after you have fixed the first.
Play Console Help, target API level requirements for Google Play apps, read 21 October 2026
Two bars, two consequences, one policy page
| The question | Submission requirement | App availability requirement |
|---|---|---|
| What it decides | Whether Play accepts the upload at all | Whether new users on newer phones can see the listing |
| The level it names, read 21 October 2026 | Android 16, API level 36 or higher | Android 15, API level 35 or higher |
| In force from | 31 August 2026 | 31 August 2026 |
| What falling below it does | The build is refused when you submit it | The listing stays up and goes quiet for part of the market |
| Touches anyone who already installed the app | No | No |
| Covered by the extension to 1 November 2026 | Not described as permission to upload an out of date build | Yes |
Where is the target API level set in a React Native project?
The value is called targetSdkVersion, and the Android developers guide names two homes for it: your app's Gradle file, or the android:targetSdkVersion attribute on the uses-sdk element in the manifest. In a React Native and Expo project you often have neither of those files checked in, because the native directories are generated on each build. Editing a generated file works until the next build regenerates it and throws your edit away.
The durable place is the expo-build-properties config plugin, which takes an android block with a targetSdkVersion field in it. Set the number there, inside your app config, and every regenerated Android project picks it up. That is also the file to check first when an upload comes back refused and the number in the error does not match the number you thought you had shipped.
Changing the number is a one line edit with a long tail. A large share of Android behaviour changes apply only to apps that declare support for a version through targetSdkVersion, so raising it turns all of them on in one release. Move from API 34 to API 36 and you take the Android 15 changes and the Android 16 changes together. The Android developers guide handles this by sending you to the behaviour changes list for each release you pass through, which is the real size of the job. The same page notes that since Android 10, API level 29, users see a warning on first launch if an app targets Android 5.1, API level 22 or lower, which is how far behind you have to be before Android itself says something to your users.
Apple runs a calendar like this too, and the shape of it is different enough to be worth keeping separate in your head. Apple does not gate on a target API level; it gates on SDK versions and on declarations inside the build, which is what the required reason api rules and the third party sdk privacy manifest requirement are about. Two stores, two unrelated clocks, and an app that ships on both has to satisfy each of them on its own terms.
Android Developers, meet Google Play's target API level requirement, read 21 October 2026
Where this lands if a builder generated your app
The policy is about what you upload, so it applies the same way whether you wrote the project or a tool wrote it for you. A generated app is still an upload, and the number in its build configuration is still the number Play reads. The one case that sits outside the policy entirely is a build you never upload: a standalone APK you hand to someone directly is not a Google Play submission, and this requirement has nothing to say about it.
Newly is an AI app builder. You describe an app in plain English and it writes a real React Native and Expo project that you own, with two way GitHub sync so the code is somewhere you can read it. It uploads iOS builds to TestFlight, publishes to Google Play internal testing, and builds a standalone Android APK. It is $25 a month, with no free tier. Owning the project is the part that matters for this deadline, because the target API level lives in a file you can open and change rather than in a setting somebody else controls.
Two honest limits. Newly does not submit to the App Store for you, because Apple requires the owner of the app's content to submit it, so the iOS side of any release calendar ends up in your hands by design. And no builder watches a policy page on your behalf. The last two target API level steps both landed on 31 August, which makes this a yearly diary entry rather than a thing to remember. Check the number in your build configuration against the policy page each August, before the upload is the thing that tells you.
Questions people ask about the Android target API level deadline
Starting 31 August 2026, new apps and app updates must target Android 16 (API level 36) or higher to be submitted to Google Play. That is Play Console Help, read on 21 October 2026, and the table on that page gives the same date for new apps and for updates. The step before it was Android 15 (API level 35), from 31 August 2025. Other form factors sit lower: Wear OS and Android Automotive OS apps need Android 15 (API level 35) or higher, and Android TV and Android XR apps need Android 14 (API level 34) or higher.
Check the number before the upload checks it for you
Open your build configuration, read the target, and compare it against the two bars above. It takes a minute now and saves a refused submission on the day you wanted to release.
Start building