Should Freelancers Charge Fixed-Price or Hourly?

Have you ever undercharged a client? Have you ever had a client complain that you’re overcharging them?

These sorts of disputes are common in the freelance world. Many come down to one simple mistake: charging a fixed price when you should be charging an hourly rate, or vice-versa. The choice should be made for each individual project and based on several variables.

With this in mind, I ran a poll to find out what freelancers prefer and why. I spoke to some of the respondents in the comments and in private messages to understand their choice.

Here are the takeaways of these conversations, combined with my own experience as a freelancer.

Fixed-price is more popular

Out of the 144 respondents, 87 prefer to charge a fixed price, while 57 opt for hourly. In my opinion, this likely has to do with the average size of the projects that people do. There are far more developers and designers who take on small, easily defined jobs (landing pages, WordPress sites, logo design, and so on) than those who take on big, open-ended types of jobs (complex applications, games, enterprise software).

In my career, I started with doing mostly fixed-price projects, but then naturally drifted towards charging per hour as I progressed to more challenging, long-term work.

Freelancers who charge hourly are less open about it

Even though 40% of freelancers prefer hourly rates, they are only responsible for 20% of the comments explaining why. When I asked why, someone stated an opinion that people who charge hourly rates are quiet because they are more likely to overcharge, or even cheat, their clients.

I take exception to that because I prefer charging per hour on most of my projects. However, my perspective may be skewed because nearly all my projects in the last 3 years have spanned 6+ months. Good luck estimating a fixed price for that. The one small project I did in this period took a few days, and I charged a fixed price.

I’m sure there are hustlers out there. Still, I doubt that there are many and I doubt that this benefits them as a long-term strategy.

Balancing risk and trust

Some respondents have suggested that it’s prudent to strike a balance: charge a fixed price on your first job for each client and then switch to hourly once trust is built. One respondent compared a fixed price to guardrails.v

On the other hand, if you charge a fixed price, you have to be the trusting party in the exchange. You are trusting the client to define the tasks well and to not make too many changes as you go along.

Fixed-price problems

One commenter said that pay should be based on the value of results desired, not time invested by the programmer. But, as another said, scope creep can ruin you if you take this approach.

This sums up the problem of fixed-price projects:

  1. It is difficult to properly estimate projects even if they are perfectly defined.
  2. They are often not perfectly defined.
  3. The definition often changes as the project progresses.
  4. The bigger the job, the bigger the problems.

A lot depends on the client. If they are unsure of what they want to build and prone to making changes on the go, it creates a situation where you have to determine a price for something without any possibility of estimating correctly how big that something is.

One way to solve this is to calculate the time based on your experience and then name a price at least twice as high. This mitigates some risk but also decreases your chances of being hired in the first place.

Hourly rate problems

On the other hand, hourly rate projects are financially more safe for the freelancer. This is great until you consider that it means they are less safe for the client and that the client is the one paying you.

The problem here is, in a way, the opposite of scope creep: cost creep. Rising costs can make clients uneasy and suspicious, or even combative. Our estimates are often wrong and this is dangerous for clients that have a limited budget. With all their money spent and only half of the work done, what can they do but get frustrated with you?

As one respondent said, hourly work is low-risk for the freelancer. This is true but, on small projects, the risk of a fixed-price contract should be weighed against the risk of running into a conflict with the client. For beginner freelancers on freelance platforms, it may be wise to take on the risk of overworking yourself for a small fee rather than the risk of antagonizing the client and getting a poor review.


There is an overarching impression that clients tend to lose trust on hourly projects, especially when they run long, and especially if they haven’t worked with the freelancer before.

I haven’t had any bad experiences of this nature in nine years of freelancing, but it makes perfect sense for low-budget clients and clients of certain personality types. It is prudent to actively avoid those types of clients altogether rather than adapt to a distrusting relationship.

The bigger the project, the more scope changes and new requests there will be. This isn’t a bug in the client-freelancer relationship, it’s a feature — it allows the client to adapt dynamically. For this to happen, the freelancer needs to be in a position to make the changes without fretting and renegotiating.

My conclusion is, therefore, that time-based pay is superior for long-term projects, but that fixed-price contracts are a useful tool for building trust and experience.

Don't miss the next blog post!

I publish a new blog post every Wednesday. Join the newsletter to get:

  • One valuable email a week.
  • Zero spam.
  • Exclusive content not found in the blog.
  • Reply directly to me with questions or feedback.

Use the form at the bottom of this pageon the right to join the newsletter.

Read more: