37

I am pretty good at estimating my time on a project. For this question, let's say it is for a simple WordPress website with a custom theme development. I have quoted and set my contract with my client to be $2500 for the project, as it will take a total of 45 hours of work.

I've now spent 45 hours on the project, but I am not yet done. What is the process to go to the client and ask for more money because the build is taking longer than expected? Is it even appropriate to ask the client for some more money to finish the project, or am I just stuck finishing the development and "working for free" at that point? Should I begin putting a clause in my contract with a client to cover myself in this case?

31

Most people have trouble estimating projects, especially when they are new. When estimating, we tend to think of the project on a very high level and fail to take into account the details involved in figuring a good target estimate.

The most logical solution is to prevent this problem by focusing on improving your estimation techniques:

Break down the work into small subtasks:

To create a good estimate, first break down the project into high level sections that you know will be part of the project. If you're working on a website with a front-end and a back-end, for instance, then you know you have a client-side front-end portion and a server-side backend.

For instance, I would break down the front-end by pages, then break each page down by component, then break the components down into work that needs to be done on the front-end and work that would need to be done to populate that front-end with any data. I'd then gather an estimate of how much time it would take to complete those components.

Once completed, I'd look at my spreadsheet. Any tasks that take longer than a day, I revisit and break them down even further. Ideally, I try to break down each task into subtasks where each subtask takes about an hour or two.

By breaking down tasks into subtasks that are measured in just a few hours, I most likely uncover additional details and scope that I would otherwise overlook had I just used my initial gut feeling.

Lastly, add an additional 30% for bugs and other problems that may occur, just in case.

What if I still have a problem with underestimating:

As soon as you think you might go over your budget, tell your client immediately. If it's still early, you may be able to clarify the scope and negotiate a higher rate on the contract. Explain to the client what part of the project scope you overlooked, and offer to bill for the additional time at a lower rate.

If they refuse, then you can decide whether or not the time you've already invested is worth writing off, and if it's worth losing the client. In cases where there would be a huge hardship, you may just want to terminate the project.

However, if you know there's going to be more work, or if you know you won't go over your budget by too much, it may be wise to just simply eat the losses, knowing that you'll have more work later and an opportunity to learn from the mistake.

No matter what, it's still important to explain that you may have underestimated so that the client isn't surprised by higher estimates later on.

  • 2
    Great tips. But it seems to me you are spending too much time estimating the project. Do you do such low-level estimation in each project or just into those you are sure you will win? Most days I get at least 5 requests for estimation, and working your way, I would spend 3 hours at least estimating projects. And we all know that not all clients are serious :). – Peter MV Jul 16 '13 at 9:05
  • @PeterMV These are generally projects I am 99.9% sure I will take. If one spends only 3 to 5 hours estimating, I suggest overestimating instead of trying to be exact. – jmort253 Jul 16 '13 at 19:30
  • 3
    In concurrence with @PeterMV, I literally spent 2 full time weeks estimating detailed tasks for a big project (12-18 months @ $125/hour @ 20 hours/week). Ultimately I didn't land this project, and next time I would probably charge some fixed fee for such a detailed estimate. Now they have a detailed plan of work that they can use to try to get someone else at a lower rate. I didn't charge for the estimate because I already had a relationship with the client, and I felt it was likely that they would continue to use my services. – daaxix Nov 15 '14 at 17:43
  • @daaxix, So do you mean that estimating-without-collecting-pay is typically what you do, or do you mean that you did it once, realized it sucked and now you are no longer doing estimation work for free? – Pacerier Oct 10 '15 at 11:27
  • @jmort253, I don't quite understand your comment.... even 5 hours is a lot of time. Does it make business sense to be doing 5 hours of free work for the client? The dilemma is that at the same time, on the client's side, it doesn't make sense for them to pay for 5 hours of work which they may not use. – Pacerier Oct 10 '15 at 11:28
11

I prefer not to ask for more money on fixed bids with fixed scope. What I will do is put the additional hours on the invoice and mark them as discounted 100%. I have occasionally had customers offer to pay for those though it is the exception rather than the rule. I would rather charge a higher rate that allows me to eat some extra cost and lose some competitiveness there, than lose it when I go back for more money.

I have had $10k projects that went on for 4 months when I expected to finish them in a month before. That's unfortunate but it happens occasionally. What you hope is that you are charging enough elsewhere to cover when it does.

As a further note, I typically bid on fixed bids somewhere between 1.5 and 2x what I would expect to make hourly. This is to cover risk. Most of the time I could have done things cheaper hourly, but when a project hits big walls, it means I can afford to keep to my initial quote, knowing I will make back up the money elsewhere. Think of it as like insurance.

  • 9
    an upvote for "put the additional hours on the invoice and mark them as discounted 100%". I never thought of this. – Peter MV Jul 16 '13 at 9:02
  • @Chris, How would a month estimation ended up in 4 months of work? Did the customer requested multiple "small fixes" along the way which added up to a lot of time? – Pacerier Oct 10 '15 at 11:31
  • 1
    In the case I think of, it was a matter of insufficient domain knowledge to understand the full requirements on my part so a lot of time was lost getting up to speed. – Chris Travers Oct 19 '15 at 11:00
5

The main thing is you need to justify why you want more money. Has it taken longer than expected? are there additional materials required etc? If the answer is yes, then put that to the client and see if they're willing to pay the extra. If not then inform them the project may not be finished. This of course will only work if you mentioned at the beginning that based on the current info it will cost XYZ. This happened to me. I had a client who wanted 200 different products with images listed on their website so I priced a job based on the number of hours it would take me to list the products, but once I was given access to the server where the product info and images were stored I found twice as many. Which the client didn't know about either due to a previous dev not doing their job properly. I told the client and gave them two options, pay twice as much now and get it all done or pay the original amount and only get it half done. Client paid twice as much in this case.

Another is at the start you can always give an estimate of time, but charge the for the maximum amount of time it could possibly take. for example: say a you estimate the job will take between 10 and 20 hrs this is huge difference so charge for the 20 hrs but make sure it states in the contract the hours it will take. if they sign it, it wont matter even if it only took you 10hrs. You could refund the difference or keep it thats up to you.

4

If you work on a retainer like a lawyer does, then depending on the specifics, your client may/will expect you to ask for more money.

Most attorneys will accept a client with a standard retainer, often $10k to $100k, and explain to the client that this amount will be held in escrow (many states require that amount to earn interest at some rate too) and paid out to themselves on an hourly basis at an agreed-upon hourly rate as the attorney spends time on your case.

It is typical that an attorney will also explain that this initial retainer is anticipated to cover the entire cost of their handling the case that you've asked for their help with, but that unforeseeable circumstances may arise in which circumstance you should expect them to ask for an additional supplementary retainer.

As a matter of course, attorneys almost always operate with a positive balance in your account. That is to say, they will ask for a supplementary retainer when your balance with them has fallen to maybe 10-25% of it's initial value.

This has become so nearly universal a practice in the US that pretty much all clients expect it. And while it may be atypical outside the practice of law, it's difficult to find fault with this approach from the freelance worker's point of view.

  • The fault with this approach is the loss of opportunity cost of the retainer. The difference is that in a law case, people only have one attempt and literally cannot afford for the "law project" to go haywire. In terms of software projects, you can afford for the project to go wrong. In fact, some people even hire two sets of work upfront and only keep the one which they like – Pacerier Oct 11 '15 at 18:03
3

There's a lot of really good answers here, but I just wanted to pipe up and mention what I've come across in the past (either by trial and error, as well as what I would consider best business practises).

If you have quoted your client $2,500 to do a custom WordPress theme, they agree and you set out to do the 45 hours you budgeted for yourself to do it, that's fine. But if you've hit the 45 hours you estimated to yourself that it would take to do the theme at the fixed price you gave and it's due to your inaccuracy of the original quote, you aren't really entitled to ask the client for more money.

However, if the reason you've passed your 45 allocated hours for the project because the client has come back and asked for further design iterations, extra features in the build, etc. Then yes, you are more than entitled to ask for more money. Especially if you have a signed contract in place stating that if this sort of thing happened, they would be charged at $XX per hour.

So my suggestion if it's the first reason; if you will be doing further work for this client you should take the income loss for the short term, and over-estimate the further work you will be doing for the client (not by a huge amount of course, but by little increments). This will slowly build up the missing income from the original theme build, as well as keep your client happy and keep the professional relationship between the client and yourself healthy.

It's always easier and cheaper to keep a client than make a new one :)

1

In the case of a fixed price contract, then the clue is in the name - the price is fixed.

However...

What you don't say is why the project has not completed in the allotted time, although the inference is that you estimated incorrectly? If this is the case, then (regretfully) it's down to you, and therefore your loss.

If, however, the cause was scope-creep, or requirements have changed, then you are justified in asking for an increment to cover the additional work.

Of course, it may be a combination of the two, in which case, negotiate.

0

Always remember - it was you who has proposed the fixed $2500 thing.

Unless the client is a scope freak, if I was you then I would just finnish the work, take this project as a lesson in project management and do not charge the client for extra hours this time.

If you simply quit or ask for extra money to continue - do not think about hearing from this client again.

You can always cover your loss by charging him more next time.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.