Apple Sets Two Deadlines to Kill iOS 12 Support on the App Store
Recently, many developers have received two prominent warnings in the App Store Connect backend, directly targeting the app's MinimumOSVersion. If your project still supports iOS 12, or even older systems, you will be unable to submit any new versions or updates in the coming months.
This article provides a complete interpretation of the meaning of these two warnings, Apple's timeline, and the actions you need to take immediately.
What warnings did you receive?
The original warning text you see probably looks like this:
App Store Connect Warning
MinimumOSVersion too low. This app has a MinimumOSVersion of 12.0. Starting later this year, all iOS apps must have a MinimumOSVersion of 13.0 or later in order to be uploaded to App Store Connect or submitted for distribution.
App Store Connect Warning
MinimumOSVersion too low. This app has a MinimumOSVersion of 12.0. Starting in Spring 2027, all iOS apps must have a MinimumOSVersion of 15.0 or later in order to be uploaded to App Store Connect or submitted for distribution.
In short, Apple is phasing out old systems in two steps, and your current app's minimum version setting (12.0) has already crossed both red lines.
Policy timeline
Let's first sort out the most critical time points (based on today, August 2026):
| Time Node | Hard Requirement | Your Situation |
|---|---|---|
| Current | No mandatory restrictions, but warnings have been issued | Deployment target is 12.0, two warnings received |
| Within 2026 (expected autumn) | Minimum version ≥ iOS 13.0 | If not upgraded, cannot upload, submit for review, or release |
| Spring 2027 | Minimum version ≥ iOS 15.0 | Even if already upgraded to 13.0, must upgrade again to 15.0 by then, otherwise also cannot submit |
Clearly, the first deadline may be only 1–3 months away, and time is very tight.
Why is Apple doing this?
This move is not a sudden attack, but part of Apple's consistent ecosystem upgrade strategy:
Security and Privacy
iOS 13 introduced Sign in with Apple, enhanced location permission controls, etc.; iOS 15 brought iCloud Private Relay, App Privacy Report, etc. Forcing a higher minimum version pushes users to leave old systems full of security vulnerabilities as quickly as possible.Reducing developer burden
For every additional old system supported, developers need to maintain one more set of branch code, configure one more test device, and handle one more crash combination. When the active device share of old systems drops to single digits, the cost-effectiveness of continued compatibility is extremely low.Promoting new API adoption
Many features of new frameworks like SwiftUI, WidgetKit, and App Clips require iOS 14/15+. Only by phasing out iOS 12/13 can Apple more quickly migrate the entire ecosystem to modern development paradigms.
How should I modify? One step or step-by-step?
Steps (Xcode)
- Open the Xcode project, go to the Project settings (not Target).
- Select your main Target, switch to the General tab.
- In the Minimum Deployments area, change the iOS value to your chosen version.
- Or directly modify the
project.pbxprojfile and globally replace the value ofIPHONEOS_DEPLOYMENT_TARGET.
After modification, repackage and upload, and the App Store Connect warnings will disappear.
Version selection suggestion: Immediately set directly to iOS 15.0
When receiving two warnings, many people's first reaction is "first change 12.0 to 13.0, and deal with next year later." But I strongly suggest you upgrade directly to iOS 15.0 in one step now, for three reasons:
- Avoid duplicate work
Changing to 13.0 now means you'll have to change to 15.0 again next spring, and both changes require regression testing. - Almost no impact on user coverage
As of 2025–2026, the active device share of iOS 15 and above globally has long exceeded 96%. Devices still using iOS 12-14 are typically iPhone 6 and earlier models, whose batteries and performance have severely degraded, and the value of continuing to maintain code for them is minimal. - Enjoy modern frameworks early
iOS 15 brings async/await, stable improvements in SwiftUI 3/4, new concurrency features in Core Data, etc. Removing the shackles of old systems allows you to use these productivity tools more freely in your code immediately.
Three things to check after upgrading
1. Deprecated API cleanup
For example, UIWebView was marked deprecated as early as iOS 12, and WKWebView became mandatory starting iOS 13. If your code is still using some APIs deprecated during the iOS 13/14 period, take this opportunity to replace them uniformly.
2. Third-party library compatibility
After upgrading the Deployment Target, it is recommended to pod update or re-resolve Swift Packages. A very small number of ancient libraries may have hardcoded version requirements less than 15.0, and you will need to find alternatives or fix them yourself.
3. UI and system behavior regression
- The navigation bar and list styles in iOS 15 differ from earlier versions; check if the interface is disordered.
- If you use
UIScenerelated declarations, confirm that the configuration inInfo.plistis compatible with iOS 13+, but since the minimum support is already 15, you no longer need to worry about fallback issues for 12.