There's an ongoing debate as to whether or not web design and development projects should be charged hourly or at a fixed rate.  Here's why using a fixed price method is bad for both the client and the design firm.

Why fixed pricing is always a bad idea

Clients always seem to want a fixed price for a project until I explain the rationale of hourly pricing over a couple emails.  There's nothing wrong inherently with wanting fixed pricing; it feels more secure and tangible than saying we charge $X per hour.  But it always ends up bad for the developer, client, or sometimes both.

Determining an exact cost

The fixed cost method relies on the fact that you can determine the exact cost and time it will take to complete a project.  With a very small project, you could probably get away with this, but as soon as you start looking at medium to large size projects this becomes near impossible.

Aside from not being omniscient, you would have to look at every single tiny detail in the project to be able to nail down this price.  So let's say that you as a client have a very thorough scope of exactly what you want to do- does this help?  Certainly!  And the more detail you have about your project, the closer we get to an exact price.  However, to get through every detail in this list and break down the technology needed and estimated lines of code (bad metric for amount of work, but point stands), you might spend somewhere in the realm of 3-6 hours of time to evaluate the price.  God forbid the project includes existing code that needs to be studied and refactored.

So who pays for the 3-6 hours spent researching the project, APIs needed, package dependencies, and previous developer's code?

Someone is getting a bad deal

Underestimated project cost - Okay, so the amount of time it took to complete was underestimated by the design firm.  The developers are now working under their normal pay grade and you're getting free work, right?  

Sounds great in theory, but I can tell your firsthand that when you're on the receiving end of a bad deal and being overworked, your motivation tanks regardless of your moral compass.  Unmotivated developers or designers are bad news for you and the quality of work is not going to be what it should be.

Overestimated project cost - This comes from someone who has been jaded by continuously trying to provide accurate costs only to be hit by more and more surprises.  Eventually the firm has to start accounting for unknown problems and overestimate the cost in all areas.  As a client this isn't any good for you either since you're paying for potential problems that might not even be there.

Changes to scope

The best case with a fixed cost project is you spend hours determining cost, create an airtight contract with all the tiniest details and now you've both wasted an extra day fleshing out project details.  But I've yet to encounter a project that didn't have some changes or additions.  

Either you have a stipulation in the contract that allows this (which will almost definitely get taken advantage of) or you redraw another contract for the changes and the process beings again.

Why are people afraid of hourly rate projects?

We all know that we should get paid for the amount of work we done and can conceptually understand that hourly rates make sense.  The reason people shy away from hourly rates comes down to trust.  Starting with any new developer or firm comes with this risk and it really is a leap of faith.

So what can be done to remedy this a bit?  I'm not sure that anything will completely get rid of the initial fear here, but this fear seems to entirely dissipate after a week or two of working together.  I find providing weekly updates of our hours and tasks accomplished helps in the beginning.

Another possible solution is setting hourly caps or milestones.  This gives a safe stopping point for the client to evaluate and make sure the budget is on track.  

At Echo 5

We've moved away from fixed pricing altogether and it has been a great decision for both us and our clients.  We still provide estimates and (pending scope changes) usually get within 10% of this estimate when all is said and done, which seems to keep our clients pretty happy.