Why CodePush really died — and how to pick a successor that won't
CodePush was retired with App Center, even though the client and server code were later published for self-hosting. The vendor-risk lesson is to evaluate the product you rely on, not just its owner.
CodePush's retirement is a useful reminder that a dependency can end even when teams still rely on it. If you're choosing its successor, understanding the product and support model matters as much as any feature comparison — including ours.
What actually happened
Microsoft's archived CodePush client repository states that App Center and CodePush retired on March 31, 2025; the repository was archived on May 20. Microsoft also published an archived, standalone CodePush serverthat teams can deploy independently, but says it provides no support services. That gives teams an escape hatch, not an actively supported roadmap.
The pattern, generalized
The failure mode was structural: infrastructure you depend on can be a smaller feature of a broader product. Company stability is not the only variable — the feature's position in that company's strategy is. A focused vendor may have better-aligned incentives, but it also has its own business-continuity risks. Evaluate both, rather than treating company size as a proxy for safety.
The questions to ask any OTA vendor — including us
- Is this the core business? If updates are one tab of a broad platform, ask what happens to the tab when strategy shifts. If updates are the whole company, the incentives are aligned by construction.
- Is there a sustainable support model? Understand who funds maintenance, security work, and incident response — whether that is a paid tier, internal ownership, or a documented open-source governance model.
- What's the exit path? Standard bundle formats, documented removal steps, and no proprietary lock on your release history mean that leaving is a sprint, not a quarter. Vendors confident you'll stay don't need to trap you.
- Does the client keep pace with React Native? The archived CodePush SDK is the cautionary tale: an OTA client is native infrastructure. React Native enabled the New Architecture by default in 0.76 and made it the only runtime in 0.82. Ask when the vendor shipped support for the current RN release, not whether they intend to.
- What happens on the worst day? If the vendor disappears tomorrow, do shipped apps keep working on their last bundle? Can you stand up a replacement before your next release? Ask for the actual answer, in writing.
Answering our own questions
It would be cheap to write this and not go on the record. BetterCodePush is a single-purpose company — OTA updates for bare React Native and Expo prebuild are the entire product, there is no platform for it to be a minor feature of. The beta is free, but it is explicitly a beta on the way to paid tiers, because we think you should be suspicious of anyone claiming they'll run your release infrastructure for free indefinitely. And apps we serve keep running their installed bundle even if our CDN vanishes — an update service failing should mean no new updates, never a broken app.
Whoever you pick, pick with the App Center lesson in mind: the risk isn't that your OTA vendor is small. It's that your OTA vendor doesn't need you. The full field, with our honest read on each option, is in the 2026 alternatives comparison.