If you ever asked software development companies for estimates, you probably were surprised by the differences between calculations. Which one was right, then? Was the cheapest company offering poor quality or the most expensive one trying to rip you off? In this post, we will try to explain the reasons for the differences and how to get the right estimate.

Software development resembles in many cases real estate development. Or any other industry where you design and then build things. One of such resemblances is cost estimation. If you ever tried to build your own house, or just do some interior finishing work for your apartment, chances are you know that different teams came up with different pricing. And usually, the initial estimation was a bit different than the final cost of the project. 

But don’t worry. You can do a lot to get realistic estimates. And check whether your potential contractors are professionals that get stuff done as promised. Let’s start with the factors that will make the differences.

  1. The quality of the brief

It all begins with you, as it is you who briefs the potential contractors. If you prepare the project brief at a very general level, don’t be surprised that there will be differences between estimations. Chances are every company will come with different assumptions – and not only in terms of cost but also in terms of time needed for project completion. You know – you can use various technologies to build a mobile app, so asking just for that, without further clarification, is a recipe for misunderstanding.

  1. Lack of understanding

Majority of the issues with estimating comes from the misunderstanding. And it’s not only just the poor quality of the brief. Sometimes the software house might just have trouble with determining what is the MVP or which features are critical for the project. So they end up estimating the whole scope. And you end up with a heart attack. On the other hand, another company might understand the MVP as a very narrow set of features. Way less than you expected. 

  1. The earlier the stage, the more the guessing

Sometimes you also don’t know what you really need. You are just considering options and trying to hear what the market says. You also have to remember that in that case the estimates would be more like guess than solid calculations based on knowledge and experience. But the more you get into details, the more accurate the estimation will be. And chances are you will be closer to knowing what you need.

  1. Different approach

This is something that is actually fully dependent on the company you want to hire. Some will assign to your project just a single junior developer, with the occasional help of someone more experienced. Others will assign the whole team, including the scrum master and they will also charge you for the work of an account manager assigned for your project. At bPol, we offer you the full package. 

  1. Different rates

The overall cost of the project doesn’t just depend on who does it, but where they do it. Some software houses might just work as intermediaries, pushing the actual work forward. Usually to the east, where the cost of labor is way cheaper than in the United States, the EU, or even Eastern Europe. Pay attention to that – if you are ok with your code being written on the other side for the globe so you can save a few bucks, that’s fine. But the problem is that some of the software companies don’t disclose the fact that they outsource the work. Which, actually, might be a severe violation of your contract, as the clauses against hiring additional companies for the project without prior agreement are an industry standard.

How to get accurate estimates?

Knowing about the factors that influence the project estimates, you can do a lot to make them as accurate as possible. For starters, you can follow our advice:

  1. Prepare a good project brief. The more detailed it is, the less room for guessing and therefore misunderstanding.
  2. Compare apples to apples. Make sure that every tenderer gets the same information. This applies not just to the brief, but also to all the updates and answers to the questions.
  3. Ask what the offer consists of. If the company offers you fixed price, get to know whether it’s for a work of a single junior developer or the whole team.
  4. Look at how they treat you. Are you just another lead that goes through the standardized process or do you have a feeling of individual approach? Do they explain what they mean? Have you been offered workshops? Did you have a chance to meet your potential contractor in person?
  5. And a bonus tip: take look at the offer. If it’s detailed and organized, chanced are you will get at least decent documentation with your software. If not, you might get nothing at all and therefore incur technical debt.

And most of all – talk and ask questions. But that’s actually the universal truth you can apply to every aspect of running your business.