How much does a mobile app cost? Are you hesitant to develop your own mobile app because of development and maintenance costs?
Depending on who you ask, the answer you get may vary. It can be hard to know how accurate these estimates and who to trust. Reading different blog articles doesn't help and it can be hard to filter all the noise.
But it doesn't need to be.
In this article, I’m going to breakdown what goes into mobile app costs and what are some industry averages.
Although averages cannot be relied on completely, it gives you a good gauge on how realistic your budget is.
Knowing how much something costs can help determine whether you can afford a company or not. It saves the trouble of wasting too much time before realizing you won't be able to work together. It also sets proper expectations of what you are getting into.
There’s more than one way to bake a cake
Before we get into costs, let's discuss the different ways to bring your app idea to life. While some people may focus on a couple of these, it's important to be aware of all your options. This way you can make the best decision possible and reduce costs.
The first option is developing the mobile app in house. Does your company have the talent required to deliver mobile success? If not, can you train your team or hire new members with the necessary skills?
If you are an entrepreneur, you could learn the required skills and develop the app yourself.
This won’t apply to medium/large companies but might be an option for startups or small businesses. Partnering with a technical founder is a a great way to inject your company with the necessary talent to carry out your mobile app vision.
A strategic partnership can help both companies in the long run. When you partner with another company you share the rewards and mitigate risks.
Low-code development platforms
Another form of DIY is using existing tools. You can lever cloud platforms that let you create apps through a graphical interface. These apps are low-code because you don't need to code to make them work. They enable companies delivery apps fast with no coding. They are also quick to setup and deploy.
Freelance developers are one of the cheapest options you can find for developing an app.
When you are hiring a freelancer, you are hiring a person and all the risks that come with that. Depending on the freelance's effectiveness, you could end up wasting your money. If the freelancer is slow, late, or uncommitted, your project could drag on forever.
Not all outsourcing agencies are the same. For starters, outsourcing is usually divided by onshore or offshore. Offshore outsourcing is hiring an external company outside of your country. For example companies based out of India, China or Russia. Onshore outsourcing is hiring an external organisation within your country. Learn about the differences, drawbacks and benefits of offshore vs onshore.
Apart from the company’s location, you can break down outsourcing agencies by small and large vendors.
Small agencies have a small collection of specialized individuals. Each member in the agency is there to meet a specific need in the app creation process, allowing the agency to be a one-stop shop.
Big agencies bring large teams, heaps of experience, and a big brand guarantee to the table. Hiring a big agency to build your app is the closest you can get to a guarantee. The caveat is that you will be paying a significant premium for that assurance. A wild guess but for example, I doubt anybody has ever gotten fired for hiring IBM.
Which should I pick?
Picking a which approach to take will depend on your organization. Some factors you might want to think about when making your decision:
This is a no brainer. Your budget will dictate what type of resources you can get. Not much to discuss here because each company will assign budgets according to their own discretion.
Timeline also plays a big role. Wanting something faster will impact what kind of company you can get. Previous commitments and man-power will impact what each approach can deliver.
What is your company strategy? Do you prefer to develop skills in-house or do you rather focus on your core competencies? Your selected option will depend on your strategic plan.
Maintenance and life expectancy
Creating an app using low-code platforms can be great to start off, but who is going to maintain these apps in the long run? Will you be able to extend and add to this app as more people begin to use it? The thing with this approach is how to take over the app once the person in charge leaves the organization. Usually IT has to come to the rescue and support these systems.
The same goes with outsourcing the development. When will the outsourcing for a project end? How will your company get your vendor's knowledge and learn how to work with the code? What will happen when your outsourcing partner can no longer support your app?
Depending on the complexity and uncertainty of the project, you might be more inclined to hire based on skills and experience. An experienced team can help mitigate and overcome these in a way a less experienced team, freelancer or you could.
Every project has risks associated with them. Like complexity, partnering with an experienced partner can help mitigate this risk. Not only they can fill gaps that your company is lacking but also you can also share these risks. In contrast, going it alone can increase these risks.
Internal resources and knowledge
The quantity and skill set of people you have available will impact your decision. If you have a good, experienced team in-house then you are more likely to develop your mobile app in-house. In this case, you might still decide to hire an agency to scale up.
Type of work
What is the app’s main purpose? What are the business outcomes you are trying to achieve? If you are only looking to fill a mobile gap for one process then a cheaper option might suit your business. An example would be making a specific process like inspections mobile. You can use online tools to develop task-specific apps.
In contrast, if your goal is to give your customers a next level experience then DIY tools or freelancers are not going to cut it. You want digital specialists that can jumpstart your mobile project. These projects start with a great app and front-end design.
Summary of costs
In the past 12 months, 1 out of 3 companies have hired an outsourcing firm for mobile app development (1).
The cost of a mobile app fluctuates depending on its goals, complexity, sourcing approach, and technologies used. The graphs below summarize how much they vary, but also give you an idea of the costs associated with them.
To give you an idea, Kinvey released a survey reporting companies' average spends per app (3). As you can see based on their research, the average spend for each mobile project is evenly distributed. Companies are engaging in many different sized projects with an equal frequency.
The scope may affect those costs above, but how does the company building the affect its costs? How does working with offshore or onshore companies affect pricing?
Based on the reports above, working with offshore companies can shrinks costs. Of course that's assuming the projects don’t take double as long to complete (1, 2).
So how are these budgets allocated? How much of your budget contributes to actual development? The graph below shows the average costs associated with each mobile development phase. As you can see, companies spent the most time developing the app. The second highest amounts spent are design and testing (2).
Maintenance & improvement costs
Creating a great mobile experience is an ongoing thing. The top apps didn’t release the app once and that was it. These apps took months, even years to get where they are now. They went through many iterations; design work; re-engineering; and platform changes. The more successful the app is, the more reason to keep investing into it.
Ways to lower cost
Budget limitations are the biggest obstacle to implementing a mobile solution (6). How can your organization reduce costs and still deliver mobile success?
Affirm idea before development
Take a page out of The Lean Startup, Lean UX, or Running Lean. Work, develop and test your idea before starting the app development work. The most expensive area of mobile development is the actual development. What better to way to cut costs than by testing your app before spending all that time and money developing it.
Because you are testing ideas before development, you are also saving on expensive redo work. It also helps the development team become more focused and efficient. By researching and talking to real users your product will have a higher chance of success.
Test the waters with mobile light
In some cases, it’s best to take a one step at a time approach. Develop app versions of your desktop apps by boiling them down to their basics. Rather than building an app with all the bells and whistles, reduce the scope and provide a light version. Test how well it’s received and evolve using the feedback.
Use existing tools
Find cheaper talent
Another way to save on costs is by adding offshore development and QA. The key here according to Forrester (1) is to work on short projects and push for fixed prices. Using both senior and junior developers can also help reduce costs.
Which mobile technology should you use for app development?
One of the main conundrums for companies moving into the mobile space is what type of app should they build. Often they ask themselves: Should we create a mobile website? Or build a native app? What about a hybrid app? I’ll explain these from a costing perspective.
Native apps excel in the consumer space because of the user experience they provide. Developers lean on native apps when performance, usability and integration are a need. Developers must develop native apps per platform. Because of this, they are the most expensive. Given unlimited time and budget, the default would be to develop only native apps to leverage the best possible UX.
Built with web technologies, hybrid apps, deliver a web experience within an app. Apache Cordova makes this possible. Cordova offers the ability to support various operating systems using a single code base. This is great because it diminishes development and maintenance costs.
This is a balance between the two existing type of solutions. With these type of apps, your team can create mobile apps using web technologies. The main frameworks are React Native and Telerik’s Nativescript.
In both cases your team doesn’t build a hybrid app. They build “a real mobile app that's indistinguishable from an app built using Objective-C or Java”. Both use the same fundamental UI building blocks as regular iOS and Android apps. Developers put those building blocks together using web technologies.
Do you even need an app?
If targeting your customers, you need to decide whether an app is where you want to interact with them. You also need to determine what type experience that will be.
Customers don’t want to download an app that takes valuable space only to be used once in a blue moon. Think of what problems you are trying to solve and what the purpose of these apps are. From there, decide whether a mobile app is the best medium.
As we shared above, the most expensive part of mobile projects is development. Mobile projects tend to involve a lot of front-end development. Using infrastructures services for the backend can cut down those expensive development costs. By not building core infrastructure from scratch you can keep expenses in check and increase speed and scalability. Your team can focus on integration with on-premises data and front-end UX where the real differentiation will be.
Examples include Amazon, Microsoft, and Google. Other providers also include SaaS services for authentication, notification, data sync, and analytics.
Again, how can your team shrink development costs? Using 3rd party tools can be a good short term answer and gives your product a polish functionality. A common example is payment services. Companies like PayPal or Stripe have spent years creating these secure, robust services. It makes sense to use them.
Use open source frameworks to build amazing mobile apps
Having your team make use of existing app frameworks will save time and allow your team to focus on crafting exceptional experiences. Powered by a massive world-wide community, open source projects are product ready.
Why do apps cost so much?
Building a mobile app can be a huge investment. What are the main factors driving the cost?
UX / UI design
A good user experience is critical to a mobile project's success and not a place to skimp on cost. Compared to other technology projects the spend on mobile design is still small 1. There are also different levels of design quality you can get depending on your budget. The UI elements can be highly detailed and customized, which is more costly than using a ready-made or minimalistic design (5).
This is one of the major contributors to your apps cost. What the app should do and shouldn’t do? Not all features are created equal though. Complex features will drive up the price.
Is the project filled with uncertainty and requires lots of research and development? If so, chances are timelines will be longer. The higher the uncertainty the greater the chances problems will come up. These type of projects will have higher costs.
What platforms and screen sizes should the app support? Will you develop this support with multiple native apps? Or rather use a hybrid approach? Developing, updating and maintaining many versions of an app will increase costs.
Most modern apps don’t store information on the device. They rely on servers to communicate information to and from. This allows the user to have seamless experience across different devices.
Apps interact with their own server or 3rd party services using APIs. These integrations can be costly depending on the complexity of the API. Common 3rd party services are Stripe or Twilio.
For the Enterprise it gets worst!
The cost to access proprietary APIs can shatter your budget. The problem is that it’s difficult to know how well it was developed and how complete it is. Apart from the functionality, documentation is significant when integrating systems. How clear, up-to-date and detail the documentation plays a vital part in this type of work.
Enterprise apps can create operational efficiency and open up new revenue streams. The issue with these type of apps is the level of complexity they present. Enterprise apps must integrate with back-end systems and include advanced front end features. What makes Enterprise apps different from consumer ones?
From customer-facing to internal apps, enterprise apps tend to be data-driven systems. These apps integrate with data stored on-premise, or in cloud-based platforms.
They must integrate with identity and authorization systems for security purposes. These identity systems can take many forms like on-premise LDAP, Active Directory, SAML or OAuth services.
Enterprise app lean on a lot of business logic to make the app work. Business logic is the engine that drives the entire app. It brings all parts together to deliver specific business processes. In some cases, this business logic is configurable on a per client basis.
Security is a top concern of enterprise IT. An enterprise-grade app has appropriate levels of data and access security. They also must have the option to be deployed on-premise or in private clouds.
Enterprise apps support key business processes, so any downtime can be disastrous. As a result, enterprise apps must have minimal downtime regardless of the usage.