I’ve done more than 35 freelancing projects on Upwork, over almost 3 years.
In terms of payment, projects on Upwork can be structured as either:
- Hourly — client pays you by the hour
- Fixed-price — client pays you as a lump sum, either by “milestone” or when the whole project is done
I’ve done lots of both, but one thing I’ve always wondered is: which ends up working out better for the freelancer in the end?
Fixed price projects have their benefits, but here’s why I think hourly is better.
It always ends up taking more work and time than you expect
This is the biggest one for me and essentially it boils down to three things:
- Over-confidence or “devil’s in the details” — over-estimating our own knowledge, skills and/or foresight, or under-estimating the work required
- Ambiguity — clients not being super clear about their requirements from the beginning
- Moving target — clients changing their requirements during or at the end of the project
This is the nature of building anything — there’s always something that throws a wrench in the works, and makes it harder than you originally thought.
You can clarify the scope with the client until you’re both blue in the face, but it’s almost never the case that the client knows exactly what they want down to every last detail from the beginning.
If a certain detail that you didn’t account for ends up being a massive rabbit hole or side tangent, this will blow up the neat and careful “hours estimate” calculation you did to determine if the budget was worth it.
And beyond that — clients love to make tweaks, adjustments and new requests at the last minute.
With an hourly project, you’re getting paid for all of this. With fixed-price, clients will usually balk at requests for additional budget, so in most cases you’ll be doing this extra work without getting paid for it.
Longer-term engagements
As a freelancer, the ideal situation (in my opinion) is to have a client that gives you steady, consistent work over a long period of time.
This has several benefits:
- It helps you avoid the “feast or famine” issue that so many freelancers run into
- It helps you make sure you have steady income coming in
- Clients that work with you longer term are more likely to remember you, write reviews for you, and give you referrals
Fixed-price contracts almost never work like this.
Usually with fixed-price, once you’ve completed the project and gotten paid, you’re pretty much done. A lot of this boils down to psychology:
With fixed-price, if the client wants to work with you more, they need to create a new project or milestone on Upwork. But with hourly, you can just keep working, and the client simply needs to approve and pay for the hours you worked.
So, hourly is much lower friction for the client, and gives them less opportunity to balk at the additional cost, so usually they just go along with it.
With fixed-price, you’ll have to do more convincing to get the client to extend the project.
Less client sticker shock
This is related to the psychology I mentioned above, but here we’re talking specifically about pricing psychology.
I’ve had hourly projects that have netted me upwards of $15k, over a long term engagement.
Can you imagine how the client would have reacted to my initial proposal if I said:
I can do it for $15,000
Of course they would have balked at that amount (or just silently moved on and chose a different freelancer), and I don’t blame them. Large lump sums look daunting and cause sticker shock.
But if you say “I can do it for $100/hr,” the effect of sticker shock is much lower. And if you work for them consistently for 6 months, the 150 hours to reach $15k is only ~6 hours per week.
It’s a bit like payment plans and financing — people tend to be much more willing to pay smaller amounts spread over time, even if the total ends up being more.
Don’t try to fight this — instead, use this to your advantage as a freelancer and try to find jobs that pay a good hourly rate and preferably a steady, long-term stream of work.
The one caveat
One caveat is fixed-price projects can be a great way to differentiate against competitors if the client is risk sensitive.
What I mean is, certain clients are more concerned about the variability of the cost than they are about the total amount — they want to avoid ambiguity.
If you are talking to a client for an hourly job and notice they are like this (for example, they keep asking you about your hours estimate, or they sound suspicious or concerned about it), you can offer fixed-price as an alternative to “sweeten the deal” and land the job.
This has worked for me in the past, and the main benefit here is that you’re differentiating from the competition by offering something that most other freelancers never thought of.
Just exercise caution and make sure you’re super clear with the client about the scope, and try to build in some “cushion” in your quote in case things go awry. This will help mitigate some of the traps I mentioned above with fixed-price contracts.
Conclusion
Overall, I’d suggest sticking to hourly contracts as much as possible, especially at first when you’re still learning and are not as sure about how projects will go.
Hourly engagements offer lower risk, longer-term engagements, and better overall pay for freelancers over the long term — and clients tend to prefer them too.