Expo SDK 56 drops iPhone 7 support
- Expo shipped the SDK 56 beta on May 6, and its iOS floor is now 16.4 — cutting off iPhone 7, 6s, and the first SE. (expo.dev) - Expo’s own build-properties docs now use `deploymentTarget: "16.4"`, and the repo changelog says the minimum iOS/tvOS version was bumped to 16.4. (docs.expo.dev) - For teams on Expo, old-device support now means staying on older SDKs or maintaining a separate native path. (docs.expo.dev)
Expo just made an old mobile-web truth painfully concrete — platform support eventually gets cut off. In the SDK 56 beta, released May 6, the minimum iOS version moved up to 16.4. (expo.dev) That sounds like a tiny config change, but it means apps built on the new Expo baseline no longer run on hardware Apple left behind at iOS 15, including iPhone 7, iPhone 6s, and the original iPhone SE. (docs.expo.dev) ### What actually changed? The short version is simple: Expo SDK 56 now targets iOS 16.4 and up. Expo’s own docs now show `ios.deploymentTarget` set to `"16.4"`, and the Expo repo changelog spells out a breaking change that bumps the minimum iOS/tvOS version to 16.4. (docs.expo.dev) This is not just a rumor from social posts — it’s in Expo’s published beta materials and package changelogs. ### Why does 16.4 matter so much? Because Apple already drew the hardware line at iOS 16. Devices that never got iOS 16 are stuck on iOS 15 forever, so a 16.4 minimum locks them out immediately. (expo.dev) Apple’s compatibility list for iOS 16 starts at iPhone 8, iPhone X, XR, XS, and newer iPhones, plus newer iPads — not the iPhone 7, 6s, or first-gen SE. ### Which devices fall off? The obvious iPhones are iPhone 7, iPhone 7 Plus, iPhone 6s, iPhone 6s Plus, and iPhone SE from 2016. On the iPad side, the big casualties are iPad Air 2 and iPad mini 4, because those models topped out at iPadOS 15 rather than 16. (expo.dev) Basically, if a device’s last major OS was 15, Expo 56 leaves it behind. ### Is this the same as Apple’s SDK rule? Not exactly — and this is the part that trips people up. Apple’s App Store rule is about what SDK and Xcode version you build with. Since April 24, 2025, Apple has required iOS apps submitted to App Store Connect to be built with the iOS 18 SDK and Xcode 16 or later. (support.apple.com) That does not automatically force your app’s minimum supported OS to 16.4. Expo’s new floor is a framework choice layered on top of Apple’s submission rule. ### So why would Expo raise the floor? (support.apple.com) Usually for maintenance and compatibility. New React Native releases, new Xcode toolchains, and newer native APIs all get easier to support when the framework stops carrying years of backward-compatibility baggage. SDK 56 also bundles React Native 0.85.2 and React 19.2.3, so this looks like part of a broader platform reset rather than a one-off tweak. ### Can developers override it? Sometimes, but there’s a catch. Expo’s build-properties plugin lets developers set an iOS deployment target during prebuild, which matters for teams with custom native workflows. (expo.dev) But Expo’s docs now show 16.4 as the example target, and once the underlying packages themselves require 16.4, lowering the number is not a magic fix. You can try, but unsupported combinations tend to become your problem fast. ### What does this mean for app teams? If your users still include people on iPhone 7-era hardware, you now have a product decision to make. (expo.dev) You can stay on an older Expo SDK for longer, split your release strategy, or move more of the app into a custom native setup that you own. None of those options are free. The whole appeal of Expo is that it removes this kind of platform plumbing — but when the baseline moves, everyone moves with it. ### Bottom line? This is less about one old phone and more about where the React Native toolchain is heading. (docs.expo.dev) Expo is telling developers that iOS 16.4 is the new normal. If your app still needs to serve Apple devices stranded on iOS 15, the easy path just got harder. (docs.expo.dev)