3 min read

Shopify is leaving React Native after agents changed its cost model

Shopify rebuilt Shop in 12 weeks, backed by native specialists and strict parity checks. Maintaining two apps remains part of the bet.
Shopify banner showing React Native splitting into Swift and Kotlin, with Shop startup improvements of 23% on iOS and 50% on Android.

Shopify is moving its mobile apps from React Native to separate Swift and Kotlin implementations. The company says coding agents reduced the cost advantage of writing a feature once for both platforms, making direct access to each platform worth maintaining two codebases.

The Shopify React Native migration has produced one finished app. Shop was rebuilt with SwiftUI and Jetpack Compose and shipped in 12 weeks. The main Shopify app has more than 300 screens, and its migration is still underway with completion planned for later in 2026.

The reversal is unusually direct. In January 2025, Mustafa Ali wrote that Shopify would keep investing in React Native and adopt the framework's New Architecture. That post reported sub-500 ms P75 screen loads and more than 99.9% crash-free sessions, so this wasn't presented as a performance rescue. Less than twenty months later, he authored the announcement explaining why the company changed course.

A framework upgrade became a decision point

Shop was approaching another major React Native investment: adopting the New Architecture. That would have required the team to revisit native-module integrations, rendering, and the boundary between shared and platform-specific code. Before committing, Shopify tested whether agents could instead recreate the app directly in SwiftUI and Jetpack Compose.

One engineer spent a week on a SwiftUI proof of concept. It wasn't production-ready, but it reproduced enough of the app to make a close migration look feasible. Shopify then chose a greenfield rebuild instead of gradually replacing the existing app.

For the full Shop migration, six core engineers built the native foundations and main journeys. Feature teams joined midway to validate their areas and cover edge cases. Shopify also retired some screens and streamlined others, so the 12-week result wasn't a like-for-like translation.

Shopify reports that cold startup, measured from tapping the icon until the initial home feed appears, fell 23% on iOS, from 3,200 to 2,466 milliseconds. Android improved 50%, from 4,433 to 2,233 milliseconds. Session stability rose from above 99.5% to above 99.95%, which Shopify describes as a tenfold reduction in crashing sessions.

The Android release became 109 MB smaller and its release build time fell by about 75%. On iOS, the release grew by 1 MB and build time stayed roughly the same. These company measurements from one redesigned app aren't a general framework benchmark.

The useful part is the agent infrastructure

For Shop's leg of the Shopify migration to Swift and Kotlin, the team extended the Pi coding agent to inspect the old code, document behavior, prepare platform plans, implement features, and review parity. Engineers approved each plan, and approval was tied to a hash. Editing the plan invalidated the earlier sign-off.

Tardis, a debugging tool, gave agents structured access to live native events, logs, and state and could send app commands. Its parity feature captured screenshots and event windows from both versions at named checkpoints.

Native specialists still guided architecture and caught duplication, drift, and performance problems in generated code. The Shop workflow backed them with repository guidance, linting, tests, static analysis, performance checks, and ordinary code review.

For the larger Shopify app, a separate system called Helix divides screens into small checkpoints. Each must pass tests and visual review, survive two adversarial reviewers, and receive human approval.

Shopify is also decoupling business logic from UI so it can run headlessly on a desktop, exposed through a CLI. Agents can exercise it in milliseconds instead of waiting minutes for a simulator. As the Hacker News discussion noted, this architecture can benefit a React Native app too.

HN reaction was mixed: some developers endorsed the move, while others questioned the lifetime cost of two apps. The r/reactnative thread focused first on Shopify's open-source libraries, followed by Kotlin Multiplatform and the New Architecture timing.

Shopify still has React Native obligations

The company announcement sets different paths for three libraries. Shopify will sponsor React Native Skia through the end of 2026. William Candillon will then continue the project by forking it and publishing under a new name; the original repository will be archived after that transition.

FlashList's future is less settled. Shopify says it gets about two million weekly downloads and promises to fix critical issues that break compatibility while discussing long-term stewardship with several companies. Restyle will keep working through the end of 2026 before Shopify stops maintenance and archives the repository. The company has offered to help any team that forks it with the handover.

For mobile teams, the lesson is to measure more than generated-code velocity. Shopify's bet depends on native expertise and durable parity controls, plus an architecture that lets agents test their work quickly. Those investments changed its break-even point. Another team may run the same experiment and keep the shared codebase.