Shopify Killed Its Six-Year React Native Bet. AI Coding Agents, Not Native Snobbery, Made the Call.
Shopify just retired a six-year bet. On September 10, its engineering team published a post saying it's migrating every mobile app, Shopify, Shop, Point of Sale, Inbox, back to native Swift and Kotlin, walking away from the React Native strategy it went all-in on in 2020. The Shop app already made the trip: proof of concept to a fully rebuilt app published in both app stores in 12 weeks, with a core team of six engineers. The reason isn't that React Native broke, or that native purists finally won an argument they'd been losing since 2020. It's that AI coding agents ate the exact labor cost React Native existed to save.
That distinction matters if you're a solo builder weighing React Native or Flutter against native for your next app. Shopify's post is a genuinely useful data point. It is not a verdict, and it's worth being precise about why.
What actually changed Shopify's math
Shopify's 2020 case for React Native came down to three things, according to its own writeup: stop building the same feature twice, let developers work across iOS and Android without being platform specialists, and spend less time chasing feature parity between the two. All three held up. In January 2025 the team wrote that React Native's future at Shopify looked bright and that they planned to keep investing in it. Eight months later they reversed course, and their explanation is refreshingly specific: coding models got dramatically better in the interim, and building the same feature twice, once in Swift and once in Kotlin, stopped costing what it used to.
The mechanism they point to is the one that used to be React Native's whole pitch: an agent can now implement a feature on Android using the existing iOS implementation as its reference, and do the reverse just as easily. That's precisely the "write once" labor saving cross-platform frameworks were invented to capture. Shopify's argument isn't that native is better in the abstract. It's that agents can now do enough of the translation, testing, and parity work that the shared-codebase discount no longer decides the question.
Twelve weeks, six engineers, and a system built to stop the slop
Before committing to a full rewrite, Shopify ran a one-week proof of concept: a single engineer used coding agents to recreate as much of the Shop app as they could in native SwiftUI, treating the existing React Native app as a reference implementation. It wasn't production-ready, but it was convincing enough that Shopify greenlit a full migration. From there, a core group of six engineers built the native foundations and main user flows, with feature teams joining midway to cover edge cases, and the whole thing shipped in 12 weeks.
Shopify is upfront that naive agent usage didn't get them there. Pointing an LLM at the React Native codebase and asking for a one-shot native rewrite produced what one of its engineers called slop: code that technically worked but wasn't maintainable. To fix that, Shopify built an internal tool called Helix that forces the migration through small, gated checkpoints instead of one giant leap. A developer points Helix at a single screen, and Helix breaks that screen into an ordered sequence of small changes. Each checkpoint has to pass automated tests, match the running app in a visual review, and survive two adversarial code reviews, then get a human's sign-off, before the next checkpoint is allowed to start.
The results weren't just "good enough to ship." On the rebuilt Shop app, iOS cold start time dropped from 3,200ms to 2,466ms and Android dropped from 4,433ms to 2,233ms, roughly a 50% cut. Session stability climbed from 99.5%+ to 99.95%+, about a tenfold drop in crash-affected sessions. The Android release build shrank by 109MB. None of that happens by accident; it's what the checkpoint-and-review structure of Helix was built to protect.
The fallout for the React Native ecosystem
Shopify didn't just leave React Native, it built some of the tools people used to like it there, and now it's unwinding that involvement too. React Native Skia will keep getting Shopify sponsorship through the end of 2026, after which its creator will fork it under a new name and the original repo will be archived. FlashList, which the post says gets roughly 2 million downloads a week, will still get critical fixes from Shopify while the company looks for another organization to take over long-term stewardship. Restyle, the smallest of the three by usage, is being archived outright: maintained through the end of 2026, then left for anyone who wants to fork it.
None of that is a claim that React Native itself is dying. Meta still owns and ships it, and Shopify's own post calls it "an excellent framework" that served them well for six years. It's one very large, very public adopter concluding the tradeoff that justified its adoption no longer holds for them.
What I'd actually do
If I were picking a stack for a brand-new mobile app today, this would push me to actually prototype the native path before defaulting to React Native or Flutter, not skip straight past it. Build the same one non-trivial screen twice, once with an agent working in Swift and Kotlin directly, once in your cross-platform framework of choice, and compare how much babysitting each required. That's a half-day experiment, and it tells you more than any blog post will.
What I wouldn't do is treat this as a signal to rewrite an existing React Native app. Shopify had the scale to build Helix, plus a companion debugging tool called Tardis and a custom Pi coding-agent extension, specifically so agents wouldn't produce unmaintainable output. Most solo operators don't have the time or the reason to build that scaffolding. Without it, "just let the agent write native code for both platforms" is exactly the failure mode Shopify hit on its first attempt, the one Helix was built to prevent. If your React Native app works and ships, this post is interesting, not actionable.
Where I could be wrong: the tooling gap I'm describing might close faster than I expect. A solo builder today can already lean on a strict CI test gate plus a single adversarial review pass as a rough, low-effort approximation of what Helix does at Shopify's scale, and that gap will keep narrowing as agents get better at self-verifying their own output. And plenty of solo apps never need the startup-time and crash-rate ceiling Shopify was chasing at hundreds of millions of sessions; "good enough" cross-platform performance is still good enough for most of us. Prototype both paths for a new app, trust the experiment over the trend piece, and don't let one very well-resourced company's very good blog post talk you into a rewrite you don't need.
Author
Lukas
@lukcombinator