DEV Community

Discussion on: How do you estimate/calculate costs of new features for clients?

Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

If it's you as freelancer, break fratures into little tasks and estimate each by your experience level point of view.
Then apply some containment to it (10% min, 25% max).

Finally check the market price for an hour (gross or net, depending on the base you're using on the calcs) and do the math:

(Estimated + containment) * price.

It's said in Agile that "points" describe effort and not time, but as you need to set up some milestones, deadlines and so plus you'll charge the client by worked hours (just like in any other technical job)... You'll need a conversion guide between both.

Try it on a sideproject of yours and refine that conversion and estimations.

If you end up working less hours than expected, good for you! As the budget has already been accepted and you already get a part of it to start the project it's ok to keep it the same.
It can be that you estimate less than needed and in such case you'll need to "pay" that difference with your time unless dev time extended by client requests, of course. In such cases the process is the same... Estimate, add containment, multiply per hourly price and sum it up into the main budget.

On the other hand, if you need yo handle other services such hosting, email service etc you'll need to add this costs plus a maintenance cost (recurrent) to the client contract and budget.

This comment does not cover all the use cases, possible costs nor situations but I feel it can be a good starting point.

Hope it helps

Collapse
 
nombrekeff profile image
Keff

Interesting, this is more or less what we're currently doing.

I'm not freelance though, we work at a consulting agency, but we're kinda new in this kind of stuff. I just wanted to check if we're doing it correctly or if there's some other way of doing this. We've improved quite a bit since we started, but it always feel weird or wrong to do it in this way...

Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

Well in consultancies the thing is a bit more difficult (not necessarily difficult but it implies more bureaucracy and process polishing along the time).

It depends on your business model at the end.

It can be a resource assignment with no end date planned for the project (just milestones with deadlines each) so you need to calc the salaries, infrastructure costs etc etc etc plus the availability of the resources and a percentile that will be the benefit for the company itself.

I'm not so involved in this stuff to be considered an expert but you'll find information about that online, sometimes a bit obfuscated though, as each company has it's private way of dealing with this and a specific business model that relies on the target market sectors of the companies they work with/for.

Just to clarify I'm using "resources" to speak about "people" (human resources) that includes devs and any other professional profile as a generic word: security experts, software architects, data guys, designers... quite dehumanising and not my favourite word but... In this context I can't find other that defines it better.

Thread Thread
 
nombrekeff profile image
Keff

Makes perfect sense, thanks! It definitely has a lot more bureaucracy, I freaking hate that part xD

I will share this comment with my colleagues, we might take some ideas from it!