When talking about costs of a software product, ‘vague’ is the perfect word to apply here. No one can tell how much time and money your project will take. But you, whether you are launching a startup, or a cost-efficient app for presenting your business, an internal enterprise product, or you need software for any other business purpose – you need to plan your budget. You want to know how much your mobile app or website will cost. Nobody will tell you that exactly – but here we’ll try to come as close as possible.
If you are driven by the idea but have no experience in hiring people to do software projects, this question will be especially acute, because you search for funding, you need to establish deadlines, you need to know how much you need for development, how much you will have for marketing, and how ROI will be eventually brought. You need to know when your product will be ready to launch it at the right time. You need to expect something.
How Long Will Your Project Take?
Now as you are able to imagine the hourly pricing, you need to know how many hours of work are required to lead your project from a bare idea to deployment of a ready product. It’s all about the complexity of your product: its functionality, required tools, custom vs. standard solutions, presence/absence of backend, etc.
#1. The simplest apps with simple graphics, basic tools, containing up to 10 types of data (name, ID, email, comment, image, audio etc.), minimum input forms, up to 15-20 screens, a couple of menus, and minor updates from backend (such as updating quotes from an external source for a quotebook app) – approximately 200 hours (double it in case backend is required).
#2. More complex apps with about 40 screens, up to 20 types of data, interaction with social networks and/or native platform capabilities, basic CRUD (create/read/update/delete) operations, one user type, creation of account and minor social features – approximately 300-450 hours (+ 300-400 hours for backend).
#3. Even more complex interactions, personalization as for different user types (including administrator to access and manage CMS), location-based systems, e-commerce, smaller custom CRM systems, integration of payment systems, moderate enterprise solutions – 700 hours (+ up to 700 hours for backend).
#4. Complex logic, big volumes of data, security, storage and processing on the server side, complex server side, scaling, major social networks, custom CRM and ERP systems – 1000 hours (+ up to 1000 hours for backend).
Add 30% for testing (this number varies depending on the kinds of testing you require) and about 10-15% for project management (depending on complexity).
Of course, all of these numbers are very approximate, since there is no calculator to tell you the exact amount. The further your team studies the project, the more precise their estimates will be.
Expertise Over Cost
When you compare candidates for your project, always keep expertise over their hourly rates and their first estimates, which you receive after the initial dialogue. They differ greatly and are extremely vague. Don’t trust an estimate based on vague explanations. Moreover, if you start comparing the first estimates given by different contractors, don’t make them a reason to prefer one contractor over another. You may be mistaking when explaining your ideas, or they may be understanding you differently. You need to make sure you have the same detailed vision of the product. But this doesn’t usually happen before this ‘first estimate’.
Even moderate understanding of your project is impossible unless you have comprehensive documentation to hold on to. It’s the only condition to have more or less precise numbers to operate with. All in all, it’s the professional expertise that is able to create a high-quality product for you, not a low cost offer.
If we take a look at average hourly rates of software companies around the world, we’ll get the following picture:
• USA – $40-$130
• Western Europe – $30-80
• Australia – $30-$70
• Eastern Europe – $25-$45
• Central/South America, Africa, Middle East, Central Asia (These areas are not the most popular outsourcing destinations) – $15-$25
• India – $10-$35 (on freelance marketplaces the most common range is about $12-$16)
These were average costs of companies, while for single freelancers subtract about 25-30%. But single freelancers mean a different approach which doesn’t work efficiently for full-cycle projects. You will have to hire a designer, a developer, and a QA engineer at least.
Let’s make this statement once again: cost is not an indicator of expertise. Although you should naturally beware of marginally low costs.
How Can You Reduce These Costs?
#1. Understand the real cost of your product. You will be tempted to hire the cheapest workforce that promises the lowest amounts of time – but if you get a bad product, you’ll spend twice as much correcting what’s been done wrong (or even hiring a new team and possibly remake it from scratch). Avoid this temptation and hire a good team from the beginning.
#2. You don’t have to build it all here and now. Be flexible. It’s usually reasonable to launch a minimum viable product and just leave secondary features for later, considering them by development – you will roll out new versions anyway, so leave it for the time when you start receiving revenues by monetizing your product. Your team (business analyst, project manager) will help you with defining what should be done now and what should be done later. Just make sure to address each feature in detail.
#3. The whole financial load is divided into iterations, so you are able to plan the budget more efficiently. For example, you have a large project that will last about a year, and the approximate estimate requires $85,000 budget. This means it will require about $7,000 monthly. However, it can start with $5,000 per month (analysis of requirements, design, project management), then in the middle of development about $10,000 (as the load is the biggest here, and all of the team members are involved); then again about $5,000 at the end, when comes the time of ‘heavy’ final testing. Don’t hide the real budget – your team will help you plan the course of development in the most efficient way.
#4. Many of the risks that increase estimates, involve changes that you’ll inevitably introduce during the development. Plan ahead, and don’t hesitate to invest into documentation (such as requirements specification or user stories, which take time at the beginning, but drastically reduce the cost of error and save plenty of time during the development itself).
To conclude: app costs don’t stop at the launch. Actually full-cycle development includes such post-release services as support, maintenance, and further upgrades of your software based on user feedback. That’s one more important thing about choosing your software contractor – it must be reliable and professional enough to become your partner for long-term collaboration to keep your software fit and healthy, valuable, fully functional and admired by your users.