OTA Pricing Calculator
What Are You Actually Paying for OTA Updates?
Every major OTA platform uses a different pricing model. Set your scale below and see exactly what each one costs you — side by side.
Configure Your Scale
Monthly Cost Comparison
Base $199 + 4883 GiB bandwidth ($388 overage)
1M installs/mo at $1 per 2,500
Global CDN included · no config needed · $490/yr · 2 months free annual
Control plane only · pay your cloud provider's rates · unlimited MAU · $290/yr · 2 months free annual
Cost at your scale — Growth plan
Expo EAS
$587/mo
MAU tiers + bandwidth overages
RNPush
flat-rate · no MAU penalties · no overages
Switch to BYOS and save $6.7K/yr vs Expo EAS
Join Waitlist →Pricing models explained
How Each Platform Charges
Same app, same users, wildly different bills. Here’s why.
You pay a base fee that jumps at each user milestone (free → $19 → $199), plus $0.10 per GiB of bundle downloads beyond your plan's included allowance. Both charges hit simultaneously when you grow.
Billed per install, not per MAU cap. At 100K users × 20 updates/mo that is ~$800/mo — scales with how often you ship.
Generous free tier for small apps. Once you pass 10K users, you move to $64/mo. Cost increases as you grow through user tiers.
Tier-based: free up to 1K MAU, $49/mo up to 50K, $99/mo up to 300K, $249/mo up to 500K. Bill jumps at each threshold as you grow.
A single monthly price. No MAU tiers. No bandwidth charges. With Bring Your Own Storage (BYOS), bundles are served from your cloud bucket at commodity rates — not our servers.
FAQ
Common Questions
What is a MAU in OTA billing?
A Monthly Active User is any unique device that checks for or receives an update in a calendar month. On most platforms, even a device that checks but downloads nothing still counts — which inflates your billing MAU compared to your actual active user count.
Why do some platforms charge for bandwidth?
When your app downloads a JS bundle update, the bytes consumed are bandwidth. Platforms that host the bundles themselves often charge per GiB delivered. With BYOS (Bring Your Own Storage), you connect your own S3 or R2 bucket and pay commodity storage rates (~$0.023/GiB) instead of OTA platform markup ($0.10/GiB).
How is flat-rate pricing different from tiered?
Tiered pricing charges more as you grow — cross a user milestone and your bill jumps, even if you ship exactly the same number of updates. Flat-rate pricing locks you into one monthly fee regardless of how many users you have or how often you push updates.
Which platform is cheapest at scale?
It depends on your update frequency and bundle size. For teams shipping frequently to large user bases, per-MAU and bandwidth-metered platforms escalate quickly. RNPush is flat-rate: the same $49/mo covers up to 100K MAU with unlimited updates and no bandwidth charges.
Can I migrate from my current platform without resubmitting to the App Store?
Yes — OTA updates only replace the JavaScript bundle, not the native binary. Switching OTA platforms never requires an App Store or Google Play submission. For most platforms, RNPush provides a CLI migration command that handles the configuration change in minutes.
Ready to switch?
Stop Guessing. Lock In a Flat Rate.
RNPush charges one price per month — no MAU penalties, no bandwidth invoices, no surprises at the end of the billing cycle. Join the waitlist and be first in when we launch.
Join the Waitlist →Free Hobby plan available at launch. No credit card required.