iPhone App Development Cost / Process, Android App Development Cost / Process in Kenya
Often clients ask me to provide them with an estimate cost to develop an app, so they can decide on a budget or approach investors to raise money for the app project.
Mobile App Development Process
Below items show the typical process of mobile app development:
- Wireframing – Wireframing is an important process of building an app; this is because it will build the foundation of how the app needs to be designed and function. One important thing to note is that with mobile apps, it will be much more time-consuming and costly to redo the screens or rebuild functionality than a web app, so, it is important to build the wireframes before starting the development. During the wireframing, an app UX specialist and an app developer need to have discovery sessions (brainstorming) with the project owner to iron out how the app is going to be designed and function.The more complexity, or the more screens the project has, the longer it will take to complete the wireframing. To complete the wireframing, an app UX specialist wil draw up the navifgation, screens, and all of the elements that goes into the app screens and and noting the functionalities for each screen.
- App Screen Design – Designing the app screens (front-end) for both iOS and Android.
- App Programming – Programming the app screens (front-end) for both iOS and Android.
- Application / Database Framework – Setting up the application’s server-side framework (cloud / back-end) and creating the database structure.
- Server-side Application Programming – Writing all of the server-side code for implementing the back-end functionality.
- APIs Development – Writing all of the APIs that connect the app screens to the server-side application and database.
- Usability QA – Testing the app screens for bugs and fixing any issues.
- Multi-platforms, Multi-devices, OS versions, Resolutions QA – Testing the app on all different platforms (iPhone, Android, Windows Phone) and different OS versions of each platform (Apple iOS has two popular versions: iOS 9 and iOS 10, Android OS has five popular versions (Android 5.0, 6.0, 7.0, 8.0, 9.0), Different resolutions of different mobile devices (between different devices of smartphones, phablets, and tablets, there are quite a bit resolutions to test for and it can be time-consuming.)
- Back-end QA Testing the back-end code for performance and security.
- Cloud Setup – Deploy the server-side application to the server / cloud.
- Submit to App Stores – Deploy the app to the App Stores.
Talent needed from Kenoobi Consulting to Build a Quality Mobile App
Building a quality mobile app requires many steps and requires different talents with different specialties:
- For wireframing, a UX (User Experience) Specialist who has experience in building app screens with the best user experience. A UX Specialist should know the app conventions and rules of showcasing the navigation and elements on the screens making it easy for users to better navigate the app and find what they need, in the right priority.
- For designing the app screens, the Designer needs to know how to design for different devices: iPhone, Android and Windows phone screens. In short, the Designer should have the experience and the vision of how different objects or graphic elements are going to look on small phone screens and different resolutions. The Designer also needs to use the right size, right graphics and icons, and themes for the app.
- For programming the app screens, the Programmer needs to have experience in using Xcode environment with Objective-C or Swift for iOS, and Java for Android. Usually, programmers become specialized in either iOS development or Android Development.
- For writing the server side application and APIs, the Programmer needs to have experience in writing maintainable code with best security and performance.
- For QA, the Quality Assurance Specialist and Tester needs to be detailed oriented and have experience in looking for the functionality and design issues that are usually not easy to see by the Developers.
- Deployment of the server-side application goes beyond being a Developer or Programmer; it requires an experienced Programmer and a Cloud Specialist, sometimes refered to as DevOps. The DevOps needs to have experience in installing the application, create a reliable server environment, database redundancy, backup, security, performance and scalability of the application.
- Deployment of the app to the app store is usually an easy task.
So, when you look at the talent requirements of building an app, you will realize that to build a quality app that is nicely designed, user friendly, functional and scalable, you will need different talents from Kenoobi Consulting with different experiences and specialties, and this can add substantial cost to the app project.
Mobile App Development Estimated Cost
Based on all of the talents that are needed and all of the work and process that goes into building an app, I created below, a cost estimate on building apps.
|Project (Kshs)||Small MVP||Small Enterprise||Medium MVP||Medium Enterprise||Large MVP||Large Enterprise|
|Discovery and Wireframing||25,000||25,000||55,000||55,000||120,000||150,000|
|App Screen Designs||65,000||85,000||100,000||115,000||135,000||180,000|
|iOS native development||350,000||460,000||570,000||680,000||790,000||900,000|
|Android native development||250,000||340,000||430,000||520,000||610,000||700,000|
Back-end Programing, Database and APIs
|Quality Assurance and Refinements iOS||55,000||75,000||80,000||95,000||100,000||152,000|
Quality Assurance and Refinements Android
|Deployment and Cloud||22,000||35,000||68,000||81,000||101,000||152,000|
|Total (One Platform)||472,000||699,000||920,000||1,167,500||1,513,000||1,831,000|
|Total (Android and iPhone)||877,000||1,234,000||1,570,000||1,942,500||2,403,000||2,883,000|
*Costs in Kenyan Shillings
*MVP: Minimum Viable Product: A product with just enough features to satisfy early customers, and to provide feedback for future product development.
Mobile App Development Cost Factors
The cost of developing a mobile app is based on these factors:
1. App Platforms and Environment
Building for all platforms substantially increases the cost. This is because Apple iPhone uses Xcode IDE and Objective-C or Swift Programming Language, Android uses Java Programming Language and Windows uses C# Programming Language.
If Kenoobi Consulting needs to build the app for all platforms, and the app needs to be built using the native programming language of each platform, the cost of development will be doubled or tripled because of the amount of time that is needed to build the app using different programming languages of each platform.
2. Customizations vs using Standard App Widgets and Convention
The more customizations that you make, the more time it takes to develop your app.
Also, it is good to know that the app development environment for each platform provides certain widgets for building the standardized convention such as navigation, changing screens, animations, and other app user interaction elements. When using the standard convention, the app development cost will be more cost effective.
3. Number of App Screens
The number of screens has a direct impact on the cost; the more screens you have, the more work will go into building the app.
4. Complexity of the Screens
It is recommended to build cleaner (and less busy) screens with simple navigation that uses standard app conventions. This will provide the best user experience and reduces the cost of development.
If you build busy screens with many complex navigational elements, the cost of the app development will be higher
5. Ecommerce and In-App Purchases
Anytime you are working with money, Kenoobi Consulting needs to be extra careful with the calculations and security.
So, in-app purchases and dealing with money add more time to development because extra time is needed to make sure that the calculations are accurate, and the app is secure.
Even after the development is completed, we recommend doing additional testing on transactions to guarantee the accuracy of the calculations before going live with the application.
6. Integration with the Third Party APIs
When the app needs to communicate with other services, Kenoobi Consulting needs to learn and interface with third party APIs.
This will require extra time to learn the third party APIs and implement them correctly. In many cases our API programmer cannot assess the amount of work that is involved in interfacing with third party APIs until he/she spends some time learning the API and interfacing with it.
7. Complex Animation
Customized and complicated animation and games can take substantial development time.
Complicated animations that do not provide any practical purposes can also slow down your app and frustrate the user. So, try to stay away from complicated animations that do not serve any practical purpose.
8. Support for Multiple Mobile Screen Resolutions
There are three types of mobile devices:
- Smartphones – examples: Apple iPhone 6,7,8,9 or Samsung Galaxy S5, S6, S7, S8
- Phablets (the screen size is between Smartphone and Tablets), examples: Apple iPhone 6 Plus or Motorola Nexus 6.
- Tablets examples: Apple iPad multiple versions, mini multiple versions, Air, Samsung Galaxy Tab (multiple versions)
The above devices all have different screen resolutions. For the newer versions of the devices’ OS, there are ways to resize the content to match most screens, but to build custom interfaces to support all screen resolutions can be very time-consuming and costly.
9. Support for all versions of the devices operating system (OS)
If you are looking to support all of the OS versions of all devices, the cost will be much higher. I would recommend selecting only the popular versions of the devices OS to support.
10. Offline Support
Developing for offline support functionality can be time-consuming and in turn will increase the cost of development.
11. Continuity / Handoff Feature
Handoff feature provides the functionality of connecting and sharing / moving information and data between different devices.
Building handoff functionality can be time-consuming and can add substantial cost to the project.
Whether you are a start-up or an established business, Kenoobi Consulting is ready to assist you at every stage of the software development life cycle — from conceptualization and consulting to development and support. Our software engineers have a wealth of experience in building web applications. We are also experts in many verticals and business domains, including e-Commerce, e-Learning, AdTech, Finance, Entertainment, and more. Contact us at: consulting(at)kenoobi.com or +254 705 286 145