April 12, 2017

How Much Does It Cost to Create an App?

Cost of mobile app developmentStatistics shows that the average mobile app development costs $270 000 (Kinvey CIO Survey), $250 000 – $500 000 (Enterprise mobility exchange) or $171 450 – according to Clutch. Do these dry figures tell you a lot? We don’t think they do.

The reason is – we know what building an app normally costs and, more importantly, why. And we can also share some useful insights and life hacks to help you create an app on time and on budget. Let us quickly guide you through the process of making a mobile app and the cost breakdown will show us where those numbers come from.

Table of contents:

What’s in the Estimate and How to Choose a Pricing Model

The figures you get from developers or Sales representatives are not taken out of thin air. First, you briefly discuss with them what your mobile app might be about. Then they will come back to you with an estimate, listing the services you’ll receive.

You’ll find there a set of features you discussed with the most optimistic and the most pessimistic prognosis of the timelines. These figures will be multiplied by the company rates and this is roughly how you get the final cost to develop an app.

At Waverley the next step is to discuss every single detail of the estimate with the client afterwards. We explain the risks, pointing out all possible bottlenecks and finding the most reasonable solutions to optimize the app price. We also offer different pricing models to choose from:

  • the “dedicated team” model where we assign a specific exclusive team to produce an app, the client pays monthly fees
  • the “time&materials” scheme is good when you need to attract specific expertise for a certain period of time and pay per each hour of their work only
  • the “fixed bid” model is advised and actually works only if you have well-defined requirements for your app, clear and specific timelines as it limits flexibility

The Process of Making an App and How Much It All Takes

App development process and pricesWhen the price is agreed upon, the process between this moment and the app delivery looks in the following way:

  1. UI/UX stage. The wireframing, which happens by means of discovery sessions to map the UX part of the app, creating the app user stories. This stage duration depends on the number of screens. For example, it takes 2 hours minimum to develop the UX of 1 screen and at least 2 hours to make a beautiful design (tabs, buttons, splash screen) for 1 screen. However, it might take longer: UX – up to 8 hours and UI – up to 16 hours.
  2. Programming can start when all your designs are ready and approved. The time needed to program an app depends on the features you need and their complexity. For example, if your app is supposed to have user login it might take only 5 hours of development time. However, if you want to have an app made more complicated, involving social networks or other extensions, you will need up to 70 hours.
  3. Infrastructure is considered to be the most costly stage with the largest cost drivers:
    • basic controls (20 hours on average)
    • data storage (40 hours on average)
    • access to enterprise data (100 hours, up to 400 even)
    • data encryption (40 hours)
    • 3rd party API integration
    • scalability – allowing a bigger number of users, devices, screens, OS (130h on average, but the maximum timeline is 800 hours)
  4. Administration, CMS. If your app also needs some kind of app administration, analytics, performance management etc. – it’s 20-80 hours more. The development of a Content Management System can take up to 1000 hours, logically reflecting on the app production cost.
  5. Testing or Quality Assurance is something you can’t do without. Usually, the testing of one unit or feature is proportional to the complexity and takes 20% of the development time.
  6. Deployment. The last stage is to deploy an app, with all necessary licensing and packaging, which on average requires 11 hours of the developer’s time.

How Does the Feature Set Influence Your Mobile App Cost

The price for creating the simplest mobile app for business can be around $1000-4000, but who really wants the simplest? In order to keep up with the competition, provide better user experience and just stand out entrepreneurs want their smartphone apps to have as many useful features as possible for the smallest cost possible. Let’s try to put price tags on some of the features.

  1. Backend servers. As a rule, apps with backend servers cost more. What does it mean? It means that the data your phone application uses is stored not on a device itself, but on a particular server. However, if your application has a lot of screens, say 50, additional cost for the back end server is almost lost in the overall cost.
  2. In-app purchases. Planning to monetize your app by means of placing ads or enabling in-app purchases? For example, you have a game where your users can buy virtual goods. It depends on the number of purchasing options, whether you have a whole virtual currency system or just plan to allow unlocking of premium content. It might cost $1000-3000 if the developer’s rate is, let’s say, $50/h.
  3. Camera, microphone, geolocation. If you want your mobile app to share capabilities of the phone – use camera, mic, geolocation or any sensors the phone has – the price you are most likely to hear is somewhere in the range $500-1500 per each. In case you intend your app to connect to the web, depending on the purpose, it might cost up to $5000.
  4. Login. Need your users to log in? You’d better choose the most reasonable option. Login with Facebook will cost you more than an email login. In general, integration with social media (extracting information, working with friends list) takes some development time and is a costly process. So beforehand do a careful research of your target audience to make sure your money is not going down the drain.
  5. Payments. For eCommerce applications like online shops that have real payments and need to make certain calculations, the development of such a feature will take approximately 20-30 hours and the cost is $1000-1500 on average. Basically, your developer will write a piece of code responsible for interaction with the payment system. For all other screens, he will be able to use the same code. Roughly speaking, if the payments development takes 20 hours for one screen, it might take just a few hours more to enable payment for 100 of other screens.
  6. Analytics. At some point you will definitely need to track how things are going with your app, so introducing some analytics into your admin panel is the right choice. This feature itself is easy and fast to make, taking only a few hours to implement. However, the most time-consuming and costly process is planning the analytics itself. All indicators and measurements have to be relevant and convenient, so it all has to be structured by a specialist in analytics if you want these figures to bring value to your business in a long-term perspective.
  7. Data encryption depending on the data model may take 20-30 hours of development. You can also think of such security measures as protecting your communication with the server or specific encryption of the data inside each device.
  8. Synchronization. In order to allow your app be synchronized through numerous devices: phone, tablet, laptop, add to your list 30-40 more hours. However, it will take more if you want changes to be displayed in real-time because it requires using special pushes.
  9. Localization. Planning to expand to other markets and regions? Adding a second language is relatively easy and fast to implement as soon as you have a translation of each text piece used. However, it might take longer for Eastern languages, like those using hieroglyphs or the ones requiring right-to-left layout and specific qualificators (these add 2% to the price).

You can actually try some of the calculators to estimate the approximate cost of your mobile app:

  • HowMuchToMakeAnApp
  • Calculator from VenturePact
  • EstimateMyApp

Any Additional Post-Release Expenses?

You should be ready for additional expenses, especially if you work with freelancers remotely or your software development partner is not very reliable. According to the Forrester Survey, the average cost to create an app oftentimes turns out to be only 35% of the actual two-year cost.

Another reason is that after the app is built, there is still work to be done. The app needs support, back-end maintenance, potentially marketing efforts and who knows, maybe you’ll decide to update it a little. Actually, 80% of the apps are updated twice a year and approximately a third – at least once a month. Besides that, post-release expenses usually include cloud hosting costs, the cost of launching an app, billing as a service subscription, etc.

Which Type of App Do I Need?

With a sufficient amount of business analysis you can get to know your target audience and this will help to narrow your development options, and the exact type of app you should concentrate on.

A native app is an app for a specific platform or device: for iPhone using Swift or Objective-C, for Android – using Java. The average cost of developing a native app for smartphone is $35 000 for a medium enterprise.

These apps are fast, reliable, but usually mean additional costs. If you want to extend it to other platforms or operating system versions – you need to create a separate software. Note, that producing an app for Android costs more, due to the big number of OS versions and devices which run on Android.

If you want your app to work on more than 1 platform, consider hybrid apps. They are built with the use of web technologies, involving the phone’s browser engine (not the browser itself). They are cross-platform and support different versions of operating systems. As a result, the cost of developing an app like this is usually lower than 2 native apps – $50 000 for an app compatible with iOS and Android. They still allow using some device capabilities like storage or camera.

Web apps are typically written in HTML. They work through a browser and are not exactly like real mobile apps, but rather like web pages with app-like look and behavior. They work fully via the Internet, though providing a higher level of interaction and customization than regular web pages.

According to the functional complexity and the kind of data source apps use (and their cost correspondingly), mobile apps can be divided into:

  • lists – the simplest apps, only contain information, occupy relatively small space and contain a basic number of features. Do you know these simple but useful To-Do apps that help you manage your routine?
  • database-involving apps – connect to a website to extract and use the data, allow users to perform different operations with data: find, sort, process. You’ll have your own profile there which will give you access to uploading data, keeping it somewhere and retrieving it anytime.
  • dynamic applications – allow cooperation with other software, connect to third-party APIs – for example, enabling Facebook login, etc.
  • games (the most expensive, take long development time and usually lots of complex technical efforts)

What Expertise Do I Need?

What kind of team is necessary to successfully deliver an app? Of course, it depends on the amount of work you need from them, so teams can vary in size, professional level and work model. The team you should start with to successfully get an app made is:

UI/UX specialist, skilled in building efficient user experience and familiar with the latest visual design trends. You can work with UI/UX specialist on a temporary basis, involving this designer only when there’s a specific need. However, it’s better to have your own designer on board constantly, to be able to adjust your design to any changes that might occur. Besides, you’ll most likely need other designs, like an app logo – at some point.

To develop the backend and frontend of your application, you will need to hire developers possessing deep expertise in the needed programming languages and technologies. Preferably they should also have some experience with building the kind of applications you want. If your team comprises a few developers, it is logical that you start with someone senior enough to be able to build the whole architecture.

Quality Assurance Engineers will be responsible for testing your application. This testing can be manual or Automation, by means of scripts and tools. It depends on the size of the project and a few other factors. Sometimes the team also includes other specialists, like DevOps – cloud specialist, or a capable Project Manager – able to keep everything on track, make sure the project goes on time, on budget also providing the quality control.

How Location Changes the Cost: US, UK, Western/Eastern Europe, Asia

Cost to build an app in India, USA, UK, Ukraine, Australia

Nowadays you’ve got plenty of options to choose from. However, choose wisely, consider all pros and cons and listen to your gut. Remember, that hiring a software development partner is not just about costs, it’s also the relationship. The final cost will largely depend on the expertise of your developers, their country of living (living cost), their experience. For example:

  • rates in the US, especially in New York and California, are around $200-250/h, companies in Western Europe and the UK charge approximately $100-$150 (according to Clutch). In Australia – $50-150. Mostly it’s due to their high cost of life. They range from luxurious agencies, capable of doing first-class work for big corporate clients who can afford their services to more modest companies. As a rule, the bigger the company is – the higher the overall development costs are.
  • many entrepreneurs resort to outsourcing their development to Asia (e.g. India). The costs are a lot lower – starting from $10/h. However, if you do opt to save money this way – be prepared for many difficulties caused by their remote location, a difference in time zones, etc. In addition, be extremely careful in selecting your developers. If they lack expertise or experience – you may have to pay more for their mistakes later on.
  • the average option is to turn to companies from Eastern Europe (Poland, Romania, Ukraine). They offer high quality of education, extensive talent pool and the rates are in between the first two options – $25-120. Sometimes American companies like Waverley (headquartered in Silicon Valley) open development centers elsewhere (Eastern Europe: Ukraine and Asia, Vietnam) to offer higher flexibility both in terms of geographical proximity and cost.
  • freelancers can be found on numerous online platforms, offering a wide variety of rates ($15-50). Nevertheless, get ready for some security concerns you may have. You need to foresee and prevent every single possible breach of security by means of an NDA. Besides, it might not be for you if you feel uncomfortable when there’s any chance to lose contact with someone who’s responsible for an important part of your project.
  • online resources like TheAppBuilder, Appy Pie, The App Machine can help you build an application with no actual coding, just providing the templates you can use. It is cheap, but if you truly value your app performance, beautiful customized look and a full freedom to add any features and elements you like – this is not an option for you. Online tools work better with small and simple apps.

Talking about the size of development companies, big companies usually charge more ($500 000 – 1 000 000) than smaller ($50 000 – 100 000). Companies with impressive customer histories, loud company names in client list charge more as if taking additionally for their reputation. Sometimes it might be an option to work with startup incubators, who usually offer packs of services for a moderate price. If you intend to create an eCommerce app – there are some companies that do just that for a price starting from $10 000.

How to Reduce the Price

how to reduce app development price
Now you more or less know the procedure for creating a mobile app, the actual cost to build an app, what you need for this and why. Still there are some details that might help you make sure everything goes right. Here are some tips and tricks from Waverley on how to save money and nerves on building a mobile app:

  1. Follow specific design guidelines. It will take a lot less work to create a design for your app if you follow the basic recommendations on how to design for specific platforms. For example, Android interface has a back button to get back to the previous screen. Instead, iOS uses the special back icon at the top left corner of the screen.
  2. Consider material design. It is one of the latest digital design trends that’s only gaining bigger popularity. The best thing about it: it’s simple – offering the simplicity of colors, contours. If you go with material design instead of complex sophisticated alternatives – it will still look gorgeous.
  3. To save even more on design, just use templates instead of customized elements. Of course, a custom app will stand out and look unique. However, if you really want to cut on the overall cost, templates might help. Now you’ve got plenty of libraries with design templates that are cheap and quite decent-looking.
  4. Always test things first. For making an app we recommend to start with an MVP – Minimal Viable Product. In other words, it’s a minimal working prototype of your software. It contains only the most necessary features and it lacks full design, but at this stage, it might be enough. Why?
    • To have, let’s say, a draft of your idea, to see it in reality, not only in your mind. For the minimum price.
    • So as to define the main features, requirements, technical details. It is easier and definitely cheaper to do when developing an MVP.
    • To conduct market research, while testing your MVP and measuring its popularity. Do people really need your product? To figure out the answer to this question before it’s too late.
    • If everything goes fine with your MVP, you’ll have a solid base for further development. Oftentimes entrepreneurs just take their MVPs and expand them with new features, improve performance, etc.
    • For risk assessment, as you face real challenges, not theoretical. This way you can better understand how to overcome them and even avoid at all when it comes to the full version of your product.
    • In order to engage investors, if they see a practical result, they are more likely to trust you and your management capabilities.
    • To simply test yourself, your partners, have a little rehearsal. To realize whether it will or won’t work out at all, whether you have enough stamina to manage this whole thing and if it’s worth it.
  5. Carefully plan everything beforehand. Map every stage of the project, write down all necessary details. Make sure you don’t forget anything important and at the same time – that you don’t pay for things you don’t need. Do not be afraid of the details, both in planning and in development. The more details there are – the higher the quality of your app and the less technical debt (things you’ll have to fix afterwards) you collect.
  6. There is an opinion that it is enough to hire only a Javascript engineer to save money on other specialists. They say that a Javascript developer will develop both the front end and back end of your mobile app using Native Script. In fact, it is not always true. In this case, when there is a need to change things, update the app, etc. – there will be a lot of extra work and time.
  7. Cut the unnecessary features. Usually, we help our clients determine what is vital for the app and what might bring along additional unreasonable expenses. For example, push notifications can be useful for some specific purposes but are expensive to maintain. Most likely you won’t need them during the first stages after the app launch. You can add them anytime, but for now just take it slow.
  8. Use cloud backend instead of your own. The risk of cloud computing is the lack of security. However, if you are ready to face it – it will cost cheaper that developing everything on your own.
  9. Choose development partners with regard to their experience. It’s good if they have worked with the similar clients to you – size, business model.
    Look at their background – do they possess a list of apps successfully launched on app stores? The policy of launching the app on an app store is quite strict. If your developers know how to keep up with all demands – perfect!
  10. Properly vet your software engineering relationship. Even if you do not have the technical background, communication is an invaluable part of the process. Make sure your team is aware of your expectations. Keep them motivated and make them interested in your success as much as you are.

For over 20 years Waverley has built solid reputation solving technical challenges for clients globally. We built a number of successful mobile apps for different businesses. Should you have any questions or be in need of advice – contact us and we’ll be happy to help.