How to upgrade to Expo SDK 56
Key Points
- React Native 0.85 & React 19.2
- Hermes bytecode diffing enabled by default
- Expo Go not on app stores — use development builds
Summary
Expo SDK 56 targets React Native 0.85 and React 19.2, supports Android API level 36 and Xcode 26.4+, and keeps minimum OS support at Android 7+ and iOS 16.4+. Key ergonomics: prebuilt iOS XCFrameworks and Android CMake precompiled headers to speed native builds, Hermes bytecode diffing enabled by default for smaller updates, inline Expo Modules support, and stronger guidance toward the New Architecture.
Key Points
-
Platforms and versions
- React Native 0.85, React 19.2
- Android API 36, Xcode 26.4+, min OS Android 7+/iOS 16.4+
-
Build performance
- iOS: prebuilt XCFrameworks shipped by default (opt out with
EXPO_USE_PRECOMPILED_MODULES=0) — works locally and on EAS Build. - Android: opt-in
android.usePrecompiledHeadersinexpo-build-propertiesto enable CMake precompiled headers for faster C++ compile times.
- iOS: prebuilt XCFrameworks shipped by default (opt out with
-
Update delivery
- Hermes bytecode diffing (binary patch updates) is enabled by default; opt out with
"enableBsdiffPatchSupport": falsein theupdatesblock ofapp.json.
- Hermes bytecode diffing (binary patch updates) is enabled by default; opt out with
-
Expo Go and development builds
- Expo Go for SDK 56 is not available on public app stores; prefer development builds for uninterrupted development.
- Install Expo Go for SDK 56 via Expo CLI on Android, or use TestFlight /
eas gofor iOS. - Local dev builds:
npx expo run:android/npx expo run:ios.
-
Developer tooling and automation
- Use the expo/skills upgrade skill with Claude Code: add with
/plugin marketplace add expo/skillsand/plugin install expo, orbunx skills add expo/skillsfor other agents. Work on a separate branch and review changes. - Use Expo MCP tools to collect build logs (
build_logs) and native logs (collect_app_logs) for troubleshooting.
- Use the expo/skills upgrade skill with Claude Code: add with
-
Inline Expo Modules
- You can define native Expo modules inline in your project and develop them with Android Studio / Xcode.
-
New Architecture guidance
- SDK 54 was the last to support the Old Architecture. RN 0.83+ requires the New Architecture. Do not adopt New Architecture and upgrade SDK simultaneously — migrate to New Architecture first (preferably on SDK 54), verify, then upgrade to SDK 56.
Practical upgrade checklist
- Read the SDK 56 changelog and breaking changes before upgrading.
- Create a feature branch and commit points for easy rollback.
- Run the Expo upgrade skill to update packages and handle common breaking changes.
- Switch to a development build to avoid expo-go versioning issues during the transition.
- If builds fail, collect EAS build logs and native logs, and create a minimal reproduction repository for GitHub issues.
- Consider opt-outs if needed:
EXPO_USE_PRECOMPILED_MODULES=0(iOS) or setenableBsdiffPatchSupporttofalsefor updates.
Where to get help
- Consult the troubleshooting guides and New Architecture migration guide.
- Open a GitHub issue with a minimal reproduction; include platform, logs, and steps to reproduce.
- Use community channels (Discord, Reddit) for rapid discussion and debugging.
Happy upgrading — test on a development build, iterate on a branch, and open issues with minimal repros if you hit blockers.