How much does app development cost?2020-07-03T15:51:36.000Z 2020-07-03T15:51:36.000Z HUSPI experts share their opinion and experience with estimating the costs of mobile app development. Check out the article!
Every respectable business needs a website these days or any kind of online presence (even Facebook or LinkedIn pages count, but generally people find websites more trustworthy.)
According to Statista, the number of smartphone users worldwide is rising and forecasted to be 3.8 billion in 2021 (3.2 billion in 2019 and 3.5 billion in 2020), which means that businesses also have to think about developing a mobile app for their potential and current customers. Having a dedicated mobile app provides instant access for your clients to your business because most people carry their phones with them all the time.
Number of smartphone users worldwide from 2016 to 2021 (in billions)
Another statistic shows that due to the fact that our phones can do more than call right now, we spend most of our time in the apps:
Okay, now when you’ve got an idea that you would like to create an app for business purposes, the number #1 question that you might be asking is “How much does it cost?” We’ve been answering this question for years now because HUSPI develops apps along with more complex web software and in this article, we’ll try to provide you with guidelines on the cost structure for app development.
What is app development?
We need to understand that the process of developing a mobile app is different from creating a landing page website. An app, after all, is not just an icon on your phone’s screen. Mobile app development should take into account the unique characteristics of the platforms and phones to maximize the opportunities of the installed app.
There are two primary types of mobile apps:
- Native apps - the apps are created specifically for a platform (for example, iOS) and uses a platform-specific programming language. These apps are usually more powerful than cross-platform apps because they can make use of Siri, for example, or various hardware that is different on various platforms. For iOS, the languages include Swift or Objective-C. Android apps usually use Java or Kotlin.
- Hybrid (aka cross-platform) apps are created for several platforms at the same time. They use the same backend, but the frontend is adjusted to various screen sizes and other platform-specific features. Creating this type of mobile application is usually somewhat cheaper than native apps, but you have to identify the main features for your app and see how they work on different platforms before deciding whether or not to choose cross-platform or native apps. There are many frameworks for cross-platform development. At HUSPI, we use React Native.
The platforms you are aiming to reach are the first factor in the development cost. It’s logical that an app for iOS would cost less than an app for both iOS and Android (given that the iOS apps in both instances are the same.)
You can learn more details about the iOS and Android apps in our article.
How much does app development cost?
Before we move towards the actual costs, we wanted to share an enticing statistic from Statista about worldwide mobile app revenues figures and forecast up to 2023. More on how to earn from your mobile app - in our other article on monetization.
Worldwide mobile app revenues from 2014 to 2023 (in billion U.S. dollars):
There are two primary payment structures:
- Fixed price. The total project’s cost is calculated at the very beginning after the estimation and before the development starts. The amount doesn’t change, but also it doesn’t allow for any feature changes or tweaks within the app. Fixed price only makes sense for small projects up to 6 months of development time and clear project scope.
- Time & Material. The cost structure is based on per hour payments for each of the team members for the time they spent working on the project. This pricing type allows us to be more flexible in terms of features and other things that are discovered along the way. In this case, the project has both an original estimate as well as the flexibility for adaptation. Time & Material cost structure is best for long-term development projects or projects that are developed in stages (for example, you start with an MVP and go from there.)
Let’s narrow down to the actual numbers. There are many factors that affect the cost of app development.
The first and foremost factor is the number and the character of the features you’d like your app to have. Integrations with third-party technologies, registration process within the app, various buttons and their functionality, etc. - all of this influences the final estimate. For example, the registration button might take a couple of days to add, while integration with a payment system might take up to a month (due to the payment system’s internal processes along with the data security and protection features that are automatically added in order to protect the user information.)
Another factor is the development team’s location. If you live in the United States of America and would like to develop it in-country, the price will be 2-3 times higher than if it was developed by a team from Eastern Europe. Here is a comparative table of iOS and Android development rates based on the geographical location:
Here is a list of things that affect the overall development cost:
- Complexity and number of features in the app
- Inner infrastructure and connected APIs
- UX and UI designs complexity
- Type of development (native, mobile web, cross-platform, etc.)
- Number of platforms (iOS, Android, Web, etc.)
- The geographical location of the development team
Traditionally, the most basic formula for calculating the costs is below:
However, we’ve already talked about the apps of different complexity, so there are additional things that you need to take into consideration that will affect the total development time (which, in turn, influences your overall project’s cost.)
- Simple app: includes basic functionality, few screens, little data, and several things that users can do. You don’t need to create and connect an API, backend, and admin dashboard for such an app. The features that might be included in such an app can be looking at and sending pictures, login, and authorization via popular social media platforms. The development of such an app would take around 1 month and starts at $6K per platform. (Note: this is not Instagram.)
- Medium-side app: includes the creation of a dedicated API, admin panel, and synchronization with backend. Such apps can integrate with ready-made map services and work with GPS, for example. The development of such an app would take around 3+ months and the development price would start at $20K.
- Complex app: this type of application can work with audio and video files, sync in real-time, integrate with a large number of third-party services, backend, user types, and various levels of access for each, etc. Basically, this is an app that can do almost anything you’d like. Accordingly, the price of such an app rises as well to $50K+ and the development can take anywhere from 6 months and beyond.
After your app is published to the App Store and / or Google Play, the work doesn’t stop there. You should also take into account the smaller, yet important expenses. This includes the monthly server cost (this actually is needed even before your app is officially launched) and technical support of the app in case of any bugs that arise due to platform upgrades or other issues. You also should budget for your app’s marketing and promotion efforts.
Who should be on your development team?
The creation of a mobile app involves at least 4 people. (Technically, some roles can be assigned to the same person, but the quality and speed of development might suffer.) The basic team includes the project manager (aka PM), designer, developer (one per platform), and quality assurance engineer.
- Project manager: if we’re talking about small budgets and projects, the primary role of the PM is to create specifications for the project based on the communication with the client and to be the mediator between the client and the team. PM can also have some of the tasks of a business analyst to describe the business processes.
- North America (USA + Canada): $45 - $200
- Eastern Europe: $25 - $100
- Australia: $30 - $150
- Asia: $10 - $100
- UI/UX Designer: this person (ideally two separate designers for UX and UI) deals with how the app looks and feels. The designer’s task is to create designs that would match the app’s purposes and would be user-friendly.
- North America (USA + Canada): $50 - $250
- Western Europe: $35 - $170
- Eastern Europe: $25 - $150
- Australia: $50 - $150
- Asia: $10 - $80
- Developers: everything that deals with the programming and technical side of your app is done by the developers (except for some admin tasks, like paying for servers, etc.) This includes iOS and Android developers or cross-platform developers, and backend developers. As we mentioned above, the prices vary greatly depending on the geographical location:
- North America (USA + Canada): $150 - $200
- Eastern Europe: $30 - $90
- Australia + UK: $100 - $150
- Asia: $10 - $50
- QA Engineers (aka Testers): their task is to make sure that the app works as the client has imagined it to work, that the dreams and business ideas match the user experience. Besides that primary goal, QA engineers also test the app to see if there are any bugs that crept in, since we all are humans and sometimes mistakes or typos happen.
- North America (USA + Canada): $40 - $200
- Eastern Europe: $25 - $80
- Australia + UK: $30 - $110
- Asia: $10 - $45
Would you like to have your app idea assessed? Send us a message.
Mobile app development estimate example
A while ago, we were approached by a company that wanted to create a guide to the coffee shops that are located close to the user. The app needed to be available on both iOS and Android platforms and have an admin dashboard, where the curators of the project would have the ability to add coffee shops to the list.
Since the coffee places were to be shown on the map, the most logical integration for the app was to use Google Maps API for both the map itself as well as GPS geolocation for the user (in order to show the distance between him/her and the coffee shop of interest.)
The features that were listed in our original estimate:
- User application:
- Integration with Google Maps to definite user’s location and show coffee shops on the map
- Coffee shops’ pins on the map with the ability to filter cafes by type
- Coffee shops’ information such as opening hours, coffee prices, etc.
- Web application for admin dashboard
- Login for the administrator
- Ability to manage coffee shops list (add, edit, delete) and manage each of the coffee shop information
- Ability to set up a type for each of the coffee shops
The estimate also included the time required by the project manager for managing the project as well as writing the project’s documentation, specifications, and creating installation and deployment instructions. Finally, the QA engineer’s time was accounted for bug fixing and general testing of the app’s performance and load ability.
What does an estimate usually look like?
In different companies, the precise look and feel of an estimate might be different, but the general idea applies that each of the involved team roles and all tasks gets calculated and written down. This was a relatively simple mobile app that we developed a couple of years ago and for this particular coffee shop, the estimate looked like this:
As you can see, there is a realistic approach and price as well as pessimistic, because there is always a risk that something might go wrong or during the development, some technical issue arises that wasn’t mentioned at the preliminary discussion about the project and therefore wasn’t accounted for.
Develop your mobile app in-house or hire an outsourcing company?
When you plan to create your own mobile app, the price isn’t the only thing you need to pay special attention to, but also the team. This means you have two main options:
- Develop your project in-house (when you hire developers and they become a part of your company)
- Hire an outsourced development team to build the project for you
While HUSPI is an outsourcing development provider, we do realize that outsourcing is not the best-case scenario for all types of projects. How can one understand when to choose one or the other? Here’s our simplified answer:
- If this software is your core business (for example, Facebook), develop it in-house. You understand the business processes much better and for your software architects, it would be easier to be in constant contact with you or the rest of your team.
- If this software is an addition to your core business (whether to make some of the processes more straightforward or to add a layer of services to offer to clients), then it can be outsourced. For example, if you are a retailer, you can outsource the development of the e-commerce platform for your store to a company that deals with software development (while you are free to concentrate on your retail business.)
There’s another option (let’s call it 1.1) - software can be your core business, but sometimes it happens that there are some additional features that need to be developed but they are low in priority and therefore keep getting postponed because your in-house developers are busy with high-priority tasks. In this case, hiring an outsourcing company can also be a great idea because you’ll get a lot more done (and your developers will be able to finally get those tasks out of the backlog into the done category.) This was the way Skype took. They have a large in-house team of developers, but they also outsource various features to different companies.
The main advice we can give you in terms of outsourcing mobile development (or even in working with your own developers) - communication is key to success. If the communication processes are set up and efficient, the overall development will move forward without any regard for time zones difference or any other factors. Therefore, when you work with an outsourcing provider, make sure there is a person or a team on your side who will be responsible for communicating with the developers on the other side.
And that’s how you develop a mobile app.