Short answer: budget 15 to 25 percent of the original build cost every year to maintain a mobile app, so $9K to $15K a year for a $60K app. Hosting and third-party services come on top. The work is mostly yearly iOS and Android updates, store deadlines, library upgrades, crash fixes and small changes users ask for.
The number most founders leave out of an app budget is what it costs after launch. An app is not finished when it reaches the store. Apple and Google change the platforms every year, the libraries it depends on move, and the store rules have deadlines that remove apps that fall behind.
This guide explains what the yearly cost covers, how to estimate it for your app, and how to keep it down. For the build cost itself, see what an iOS app costs or what a React Native app costs.
Yearly Maintenance Cost by App Size
| Build cost | Yearly maintenance | Typical hours a month | Hosting and services |
|---|---|---|---|
| $30K MVP | $4.5K to $7.5K | 4 to 6 | $25 to $150 a month |
| $60K app | $9K to $15K | 7 to 12 | $50 to $500 a month |
| $150K app | $22K to $38K | 17 to 30 | $300 to $2K a month |
| $300K regulated app | $45K to $75K | 35 to 60 | $1K to $5K+ a month |
Hours assume a blended rate of about $110 an hour. Maintenance is not spread evenly: expect a busy few weeks every year after Apple and Google release new OS versions, and quieter months in between.
What the Maintenance Budget Pays For
- Yearly iOS and Android releases. Each new OS changes permissions, background behaviour, privacy rules or UI. Apple ships its major release every September and Google ships Android on its own yearly schedule. Testing and fixing for them is the single biggest recurring item.
- Store requirements. Apple periodically requires new uploads to be built with a recent Xcode and SDK. Google Play requires apps to target an Android API level within a year of the latest release, and enforces it on a fixed date each year. Miss it and the app stops appearing to new users on newer devices.
- Library and SDK upgrades. Payment, analytics, maps and login SDKs release new versions, deprecate old ones and sometimes shut down APIs. Cross-platform apps also upgrade the framework itself.
- Crash and bug fixes. Real users find problems testers did not. Crash reporting tells you where; someone has to fix them.
- Security updates. Patching vulnerable dependencies, rotating certificates and keys, and keeping authentication current.
- Small changes. Copy edits, a new setting, a tweak to onboarding. These are not new features, but they add up.
- Backend upkeep. Framework and server updates, database growth, backups and monitoring. If the backend is Laravel, the same yearly rhythm applies; see my notes on Laravel as a mobile backend.
New features are not maintenance. Budget them separately, or a maintenance contract turns into a slow, underfunded roadmap.
Fixed and Running Costs
- Apple Developer Program: $99 a year
- Google Play developer account: $25, one time
- Hosting: from about $25 a month on a paid backend-as-a-service plan to hundreds or thousands for a busy custom backend
- Crash reporting and analytics: often free at small scale, then priced by volume
- Email, SMS and push providers: priced per message once past free tiers
- Maps, search and AI APIs: priced per request, and the line most likely to grow with usage
- Test devices or a device cloud: a new device or two every couple of years
What Makes Maintenance Cost More
- Many third-party SDKs, each with its own upgrade cycle
- Custom native modules in a Flutter or React Native app
- Supporting old iOS and Android versions alongside new ones
- No automated tests, so every change needs a full manual check
- In-app subscriptions, which have their own rules and edge cases on each store
- Regulated data, which adds audits, security reviews and documentation
- A year or more without updates, which turns routine work into a project
Retainer or Pay as You Go?
Pay as you go suits a stable app with few users and no planned changes. You pay only for work done, but there is no guarantee anyone is free when a deadline or a crash spike arrives.
A monthly retainer suits an app with paying users. A fixed number of hours each month covers OS updates, store deadlines, monitoring and small fixes, and unused hours usually go toward planned improvements. The cost is predictable and urgent problems get a fast response.
Whichever you choose, ask for a short yearly plan: which OS releases and store deadlines are coming, which SDKs need upgrading, and what that will cost. Surprises are what make maintenance expensive.
How to Keep Maintenance Costs Down
- Update a little, often. Small regular upgrades are far cheaper than a big catch-up.
- Keep dependencies few. Every SDK you add is a future upgrade.
- Raise the minimum OS version each year. Supporting fewer old versions means less testing.
- Automate tests and releases. CI that builds, tests and ships saves hours on every update.
- Watch crash reports and store notices. Fix small problems before they become emergencies.
- Document setup and release steps. Anyone can then pick up the work without paying for rediscovery.
If an app has been left for a while and you are not sure what state it is in, a mobile architecture audit gives you a list of what is out of date and what it will cost to fix, before you commit to a plan.
