Documentation
On this page

EAS Update pricing explained (2026)#

EAS Update is Expo's hosted service for over-the-air (OTA) updates to React Native and Expo apps. Its bill has three moving parts: a monthly plan, a charge for each update user above the plan's allowance, and bandwidth above a quota. This page explains each part and works through the cost at 10,000, 100,000 and 1,000,000 users.

All EAS figures come from expo.dev/pricing and its Markdown version, checked October 2026. Rollbird publishes this page; Rollbird's own pricing is at the end, kept separate from the explanation.

The plans#

PlanMonthly priceUpdate MAUs includedBandwidth included
Free$01,000100 GiB
Starter$19 plus usage3,000100 GiB
Production$199 plus usage50,0001 TiB
EnterpriseCustom1,000,00040 TiB

The Free plan has no overage: usage is limited to what it includes, so an app past 1,000 update users needs a paid plan.

What counts as an update MAU#

Expo defines it this way: a user who downloads one or more updates in a billing cycle counts as one monthly active user (MAU). A user who opens the app but downloads no update that month doesn't count.

Two practical consequences:

How overage is charged#

Above the plan's allowance, each extra update user is billed on graduated tiers. Each rate applies only to the users inside its band, like tax brackets.

Update MAUs (Starter and Production)Price per extra MAU
Up to 200,000$0.005
200,001 to 500,000$0.00375
500,001 to 1,000,000$0.0034
1,000,001 to 2,000,000$0.003
2,000,001 to 3,000,000$0.0024
3,000,001 to 6,000,000$0.0022

The tiers continue down to $0.00085 per MAU above 100 million. Enterprise starts its overage after 1,000,000 included users, at its own rates.

Bandwidth#

Bandwidth over the quota costs $0.10 per GiB. The quota grows with your audience: on Starter, Production and Enterprise, every update user above the plan's allowance adds 40 MiB to the included bandwidth.

That means overage starts when the average update user downloads more than about 30 to 40 MiB a month:

Plan and sizeIncluded bandwidthAverage per user before overage
Starter at 10,000 MAU100 GiB + 7,000 × 40 MiB ≈ 373 GiBabout 38 MiB
Production at 100,000 MAU1 TiB + 50,000 × 40 MiB ≈ 2,977 GiBabout 30 MiB
Production at 1,000,000 MAU1 TiB + 950,000 × 40 MiB ≈ 38,133 GiBabout 39 MiB

A large bundle shipped twice a month can cross that line. The worked examples below leave bandwidth out, then show one case where it matters.

Worked examples#

The cheapest plan at each size, before bandwidth:

Update MAUsCheapest planCalculationMonthly cost
1,000FreeIncluded$0
10,000Starter$19 + 7,000 × $0.005$54
100,000Production$199 + 50,000 × $0.005$449
1,000,000Production$199 + 150,000 × $0.005 + 300,000 × $0.00375 + 500,000 × $0.0034$3,774

Why those plans: at 100,000 users, Starter would cost $19 + 97,000 × $0.005 = $504, more than Production's $449. At 1,000,000 users Starter would cost $3,829 against Production's $3,774.

The 1,000,000 line, step by step: $199 for the plan, $750 for users 50,001 to 200,000, $1,125 for users 200,001 to 500,000, and $1,700 for users 500,001 to 1,000,000.

With bandwidth. Take the 100,000-user app and say each user downloads two updates of 20 MiB in a month. That is about 3,906 GiB against a quota of about 2,977 GiB, so about 929 GiB of overage at $0.10, or roughly $93. The month costs about $542 instead of $449. The exact figure depends on how Expo measures the transferred bytes, so treat it as an illustration.

When EAS Update is the right choice#

When the per-user model costs more#

The bill tracks how many people download your updates, so it rises with every user you gain, whether or not your release process changed. A team that grows from 10,000 to 100,000 users goes from $54 to $449 a month for the same work. Teams in that position usually compare a flat-priced hosted service against running their own server; the CodePush alternatives page lists both kinds.

How Rollbird prices instead#

Rollbird is a hosted OTA update service for bare React Native and Expo apps, with staged releases, free rollback, and no per-user pricing. Its plans are priced on apps, storage, seats and release history:

PlanMonthly priceAppsStorageMembersProduction releases
Free$01250 MB13 a month
Indie$732 GB1Unlimited
Team$151010 GB3Unlimited
Studio$29Unlimited50 GB10Unlimited

Annual billing costs ten times the monthly price. At 10,000, 100,000 or 1,000,000 users, an app on Indie still pays $7 a month. Rollback is always free and never counts against a limit. See pricing for the current plans.

Where EAS still wins against Rollbird: it is free below 1,000 update users, it is part of the Expo toolchain, and its rollout tooling goes further, with branch-based rollouts and percentage changes from the CLI. The Rollbird vs EAS Update comparison covers setup, concepts and migration.