In today’s mobile era, it’s no surprise that nearly every entrepreneur is clamoring to bring their business to mobile devices. When business owners find themselves in the market for a new mobile app, they might be surprised at upfront costs of app development. After all, they might think: “It’s just an app. How much could it really cost to make?” Depending on what’s needed: a lot…or not much.
The average cost of developing an app can range from US $40,000 to $125,000
The truth is, as app developers, we can only come up with estimates for custom app development. And at the end of the day, the final price tag will come down to things like complexity (in both design and function), platform choice, ongoing maintenance, and QA needs.
Here at Topflight, we typically break down the cost to build an app by providing an estimate into 3 core areas:
- Design Features – branding, animations, UX, etc.
- Technical Features – API and platform integrations, app capabilities, etc.
- Maintenance – server costs, bug fixes, OS upgrades, etc.
Entire books have been written on these subjects. So it may seem daunting to try and get a grasp of all these elements at once. Nevertheless, in the following sections, we’ll attempt to break down how each of these areas affects an app estimate and hopefully demystify the process of budgeting for app development.
Table of Contents
Factors affecting app development costs
App development costs are influenced by a variety of factors, such as the development process, the type of app, availability of reusable off-the-shelf components, developers’ experience, app complexity, etc. Let’s review some of the most critical aspects that contribute to an app’s price.
App development process
When you start building an app, you’ll quickly find yourself following a specific predefined procedure. The steps that make up the process were defined way back in the 90s — at the rise of consumer software. And today, it’s not something that any app development project can do without if you don’t want the entire thing to go astray.
Besides laying down the ground rules for building an app, the app development process breakdown allows us to better grasp how each stage affects the app cost. Without further ado, let’s dive in.
The discovery stage is all about uncovering the true potential of your app. During this step, you’ll need to match the needs of the target audience with the app functionality, decide which platforms you’d like to support, and define the app’s business goals.
In terms of pricing, the discovery stage is relatively light on the app development budget. Depending on the scope, it may take between 16 and 30 hours to complete. However, you should keep in mind that the development approach you choose will significantly affect your timeline.
For example, agile development will require only a couple of days to draw up a plan for the next few sprints. And if you’re looking for a more traditional waterfall approach, the discovery can consume up to 10 percent of the entire app cost.
Pro Tip: provided that you’ve done preliminary market research, we recommend limiting the budget of the discovery step to 20-30 hours / $2,500.
Prototyping & Design
The next logical step after the discovery is to devise the app’s user experience and design its graphical assets. The right way to do this is by creating a clickable prototype. Your app prototype will consist of wireframes — rough representation of app screens with clickable elements that let you switch between screens, following the user journey.
More Than Just Pretty Colors
When we talk about the design of an app, we don’t just mean the color scheme or icons, and we’re not just talking about what animation to use for transitions. Indeed, when Topflight hashes out the overall design of an app, we consider both the aesthetics of a finished product and user experience.
Apps are more than flashy animations and pretty logos; they solve problems for people. In an ideal world, the app’s very design tells the user how to use it. Ultimately, it’s the design and development team’s job to ensure that no user is left dazzled by how an app looks, and totally confused as to how it works.
That sounds rather daunting when we put it that way, but as with the technical features of an app, design choices can range from simple to complex.
In a simple case, a client might need to develop an app using a lightly-customized bootstrap theme. A few form fields here, a log-in overlay there, a few API calls to grab back-end data, and you’re off to the races.
In more complex cases, clients may require a custom, built-from-scratch, multi-screen app with dozens of navigation paths, with each UX bit being tightly coupled with the back-end logic. If, for example, a mobile app needs to take in health data, we might change the type of data available for tracking, depending on users’ conditions.
A diabetic person needs to enter blood-sugar readings, but a non-diabetic user probably won’t. The style of the data entry screens should still remain consistent from user to user.
Each step of the design of such an app needs to be intuitive and slick enough to keep the user engaged throughout the process. That takes a lot of back-and-forth between the design and development team and the client to finalize what can and cannot be dialed back.
Wireframes, Interfaces, And Testing — oh My!
In either case, our design process starts with a schematic of how a user is meant to use the app — a so-called “user journey.” This helps us understand how many different screens an app will have, and thus how much overall work we’ll need to put into the design. This is the shortest part of the design process and is where we get a real sense of the scope of the design work. This phase typically takes around 3-5 hours.
Next up, we create wireframes based on the user journey. The wireframes have no frills and might use programmer art where real design assets might go. At this point, we flesh out how the app will look with the client by sketching out where the buttons, fields, text, and navigation will sit.
This back-and-forth usually means that the wireframing stage takes around half that of the design: between 40 and 50 hours, give or take.
After this scaffolding work is done, we can start working on the actual design of the elements we laid down in the wireframe. At that point, we begin considering things like the color choices, animations, fonts, and the overall “style” of the app. We try to always be mindful of the brand image the client is ultimately going for, and so this stage does require quite a bit of input from the client.
Together, prototyping and designing an app take the bulk of the front-end time, at around 40-50 hours for each part. After the design is done, a prospective client could be looking at between 80 to 120 hours of front-end work from start to finish. It’s also important to note that this estimate only accounts for a first-pass attempt.
After completing a design, the prototype goes through a user-testing process. For us, this means either observing as people use the app or enrolling in a service like usabilityhub. During testing, we try to figure out whether users are moving through the user journey in the way we intended, or whether they are failing to move past a certain stage.
For example, we might find that e-commerce customers are spending lots of time on the site, but are seldom adding items to carts, or are failing to use a wishlist.
More often than not, this user testing leads to further design revisions, which lead to more testing. This part of the process is typically open-ended in terms of time commitment, and we try to rinse and repeat until we get it right.
For some, this process can seem like overkill. Still, our experience tells us that (over the long run) it’s the user experience that users notice the most.
In other words, we can build all the fancy state-of-the-art backend systems in the world, but users aren’t going to stick around if they’re turned off by the app’s very design.
Pro Tip: since iterating on design is 80-90 percent cheaper than iterating on code, putting in the extra time to make sure it’s perfect is the best way to maximize ROI. The cost of the prototyping and design phase of app development may take between $12,000 and $28,000.
It stands to reason that app development per se makes the biggest impact on the app cost. Seasoned developers, who have successfully delivered multiple projects, are still a scarce resource. That’s why coding an app usually accounts for 50-70 percent of the total costs of app development.
Built From Scratch Vs. Existing Projects
Whether an application is being built from scratch or uses an existing codebase also affects the cost.
There are many reasons for existing projects to be easier or harder to work on than a blank slate, but in the end, it all comes down to the fact that existing projects naturally bear the marks of their original creators.
Frankly, sometimes it turns out that code is simply poorly written. Now, coding is an art form, and sometimes what looks like poor code is simply not what our devs are used to. We can’t tell you, however, how many times we’ve had a client tell us that their previous developer did 80 percent of the work, only to find out that in reality, about 30 percent was complete.
What’s more, because being contracted to work on an existing project inevitably requires a billable discovery phase upfront, it’s also imperative that we communicate amicably with the outgoing developers. Without documentation or knowledge of existing bugs or quirks in code, the discovery phase becomes more difficult, and eats a substantial chunk of the project’s billable hours.
Whether an app is for scheduling patient appointments or babysitting hours, finding specialized recipes, tracking disease symptoms, or simply displaying your blog to the world, it’ll probably need a database for storing product information, a payment processor for handling payments, or a CMS for managing the content. In other words, unless your app is as simple as can be — think calculators or basic to-do apps — it’s very likely to rely on a backend system.
The most popular SaaS backends often have many off-the-shelf solutions that can make writing parts of an app much simpler. One typical example comes from the Shopify software development kit (SDK), which enables store owners to create iOS and Android apps that use Shopify’s functionality to do all the things you would expect from an e-commerce store: carts, products, discount codes, payment, etc.
Off-the-shelf components need not come in the form of SaaS platforms like Shopify, either. More often than not, another developer has already written tools to solve 75 percent of the problems you need to solve, and all a developer needs to do is use them.
Of course, having all these features handled by packaged components can drastically reduce the development time for the “guts” of an app, but as with all good things, such simplicity comes with potential caveats.
First and foremost, simplicity can sometimes end up hamstringing app scalability. WordPress, for example, is a fantastic solution for slowly changing sites with mostly static content like blogs. On the other hand, it’s not particularly well-suited for dynamic content like an extensive product catalog with the need for many searches and filters, serving thousands of customers.
On top of scaling issues, the potential need for significant customization of off-the-shelf components can have an even higher overhead for developers than if they wrote it from scratch. Making changes to another dev’s codebase is never a trivial task.
All in all, development time (and thus cost) depends largely on the features an app has, their individual complexity, and the availability and feasibility of pre-existing open-source software and SaaS platforms. As a good rule of thumb here, simply consider how standard the feature-set you’re asking for is.
If you’re building a pretty vanilla offline app, then chances are we’ve done it before. That means there are pre-existing solutions that are feasible to use, and it’ll be fairly affordable to build.
That said if you’re building something completely new that nobody has done before with innovative features nobody has ever seen… that’s clearly going to cost a pretty penny.
Pro Tip: coding takes around 50-70 percent of all app costs. So expect to budget for $25,000-$75,000 for the coding stage of your app development.
Another thing that turns users off is an app that is riddled with bugs or an outdated app that becomes obsolete with a new operating system update. This brings us to a vital, often overlooked step in the app development process: quality assurance.
QA (aka “testing”), is carried out at Topflight in a twofold manner:
- Unit Testing
- System Testing
Unit testing deals with each new component added to an app individually. And system testing deals with how the app functions as a whole from a performance and usability perspective.
We do unit testing as we build the app, with our developers inspecting each other’s code and testing it every step of the way. System testing, on the other hand, is typically done once the whole app is complete. System testing is especially important because we can involve the client in the process. We’ll often realign the app’s development as a result.
Overall, QA does precisely as its namesake would suggest: it assures both the client and us that the app functions as intended. Once our tests are run, and we’re comfortable with the end result, it’s finally time to let the app out into the world.
From here, it’s mostly smooth sailing, but today, no app can afford to rest on its laurels. Software updates, operating system upgrades, and hardware improvements mean that apps need to continue to adapt to a changing technological landscape.
Pro Tip: QA usually takes around 15-20 percent of the total app price tag, which is somewhere in the range of $8,000-$18,000.
Once the app has been developed, it’s time to deploy it. Fortunately, this stage takes only a fraction of time compared to all other phases of making an app. That’s also the reason why it’s often overlooked by both clients and some development teams.
At Topflight, we make sure that your mobile app goes through the app store verification process and that the back end has been transferred to the production environment — tested and ready to take on floods of traffic.
Pro Tip: allow for up to $1,800 of your app-building cost for the deployment step. Make sure app developers you work with include this vital phase in the roadmap.
Maintenance and Upkeep
Like any well-oiled machine, a well-functioning app needs to be maintained over time.
Most apps nowadays run their back ends on cloud service providers like AWS, Google Cloud, or Azure, which (depending on the scale required) can cost pennies or thousands of dollars each month. Besides, many third-party services (such as payment systems) that an app might use operate under a SaaS model, requiring subscription costs.
As an app gains popularity, its throughput needs in both these areas are likely to grow, which in turn racks up the costs of its upkeep.
What’s more, once an app has been battle-tested in the real world with real users, bugs are bound to crop up and need addressing continually.
Pro Tip: With all of these things in mind, we typically estimate the cost for ongoing maintenance to be around 25 percent of the original development cost for each year after completion.
Type of app you’re building
Native vs. Cross-Platform
Building an app natively, using Swift or Java for iOS and Android, will typically incur a more substantial time commitment. In such a case, the app essentially needs multiple codebases: one for iOS and another for Android, and yet another for any other requested platforms (Windows Mobile anybody?).
That may make native sound like a non-starter, but native codebases have the potential to be more powerful and provide access to more built-in hardware features for the mobile devices the app runs on.
If your app has less of a need for things like GPS, NFC, or Bluetooth, then another — potentially cheaper — path is open to you: A cross-platform codebase.
Now, whether to build a cross-platform or native app is a topic far outside the scope of this blog, but one we’ve written about elsewhere. Suffice it to say, though, that in exchange for slightly restricted access to advanced hardware features, writing a React Native app tends to take between 25 and 50 percent less time than a separate app for the two major platforms.
Cross-platform codebases have their limitations, but this difference in effort means that the decision to forgo a separate native codebase for individual platforms can mean a shippable product in 4-6 months instead of 12.
Pro Tip: Cross-platform tools like React Native can trim down app development costs up to 50 percent and allow you to go to market 1.5x faster.
Progressive Web Apps vs. Native
Developing a progressive web app (PWA) is akin to cross-platform app development. Such a PWA will be available on both mobile platforms: iOS and Android. An easy way to think of a PWA is to imagine a website that tries to emulate a native app by its look and feel.
This website-app downloads itself to your phone and can be accessed even without an internet connection. It sits on your home screen behind an icon, just like any other app.
What you can’t expect from a PWA is integration with your phone’s hardware and system features, like push notifications, GPS, etc.
Because PWAs are built using web technologies, such apps can save you budget when you need a mobile companion app for an existing web application. You’ll just need to repurpose your web app’s graphical assets to mimic the interface of a mobile app, and then connect the UI to the existing back end with its business logic.
Pro Tip: use PWA to considerably cut your development budget for developing a mobile companion app for an existing web application. PWA may cost around 30 percent of the native app development budget.
Complexity of features
The more complicated the features of an app are, the more expensive it will be to develop.
A complex app often implies things like third-party integrations, server-side logic, admin panels, or the use of mobile hardware like Bluetooth or GPS. Each of these has its own cost in terms of both developer time and potential subscription costs in the case of third-party services.
There are tons of technologies that go into the more involved feature sets: databases, machine learning libraries, front-end frameworks, the list goes on. Each layer of new technology adds complexity, time, and requisite knowledge to a project, and thus more cost.
Each of these decisions has its own benefits and caveats, but they can mean the difference between a $40,000 app and a $125,000 one.
Your mobile app might need to work with external service providers to provide a rich functionality to users. App developers use APIs to connect apps to payment gateways, messaging platforms, geolocation, and many other services.
Pro Tip: while integrating an app with on-device system features like FaceID or Apple Auth is generally considered a low-cost investment (under $1,000 each), making your app work with third-party services via APIs may cost you $4,000-6,000 per integration.
ML and AI capabilities are slowly but surely becoming mainstream. Apps rely on ML algorithms to surface relevant content and predict the next user actions. However, coding the chunk of the app that’s responsible for the ML-powered features takes a heavy toll on the overall costs of developing an app.
Pro Tip: Set aside between $13,000 and $21,000 for AI features in your app, and ask your app developers if using Core ML (iOS) and ML Kit (Android) makes sense. Opting for on-device ML functionality (using Core ML/ ML Kit) can reduce the app cost because you won’t need an AI-designated server side.
If you’re looking to offer a mobile shopping experience for your customers, we advise you to opt for a ready-made e-commerce platform. Today, there’s no shortage of those. You can choose from Shopify, BigCommerce, Magento, WooCommerce, and hundreds of other SaaS platforms providing APIs, SDKs, and even white-labeled mobile e-commerce experiences.
The cost of integrating your app with geolocation service can vary significantly based on the desired feature set. It’s one thing if you need to display a map with a custom pin, and quite another if you want to build routes, show traffic and other overlay information, use geofencing, etc.
Pro Tip: Use “native” mapping SDKs on each mobile platform — Apple Maps or Google maps — to keep the cost of making an app down. This approach typically raises the app making price by $4,000 or so.
Modern phones come with loads of sensors that your app can use for enabling advanced features, like showing the direction and others:
- Proximity sensor
Apple and Google both provide APIs to allow your app to work with these hardware components. However, Apple is notoriously more conservative about giving full access to its hardware.
Pro Tip: the cost of developing an app that works with phone sensors should be around $2,100 per sensor.
Apart from built-in sensors, apps may have to source data from external devices such as pedometers or heart rate sensors. To enable this connectivity, developers need to work with a Bluetooth Low Energy protocol (BLE) and establish a link between the app and on-device firmware that controls the sensor.
Pro Tip: Expect to shell out between $4,000 and $6,000 per external device integration. In case your app needs to work with a sophisticated external platform, the cost may rise substantially.
App development team
Another all-important factor that affects the mobile app development cost is app developers. And we don’t mean just the software engineering talent. Successful apps are built by expert teams with versatile capabilities, who can adjust to changing market conditions on the fly.
Outsourcing vs. in-house team
It’s hard to argue that it’s more expensive to hire a full-stack in-house team than outsource app development to an app development agency. An in-house team always comes with the cost of recruiting and the cost of knowledge transfer — something that doesn’t influence the costs of making an app when you outsource.
There are many other roadblocks to hiring your own team, especially if you’re interested in maintaining a decent time to market:
Depending on the scale of a project, you will need an IT management unit: Someone will need to take care of basic IT stuff like network, security, servers, and everything else required for an optimal development process.
CTO and project managers
Developers and designers need to be coordinated. Plus, their interaction with other company units should be streamlined and transparent. So apart from developers, you will need to hire a CTO and project managers for that.
Equipment and office space
Developers quickly become hopeless without their computers, servers, monitors, and other high-end devices that host code. Naturally, this equipment will also require a comfy office.
Throughout the development process, it’s often the case when you don’t have enough tasks to justify a full-time position, but without it, your project is not going to happen. Juggling workload between dev team members adds another level of complexity to your already busy day.
Developers operate at their best in companies that foster team spirit and promote company values. It’s small things like providing your team with free meals or covering their gym subscriptions.
Benefits, paid leave, etc.
And remember about “extra” costs associated with having your own team like 401 matching, taxes, etc.
With outsourcing, you don’t have to worry about those issues. Whoever you’re outsourcing a project to will be responsible for that, while remaining accountable for the timely delivery and adherence to the agreed upon budget. The only impediment with the outsourcing option is to choose the right app developer.
Pro Tip: An average annual after-tax cost per developer in the US is around $100,000. That may very well be the overall cost of building your entire product, which will use way more resources than a single developer and ship much sooner.
Hidden app development costs
Several things directly affect сosts of app development but nevertheless slip through the cracks, especially if you are getting a quote from a not very experienced team. Check if your app development price includes these critical items.
For many business owners, an app is its front end piece — the customer-facing component. However, remember that there is a back end code behind the surface that runs the app’s business logic. Besides that hidden back-end part, you might need a web admin app for managing your app and its users.
SaaS and SDK fees
Often, to ship products faster, companies opt to use plug-in SaaS services to power certain parts of their application. For example, you can use Chargebee to set up a subscription or add Google Maps for location-related features. Pro app developers will always inform you if these services require a monthly subscription and help you approximate the cost based on your customer base.
The code does not run in a vacuum. The so-called cloud is numberless racks of servers that eat electricity to run your app’s code and require payment. So even though it may sound trivial, don’t forget to amount for the hosting costs when budgeting your app.
Optimizing app development costs
Seasoned app developers have a few tricks up their sleeve to kick down the cost to develop an app. Our strong advice is to follow these best practices to ensure your app budget won’t spiral out of control.
Research product-market fit
First and foremost, you need to know the target audience your app is aimed at. What are their real needs? What are they trying to achieve? What is their context for using the app throughout a day? These and many other questions will help you develop your ideal customer persona, which will guide the feature set for your application.
Create a prototype
The next step is to verify your findings by creating a prototype of the app. It’s a smart move that will help you keep the app cost under control as you’re likely to update the prototype based on user feedback. And making edits to a clickable prototype is way less expensive than applying changes to code.
Streamline project management
Once you lock in the final list of features and the app’s look and feel, it’s time to build the actual app. It is that point that your app making budget will start to melt quite noticeably. To ensure that every dollar of the budget contributes to the bottom line, you need to set up a project management framework. We practice and recommend Agile with weekly sprints because it helps balance the development progress with spending.
Stick to the scope
Finally, to retain the original estimated app development budget, it’s advisable to stick to the feature set you defined at the prototyping stage. Any add-ons and new options can be put off until later stages of development when you can assess if you still have the bandwidth to accommodate them.
Need to know more about app costs?
There you have it, the breakdown of app development costs. The price of your app will end up somewhere between US$40,000 and $125,000, with 25 percent of the initial app development budget going towards maintenance and upkeep of the app every year.
We’ll answer the most common questions about the costs of developing an app in the FAQs below, but do feel free to reach out if you have any inquiries about the cost to make an app. Our app development team will share insights to help you set up your app for success, on time, and on budget.
Looking for help with your app?
in record time with a product that’s set to win.