OTA Updates for React Native
< 5 minSetup
0 msDowntime
100%Managed

Ship updates without the app store

Deploy JavaScript & asset updates to your React Native app in seconds. Fix bugs, ship features β€” no review, no waiting, no downtime.

Device RollbackPer-App StorageDelta PatchingCode Signing
Features

Everything you need for OTA updates

A complete, subscription-based platform purpose-built for React Native over-the-air deployments.

Device-Specific Rollback

Roll back any individual device from the dashboard without affecting others. Real-time status: pending β†’ triggered β†’ done.

Per-App Storage

Bring your own S3, Azure Blob, or GCS bucket β€” configured per app, not just per account. Complete bundle isolation for every app.

Instant OTA Updates

Push JavaScript & asset updates straight to users' devices. No app store review, no waiting.

One-Click Rollbacks

Instantly revert to any previous version if something goes wrong. Zero downtime guaranteed.

Code-Signed Delivery

Cryptographic code signing ensures only verified, tamper-proof updates reach your users.

React Native First

Purpose-built for React Native β€” update JS, images, and assets in real time.

Secure & Reliable

Enterprise-grade security with code signing, encrypted delivery, and full audit trails.

Delta Patching

Binary diffs mean users download only what changed β€” dramatically smaller updates.

Unique Capabilities

Features you won't find anywhere else

Device-specific rollback, per-app isolated storage, and deep per-device analytics β€” built from the ground up for production teams.

Industry First

Device-Specific Rollback

Every other OTA platform rolls back an entire deployment. CodePush lets you roll back a single device from the dashboard β€” targeting exactly the problematic device without touching anyone else.

3-stage state machine: rollback_pending β†’ rollback_triggered β†’ rollback_done

Server signal persists until device confirms it is on the binary bundle

SDK atomically clears update and restarts on binary β€” no race conditions

Real-time status visible in the Device Analytics dashboard

Unique Architecture

Per-App Storage (BYOS)

Configure a separate cloud bucket for each individual app β€” not just per account. Each app's bundles live in completely isolated infrastructure. Mix AWS, Azure, and GCS across your apps.

App-level override beats org-level credentials, which beat platform defaults

Supports AWS S3, Azure Blob Storage, and Google Cloud Storage

Live credential validation before saving β€” test upload + delete

Perfect for multi-tenant, compliance-sensitive, or regulated environments

Deep Observability

Per-Device Analytics & Unique IDs

Every device gets a unique sequential integer ID β€” not a UUID. Track exactly which device is on which bundle, block individual devices from receiving updates, and drill into per-device history.

Unique auto-increment integer ID per device (e.g. device #42)

Block / unblock individual devices with one click

Full per-device status history: installed, failed, rollback stages

Sortable and filterable table β€” find any device instantly

How It Works

Four steps to instant updates

From integration to production in minutes β€” not weeks.

1

Integrate the SDK

Add the CodePush SDK to your React Native app with a few lines of code.

2

Push an Update

Use the CLI or web dashboard to create and release a bundle update.

3

Users Get It Instantly

The SDK checks for updates on launch and applies them seamlessly β€” no store involved.

4

Monitor & Rollback

Track adoption in real time. Roll back in one click if anything goes wrong.

Pricing

Simple, transparent pricing

Start free, scale when you're ready. No hidden fees, no surprises.

FAQ

Frequently asked questions

Ready to ship updates faster?

Join teams that deploy mobile updates in minutes β€” not days. Start with the free plan, upgrade when you're ready.