Moving from Capgo
· Capgo
Capgo and Native Update do the same core job in the same place: a plugin in your Capacitor app that fetches a web bundle. So this is a real move, and it takes one store release to finish, because the plugin is native code. Devices on your old build keep talking to Capgo until they update.
Stay if the open source stack is why you chose Capgo. Native Update's plugin and service aren't open source.
Before you start
You need a Capacitor 8 project and Node 24.16 or newer. Check the requirements first, since older Capacitor versions aren't supported.
1. Install the plugin
Add native-update, then try the steps below on a staging build before your production app.
yarn add native-update
npx cap sync
2. Create the app and a signing key
Sign in at the dashboard, create an app with your real Capacitor appId, and copy the API key. Then generate a key pair:
npx native-update keys generate --type rsa --size 4096
The private key goes in your CI secrets. Signing is required here, and this page explains what the device checks.
3. Swap the calls
Remove the Capgo calls from your boot code, then initialize the plugin and confirm the boot. A bundle that never confirms reverts by itself after two failed cold starts.
import { NativeUpdate } from 'native-update';
await NativeUpdate.notifyAppReady();
const result = await NativeUpdate.sync();
4. Rebuild your channels
Your Capgo channels don't carry over. Recreate the ones you use, following Manage release channels. A percentage rollout is set per release, not per channel.
5. Ship through the store, then release
Remove Capgo's plugin, run npx cap sync, and ship that build through the store. From then on, releases go through the CLI:
export NATIVE_UPDATE_TOKEN=nu_pat_…
npx native-update deploy ./dist --app com.example.app --rollout 5 --wait
Start small, watch the dashboard, then widen. Keep your Capgo account until the old store build has aged out.
The facts, dated
Capgo prices
| Plan | Price | Terms | Source |
|---|---|---|---|
| Solo | $14 a month | $146 billed yearly; 2,000 MAU, 100 GiB/month | Source |
| Maker | $39 a month | $396 billed yearly; 10,000 MAU | Source |
| Team | $99 a month | $998 billed yearly; 100,000 MAU | Source |
| Enterprise | $249 a month | from $249/mo; 1,000,000+ MAU | Source |
| Pay as you go | $5 once | $5 prepaid credits valid 12 months; no subscription | Source |
Native Update prices
| Plan | Price | Terms |
|---|---|---|
| Free | $0 | 30 apps, 5,000 monthly active users |
| Pro | $9.99 a month | Unlimited apps, 50,000 monthly active users |
| Team | $8.99 per seat a month, 3 seats minimum | Unlimited apps, 100,000 monthly active users per member |
Feature by feature
| Feature | Capgo | Native Update |
|---|---|---|
| Over-the-air web bundle updates | Yes · Source | Yes |
| Signed bundles, verified on the device | Yes · Source | Yes |
| Automatic rollback when a bundle fails to start | Yes · Source | Yes |
| Roll back from the dashboard or CLI | Yes · Source | Yes |
| Rollout to a percentage of devices | Yes · Source | Yes |
| Channels (development, staging, production) | Yes · Source | Yes |
| Delta updates | Yes · Source | Yes |
| Your own server or self-hosting | Yes · Source | Yes |
| In-app store update flow | Not stated on the pages we checked | Yes |
| In-app review prompt | Not stated on the pages we checked | Yes |
| Background update checks | Not stated on the pages we checked | Yes |
| CLI plus HTTP management API | Not stated on the pages we checked | Yes |
| Capacitor apps | Yes · Source | Yes |
| React Native apps | Not stated on the pages we checked | No |
| Flutter apps | Not stated on the pages we checked | No |
| Native Android and iOS apps | Not stated on the pages we checked | No |
| Free plan | No · Source | Yes |