Skip to main content

Charging Hourly Vs. Fixed Price

Charging Hourly Vs. Fixed Price

Unlike most of the freelancers I meet, I started my freelance career charging by the hour. The CTO of the company, now one of my best friends, carefully watched my deliverables and my bills to make sure they matched his expectations. Knowing this was my first gig, he explained to me that the company was buying my expertise.

He encouraged me to charge, and charge well, when I knew what I was doing and was kicking butt. He also insisted that I learn on my own dollar and not penalize my client for any lack of productivity. Basically, even though we had agreed upon an hourly rate, he made it very clear he was paying for the end product, not all the time I may have been spending.

There are fundamentally two payment structures used by freelancers in today’s market:

Hourly is the exchange of a productive hour of expert work for an hourly rate. For $xx per hour, I will provide you the technical expertise you need to develop the API for this prototype.

Fixed price is the exchange of a pre-defined amount of work for a specific total dollar value. For $xx,xxx I will provide your company a new brand including colors, typeface, logo, business cards, store sign and letterhead.

Both approaches are common and each has their appropriate place and time. What fascinates me is the intense emotion that we often see (even among ourselves) regarding which to choose. So what are the pro’s and cons, how do you choose and how do you price yourself once you do?


You are charging a specific dollar amount for each hour of solid progress towards a deliverable. Your client knows you are an expert on the subject. They have agreed to pay your rate for support on their endeavor.


Before we get any further, let me address some of the misconceptions I commonly hear.

Charging by the hour means there is no accountability on the freelancer’s part, nor planning or a general budget. A good project manager always has a target budget and the goal to keep within it. If you expect any repeat business, you are just as liable for the end budget as the project manager. You need to be in constant communication working with them to manage expectations so that they can do their job well.

Honestly, if you were to pick only one goal, it should be to help make your client’s project manager a hero. The better they look, the happier they are with you and the more they will use your services and refer you in the future.

Charging by the hour means you expense each and every minute you work. The client is paying for progress on a solution to their problem. They are not paying for you. You do not bill the time it takes you to invoice them. You do not bill time you spent researching the web for ideas. You do not bill for each and every meeting. Often, you do not bill for the egregious direction you took which lost 4 hours of progress on the new module.

These are the costs of being in business. You need to make sure that you build the cost of doing business into your rate. Be careful or you can end up working for pennies on the dollar.

Hourly is unfair to the client. This is completely false. Take the following three points into consideration:

1) Over 90% of our projects are completed well under budget.

2) If the ultimate liability for the cost of the project is not in our court, we do not have to pad our rate to cover for the unexpected.

3) Managing feature creep in a fixed rate project makes us guard the sanctity of the spec and resist change. If they are getting a better rate, more flexibility and perhaps even a lower price, then it is often to the client’s advantage to have us charge hourly. Virtually all of our hourly projects have been a win for our clients.

Many contractors fear that with an hourly budget, they will be fighting the urge to bill more. Many clients are afraid to get gouged. The risk is certainly there. Let me ask you – are you in business to rip someone off? If you intend to make this a career and run a successful company, you need to remember that all that matters is your reputation. Success = happy client. If you keep that in mind when you write your invoice and balance both sets of expectations, then everyone tends to be happy.

Pro’s of Charging Hourly

  • Get paid for most of the work you do / Lower financial risk on your part
  • Client is more aware of the correlation between their requests / changes and the cost
  • Less resistance on both sides to technical and direction changes
  • Less resistance from you on timeline changes
  • Less likely you get burned

Con’s of Charging Hourly

  • Income level is unclear
  • Tougher to plan forward
  • Increased possibility for budget miscommunications
  • Leverage of past work has less impact on your profitability

Selecting a Rate

Your hourly rate should be based upon the quality of your work, the industry you are in, and your cost of living. Make sure you take into account the fact that you will never bill all your time. Freelance Switch has a great rate calculator to help you determine what your rate should be based upon industry, environmental and personal factors. For more on pricing yourself, check out are you working for free?

When to Charge Hourly

  • Developing a clear spec is not possible: vague deliverables such as prototypes
  • Working in a volatile environment, such as developing on Facebook whose API is in constant flux
  • Retainers for clients that want to lock down your availability
  • Clients that have a history of making a lot of changes and need flexibility

Fixed Bid

You are charging a set amount of money for a clearly defined set of services. The key to a successful fixed bid is the clarity and accuracy of the specifications document, called a spec in the industry. The more clear you are with a spec, the higher the odds that you’ll make a profit.


You don’t need to track your time on a fixed bid. A fixed bid is built upon an hourly rate applied to your spec sheet. You write out an exact list of deliverables: this piece of code, that piece of design. Then you make a guestimate on how long each piece will take. Once that’s done, many contractors go along their merry way and complete the project without ever asking themselves one critical question: how well did I guess? Or even worse, they don’t know their hourly rate at all.

The only way to know your level of success or failure is if you track your time and compare it to your estimates. With that information you can learn, grow and improve towards a more profitable business. Our first few fixed bids ended with us working a $12/hr in one case and paying the client $15,000 to build their application in another. I am serious when I keep repeating that tracking your time is not optional.

A fixed bid makes for easier client relationships. Clients want their problems solved as efficiently and economically as possible. If you bid accurately and the client actually knows what they want (and doesn’t change anything), then fixed bids go very smoothly. Often that is not the case, and nothing generates more frustration than feeling like you are being taken advantage of.

With a bid gone wrong, both you and the customer feel that sense of apprehension. Freelancers need to be more than technicians. They need to understand how to work with people and get the spec that actually solves the issue. Frankly, most of us should be spending 2 – 3 times longer on our bids than we do.

Be extremely careful with technologies you are not totally familiar with – we’ve been burned to the tune of $10k+ a few times when exploring new terrain. Our fault, but it hurts. If you are using subcontractors to fill some holes, make sure they are part of the bidding process and you are not guessing. Just like you are being held accountable to your estimate, they should be as well. Guessing is bad. The more data you have, hence tracking you time, the more accurately you can estimate the true cost of a bid. The more accurate your bid, the less conflict you will need to work through during the project.

Fixed is fixed. After getting the fixed bid as accurate as possible, you then need to control for feature creep. Feature creep is the never ending series of requests for one little idea after another to get added in. A few minor changes are acceptable, but many clients will keep pushing until you push back.

That act of having to constantly push back can be quite stressful on the relationship and needs to be handled early and artfully. The key here is the power of the word “Which,” a word deserving of its own blog post.

“Which way would you prefer: to have the new feature you just explained or this feature that was in the spec? Your budget only allows for one.” If they say both, ask for more money. If they refuse, put on your biggest smile and while gently chuckling say, “Are you asking me to work for free?”

The art of negotiation continues through the entire project. While many contractors don’t mind working for free while trying to build their reputation, this cannot last forever. Once you get to the point where you are rejecting work, the idea of working for free for anyone leaves a sour taste in your mouth and can ruin a relationship. We are talking from experience.

Pro’s Of Charging a Fixed Price

  • Income clearly defined
  • Working from a highly detailed spec
  • Easier to manage your resources
  • Simpler to ask for money up front
  • Increase profitability through the use of assets (code libraries etc…)

Con’s Of Charging a Fixed Price

  • You take on all financial risk
  • Timeline and technical changes are not usually in your favor
  • More likely you get burned

Setting your Price

Get the following together: 1) your spec, 2) your estimated time to completion, 3) the list of assets you plan to capitalize upon and if you work with subcontractors, 4) your team’s cost and availability. All these will need to be taken into account. Don’t forget to include project management, meetings, quality assurance and testing, deployment, customer service and any other services that you may be responsible for, but have not detailed out in your spec and time to completion.

Once you have a true number of hours, figure out your reserve or buffer. The purpose of this is to cover you in the case of the inevitable changes and surprises that happen during projects. Sometimes things take longer than planned. A brilliant solution turns out to be wrong. You know how it goes. I tend to add a buffer around 30% of the project time, higher for extremely complex projects, to the total hours. Take your total and multiple it by your hourly billable rate. Check the number over and ask yourself if it seems reasonable.

I’ve often found our estimates to be pretty accurate. If the client freaks out, carefully explain it to them. There are good reasons to lower your price, but understand that almost every time we’ve done that, we’ve ended up losing money.

Good reasons to lower your price might include gaining a high profile client, market exposure, or gaining a new asset you can reuse. I often ask myself: Is this client and project going to help us get closer to the goals in our business plan (you have a business plan, right?)? If the answer is a resounding “yes”, then I am more willing to negotiate.

When to Charge Fixed Price

  • The project is easily defined and a clear spec is available
  • The project requirements are stable and not subject to much change
  • When you have a lot of assets (code library etc) that can be applied to increase profitability
  • When you are highly confident you can drive a good profit based upon your spec

Picking the right one for your project

The one true difference between a fixed price and an hourly project is which party accepts ultimate liability for the budget. It all boils down to that. There is one question I ask every time we approach a new project: how confident am I that we can drive a good profit? If I am not confident, I will insist on hourly and that the client take on the risk. If I am confident, then I will work with a fixed price.

Whether it is an hourly or a fixed price gig, we have a spec we are working from. We track our time. We warn the clients about changes and how they will affect budget. We keep a careful eye on the problem we are trying to solve. The fact is, the difference between the two when run by a seasoned business owner is minimal.

I’d love to hear in the comments what criteria you use when you decide which way to go!

I’d like to thank Brandon, Tea, Eric, and D.L. for their discussion on the topic.