Ship React Native updates in minutes, not days
Fully managed CodePush OTA updates for React Native. Deliver JS bundle updates directly to your users in minutes, not days. No app store review. No infrastructure to manage.

1. Install the SDK
Works with bare React Native and Expo, including the New Architecture. One package install, one link step, and you're ready to receive updates.
brew install bitrise && bitrise plugin install --source https://github.com/bitrise-io/bitrise-plugins-codepush-cli.git

2. Push a deployment
Bundle your update and ship it from CLI, the REST API, or any CI workflow. Target by app version or deployment ring — staging, beta, production are ready out of the box.
bitrise :codepush bundle --platform ios

3. Ship safely
Roll out to a percentage of users first. Watch adoption. Roll back to any prior bundle in one click if something looks off — recovery measured in minutes, not days.
bitrise :codepush push --bundle --platform ios --app-version 1.0.0
Staged rollout, one-click rollback
Push to 5%, watch crash-free rate, expand when the data looks clean. If it doesn't, revert to the last good bundle in seconds — no resubmission, no waiting room.
Mandatory updates for critical fixes
Force the update on next launch when the bug is bad enough — your users get the fix on their next session, not in three days when Apple gets to it.
Works with any CI
Bitrise CI, GitHub Actions, CircleCI, Jenkins, or your laptop. Every dashboard action is in the REST API, so the deploy is a single workflow step wherever your build runs.
Built for modern React Native
Bare React Native, Expo, and the New Architecture — the SDK keeps up with the ecosystem so you don't get stuck on an older RN version.
Managed CDN, predictable pricing
We run the global CDN. You don't pay surprise egress on top of a subscription. Pricing scales with MAUs, not update count — so a release-heavy week doesn't blow up the bill.
Enterprise-grade by default
Code-signed bundles, SOC 2 Type II, PCI DSS, GDPR. AES-256 in transit and at rest. Role-based access and an audit trail across every release.
- 100,000 monthly active users
- 5,000 GiB/month data transfer
- 5 GiB storage
- Up to 5,000,000 monthly active users
- Up to 250,000 GiB/month data transfer
- 25 GiB storage
- Unlimited monthly active users
- Unlimited monthly data transfer
- Unlimited storage
Ship React Native updates in minutes
Shipping to 100,000 MAU for free, choose a plan later.
By signing up, you accept our Terms of Service and Privacy Policy
Frequently Asked Questions
What is Bitrise CodePush and how does it work?
Bitrise CodePush is a hosted over-the-air (OTA) update service for React Native and Expo apps, built into Bitrise Release Management. It has two components: the Bitrise CodePush Server, where you publish updates, and the open-source react-native-code-push SDK embedded in your app. The SDK checks for updates at launch and applies them automatically, delivering JavaScript bundle and asset changes directly to users without going through App Store or Google Play review.
Learn more: docs.bitrise.io/en/release-management/codepush/about-codepush.html
What is the difference between Bitrise CodePush and a traditional app store release?
A traditional release requires every update to be compiled, submitted, and reviewed by Apple or Google, which takes hours to days. With CodePush, JavaScript bundle and asset updates are delivered directly to users as soon as you publish them, with no store submission required. Note that native code changes still require a traditional store release.
Is Bitrise CodePush based on the Microsoft CodePush service?
Yes. It is built on the same open-source foundation as the original App Center CodePush service, so the protocol and SDK behaviour will be familiar to existing users. Bitrise hosts, maintains, and actively develops the service, with native integration into Bitrise authentication and Release Management.
What do I need to get started?
You need a Bitrise account with access to Release Management (available on free plans), a Release Management app set up for your React Native or Expo project, and a CodePush deployment created within that app to generate your deployment key. Finally, integrate the react-native-code-push SDK into your app and point it at the Bitrise CodePush Server. Once set up, you can publish updates from the Bitrise UI or automate them via the CodePush CLI.
Get started: docs.bitrise.io/en/release-management/codepush/creating-a-codepush-deployment.html
Can I use Bitrise CodePush with any CI system?
Yes. Bitrise CI has a dedicated native integration, but the CodePush CLI works with any CI tool including GitHub Actions, GitLab CI, CircleCI, and Jenkins. The server is accessed over standard HTTPS, so no special network configuration is needed.
Read more: docs.bitrise.io/en/release-management/codepush/codepush-updates-with-bitrise-ci.htm
Is there a free plan?
Yes. The Basic tier is free and supports up to 100,000 monthly active users and does not require a paid Bitrise CI plan.
What counts as a monthly active user (MAU)?
A monthly active user is a unique end user who downloads one or more CodePush updates within a single billing month. Multiple downloads by the same person in that month count as one MAU.
What is data transfer and how is it measured?
Data transfer is the total size of update files delivered to your users, measured in GiB.
How much storage do I get for CodePush artifacts?
Storage depends on your plan. The free Basic tier includes 5 GiB, Pro plans include 25 GiB, and Enterprise plans start at 50 GiB.


