How to produce mobile apps in a most cost effective way
At first ask yourself a question “Do you really need a mobile app”? If not, you will save money quickly.
In most cases the answer will be “no” and you could achieve the same goal by making mobile or responsive website. You need a mobile app for sure if:
- If users will not have internet connection all the time and they would need offline mode. Mobile app could store a data in a local database. Do not trust somebody who says that this feature may be achieved in a browser.
- If you are planning to use more features of mobile phones such as: accelerometer, GPS tracking, video recording, photos, voice recognition, augmented reality, on screen drawing or NFC sensor mobile app is the right choice for you.
- You want to build better brand awareness and accessibility. Mobile app is recognizable as something that differentiates you from competitors. The app provides a dedicated icon with your logo to access it fast, so the user will not have to search your website in browser or even in worst case look for it in Google.
- Be close to your users every day. SMS are outdated and there is no better tool for communication with users than mobile app. If you develop good and engaging push notifications you will have a direct contact with your users as often as you need.
- Usability and speed. If it is done well, mobile app is much faster and it has much better usability than a responsive website. As simple as that.
Native vs Hybrid
This is the topic for a long discussion, but let’s keep it simple. Hybrid apps are cheaper, especially if you need an app for 2 platforms, but the quality is lower. On the other hand in most cases there is no reason to develop for both platforms at once. My advice would be: start with high quality native app for one platform in order to save money.
MVP for a start
Common mistake is trying to have too many features in the app at once. You have to remember that the app should not be a copy of your web system if there is such. People expect from the app that it will be a simple and intuitive even if there is not everything in there. Try to focus on Minimum Viable Product and then if your users like it make some improvements and additions.
Quality and experience at first
Mobile app development is not an easy thing and is not cheap by default. Saving money by using low quality services will cost you more later on when you want to develop your app further. You have couple of options:
- Use somebody with experience in mobile app development and the person is in-house. This option is a good choice if you have good resource in-house.
- Use somebody who works in-house, but develops other technologies than native mobile. That solution may be tempting as it may seem that it is easy for developer to learn how to make native apps, but it is not. At the end there is a huge risk that you will have low quality app with multiple łbugs and performance issues
- Use a freelancer. This solution in most cases is cheaper than to use external company. This is a good option when you are willing to accept all the risk involved:
- Freelancer will give up and will not manage to do the project, because of missing skills or he will get another better job
- He could disappear in the middle of the project and leave you with no info
- He will not be able to speed up with additional resources as he is the only resource
- You will need to become a tester of the freelancer and point out every simple issue that he will make. Do not expect that he will also have all necessary devices to test the app.
- Use external company. This option is rather not cheap if you want to use your local company and you are based in Western Europe. Good option is to use a company from Central-East Europe like Poland. The cost of development is around 50% cheaper than doing it in Western Europe country.
Process of Development
This point is not always easy to verify. It is extremely important that development team knows how to develop an app in the effective way. What makes development efficient is:
- In the stage of designing make suggestions to the design where there are some additional hours hidden. Some of the Mobile Components like menu, tab panel, lists might be used as almost ready one and need to be just adjusted a bit. On the other hand if the design if not prepared well, developer will need a lot of time to make it look as it was designed
- Using libraries where it is possible. Not everything needs to be or even should not be done from scratch
- Use Story Board tool in X-code to make a front end development. Right now you may do almost everything for front end there and it is much faster than coding it from scratch
- If there is an integration needed with API and it is still not ready at the beginning of the development there is a really big changes that it will be not ready when developers need it. So if you want to save money, be sure that API is at least 90% ready before mobile development is started.
Analyze and upgrade
Check what features in your app are used by users which are not. Do not invest in the features which are not used, that would be waste of money. To check whether the feature is needed or need and upgrade, you may use Google Mobile Analytics, Flurry or another tool. Most of them are free of charge.