As a professional software house we are often asked to present price quotes for mobile applications. We are approached both by entrepreneurs with just an app idea and companies who have already decided to pick a certain technology. When it comes to making a price quote – things are not as easy as they may seem. The final price, depends on many factors such as: technology used, functionality and desired app appearance. Do you want a custom user interface or prefer a more standard one like Material Design? Do you need to integrate the app with external services or should the app remain autonomous? These are just some of the questions that we will ask at the first contact and although it may sound a little complicated, we hope this article will explain what information we need to be able to accurately quote your application so that you will be satisfied with the results and have a good understanding of the amount of work we need to put into making the final product.
Before we start asking about all the technical heart of the matter we would like to know more about your business. What does you company do, how many employees does it have, who are your competitors? This are the basic information that will help us understand the scope of the project. For example, the number of employees is especially important for an app that is used for communication in your company internally. The background information is optional and if you want to keep your information private than that is fine with us.
No matter if you are making a mobile app which helps better deliver your services or an app that improves the flow of business processes, the information about who the end users are is key. It’s especially important when designing the user interface (UI), which significantly affects the user experience (UX). It’s very helpful to define end users: what age are they, how tech-savvy are they, what is their sex, ethnicity, occupation etc. For the sake of example: let’s imagine an app for seniors that does X. We would probably want the app to have large buttons that are easy to press by elderly. This is just one example of how the end user can determine the app interface.
Planing one step ahead
When designing your app you should think in terms of the future. It’s worth considering what kinds of functionality will be offered to the user in the upcoming, years and how many users will use the app. A common feature that is introduced to apps as they grow is localization – adding other languages. It’s worth pointing out that adding such features may be a nightmare if the original architecture hasn’t been made in a way that allows for an easy and seamless addition of other languages. We often get requests for adding functionality that is very hard to implement in an existing app. In some cases it’s much better to start fresh that’s why alway try to think at least one step ahead as this will save you a lot of headache (and money) in the feature.
The purpose of the app
Even though this point seem obvious it’s still worth mentioning. What will you use this app for? What will be the main functionalities? Why do you think certain functionalities are necessary in your app? It’s always best to ask the end users what features they find best and which ones are not so important for them. A common mistake made by the app creators/founders is making the app according to their own personal liking. You may think that chat, allowing for direct contact with your customers, is the most important feature when in fact most of your users use the app to access your offer directly or they download it as a PDF – chat is not as important to them. Or maybe both functions are equally important? Try brainstorming with your team and customers and work out what is important and what isn’t.
If you already listed the main functionalities of your app, do consider this options:
- Push notifications – do you want the app to send user notifications from your server? This notifications can remind about product promotions, important updates or upcoming events. How frequent should the notifications be? Bear in mind – too frequent notifications may result in many uninstallations of your app (dont’ spam / blast your users with too much information)
- Geolocalisation – do you want your users to share their location? Using maps and GPS can show the users their surrounding as well as navigate them from their current location to your company. By knowing the user location you can personalize different offers or target region specific ads..
- Social media integration – using Facebook or Google to login may be convenient for many users. It’s usually a faster way for the users to start using the app straight away, without the need for creating another account or remembering a different password. Social media integration allows makes the app instantly more popular – more downalods. It also allows for getting analytical data about the users and allows for social sharing.
- Payment types – unless you want to make your app free, you should consider some kind of business model / how will you app make money. You have many options to choose from for example: advertising, in app purchases, subscription, one time payment etc. Remember – when it comes to payments there is a lot of sensitive data, like card numbers and CVV codes. If you are not willing to be responsible for storing this data you can always use third party services like PayPal, BrainTree or PayU.
This part of your project should be given extra attention. Many people think that making, a super-modern app that stands is the best thing to do. Unfortunately an original, animation rich design, that is loaded with custom views and widgets does not go hand in hand with ease of use. Many users may be turned off by a flashy design, that isn’t intuitive and easy to navigate. Of course a good UI designer may strike a balance between something that is eye catching as well as functional, but for the most part – it’s better to stick to Google’s material design or Apple’s Human Interface – both provide great .
What kind This part of your project should be given extra attention. Many people think that making, a super-modern app that stands is the best thing to do. Unfortunately an original, animation rich design, that is loaded with custom views and widgets does not go hand in hand with ease of use. Many users may be turned off by a flashy design, that isn’t intuitive and easy to navigate. Of course a good UI designer may strike a balance between something that is eye catching as well as functional, but for the most part – it’s better to stick to Google’s material design or Apple’s Human Interface – both provide great guidelines for layouts that are instantly recognizable by many users.
Your budget and deadline
Last but not least. A common theme in IT is: “We can make it fast, good or cheap – pick two”. It’s practically impossible to make a great looking app, that is packed with features and bug free in just a couple of weeks. Sure it can be done, but it requires more developers, then again tripling the number of developers won’t result in a faster delivery – the development time does not scale proportionally to the number of developers. It’s always nice to know what are the financial constraints. Specify your maximum budget and we will let you know if it’s possible to develop your application, maybe we can suggest a cheaper alternative. Once the development is done – think about the future support for the app, is that something you want to do in-house or shall we take care of it, this will also influence the price.
As you can see the final price of the application has many components. One the surface two similar looking applications, may be very different in terms of functionality and the technology used. To get an accurate price we need a full documentation which a detailed description on how the app works (functional graphs / functional design), graphic design (app mockups / layout), a list of assets (graphics, sound effects, dialogs, music etc.) – in shot a complete documentation. If you don’t know where to start, please take a look at out initial offer guidelines here. If you have any other questions, feel free to contact us.