One of the first questions we hear from potential clients when we discuss turning their dream into reality, ‘How much does a mobile app development cost?’ The answer: ‘It depends.’ Like a car, it depends on what’s under the bonnet and how much chrome you want.
Predicting how much a client will eventually pay for a piece of software is treading on shaky ground: too many factors affect the end price.
The main costs of building a mobile app include:
- scope of work – design, features, complexity of app logic, target platform(s), degree of customization, 3rd-party add-ons, costs of project management, testing and publishing;
- desired timeline – the shorter the more expensive;
- development team – its location and experience directly affect the hourly rate.
The most frequent questions software development companies get focus on software development costs and timeline.
For example: a Clutch survey states median costs of native iPhone app development vary from $38,000 to $171,000 but can easily increase to $500,000 and over.
Also, not all platforms are created equal: estimates for the same scope of work differ based on competitive platforms (iOS, Android, Web).
Of course, you can get a mobile app for much less, e.g. by converting your website into a mobile app (when you have one). This doesn’t work for all apps. To get an estimate on costs, you need to start with a list of app requirements, desired functionality, and target platforms.
With the feature list and project aim in mind, a project manager determines how many people are needed to deliver the app, how much time is needed, and what technologies they can use to boost the development process.
Basically, you can choose from three main approaches: native, hybrid (aka cross-platform), and progressive web apps.
Hybrid / Cross-platform app development is done using the programming language of a specific development environment, e.g. C# for Xamarin. When the source code is completed, the next stage is converting it into the native language of the target platform.
Native app developers create mobile apps using a platform’s language, e.g. Objective-C and Swift for iOS, and Java for Android. Native apps have the fastest response and access to a smartphone’s hardware: this feature is crucial for specific apps like indoor navigation.
Progressive web apps by Google are a step forward from web to mobile apps: they can send push notifications and even access an accelerometer. A potential drawback might be that they work only in Google Chrome (limited use for iPhone apps).
Please note, that every technology requires skill and experience. The choice of a relevant technological stack depends on the type of app and the end goal.
In our experience, develoment time (i.e. development costs) varies greatly – from 1–2 months for a simple entertaining app to 1.5 years for porting a desktop app into the cloud.
The most convenient way to measure development costs is to evaluate the number of working hours multiplied by an hourly rate.
Mobile app development has several stages. None can be skipped. Below is an estimate of working hours. Please note: these are average numbers. The number of hours required depends on the scope of work.
|Preliminary study and planning
|up to 20 hours
|Native device features
|4 hours for each screen
|3rd API integration
|hard to predict; depends on planned workload and scalability degree
|based on app complexity
|hard to predict; usually subject to a thorough study
|QA and testing
|takes up to 30% of total app development time.
|20–60 hours based on the app size
|Development process can have additional steps
|Analysis of requirements and preparation of documentations
|up to 40 hours
|up to 40 hours
|up to 10 hours
Businesses must understand that work on an app does not stop after it has been published in a store. Just like a car, the app needs maintenance and updates. These costs are hard to calculate because workload on this part of an app life cycle is a grey area. It largely depends on size of app, size of app’s user base, and policy of 3rd-party services the app integrates.
Maintenance costs include:
- Costs of subscriptions and licenses for 3rd-party services – usually based on number of users or accesses.
- Server administration costs – depends on size of user base and grow
Last, but not least. It is crucial for businesses to follow updates with 3rd-party services and to react quickly regarding changes in policy or end-of-life notice. In this case, be ready for the following:
- Updates – costs depend on how significant the changes are, whether the changes are in OS and/or 3rd-party services updates and how acutely they affect app functionality.
- App migration – to decrease server hosting costs; must be calculated separately.
Get a software development team for your project. Save time on hiring and getting new team members on board and on establishing development workflow. When someone gets sick or quits, it is easier to quickly get a replacement.
Hire an established outsourcing mobile development company (or at least, do not search for cheapest companies lacking proof/testimonies of expertise). You get a team with lower hourly rates but retain quality code, thus saving on mobile app maintenance. The bottom line: the app development team must create clear, scalable, documented source code ensuring clients save time and money on future maintenance costs.
Look at company’s portfolio. Ask for similar projects or experience. When a company has relevant expertise, it helps to better understand the aims of your project and potential pitfalls, if any. This shortens development time for the same development costs and ensures better quality of your software.
Communication matters. You, the client, remain an essential part of the team: you have final say on the project. Daily calls will help prioritise tasks. And, you have the bigger picture in mind on how the process is going.
Focus on core features but leave space to add desired functionality in the future. In mobile app development, start-ups usually create an MVP (minimum viable product) beginning with only core features. This also enables product owners to keep costs – and risks – down. At the same time, extensibility and flexibility must be retained to ensure the codebase does not need to be rewritten each time a new feature comes – a difficult to impossible task for inexperienced teams.
Sometimes it is more profitable to start anew instead of trying to improve initial source code. When a client comes with source code developed by another company, then developers start with a code inspection. If the code quality is good, we work with it. If not, we recommend starting from scratch to ensure shorter delivery time rather than working with a bad or unstable code base.
In conclusion. Mobile app development costs vary greatly based on scope and turn-around time. Each must be estimated separately. Certainly, costs vary on scope of work based on developers’ experience. But, please note, some costly challenges are hard to predict: they rear their ugly heads during the development stage (e.g. working with beta version of an API in case of MyCarrier app). When this happens, it is better to extend the timeline than to compromise on quality.
Apart from development costs, product owners need to keep in mind costs for upgrades and software maintenance. Otherwise, the app may stop functioning with a new update of mobile OS or a 3rd-party service.
A clear set of requirements helps estimate development costs more precisely. If you are struggling to transform your app idea into a feature list, contact us. We can help you with your feature list and prioritise it – for your dream to become reality.