How to Price a Fixed-Fee Project Without Underquoting
Updated 2026-11-13
Fixed-fee pricing is attractive to clients because they know the cost up front, and it can be attractive to you because efficient work is rewarded instead of penalised. The risk is that every surprise comes out of your pocket. This guide shows a repeatable way to build a quote that protects you.
Try the free Project Quote Calculator to build a quote as you read.
Start from your hourly floor
Before you quote anything, know the minimum hourly rate that keeps your business viable. If you have not worked it out, follow our freelance hourly rate guide. A fixed price is still built on time: it just packages that time so the client does not have to watch the clock.
Break the work into tasks
Estimating "a website" is guesswork. Estimating "a homepage layout, five inner pages, a contact form and two rounds of revisions" is much easier. Write each task down and estimate it separately. Include the parts people forget:
- Kick-off call and discovery
- Project management and status updates
- Revisions and feedback rounds
- Testing, file preparation and hand-over
- Post-launch questions
If you have done similar work before, look at how long it actually took last time. Time-tracking records are the single best tool for better estimates.
Add a contingency buffer
Every project has unknowns: slow feedback, unclear content, a technical surprise. A contingency buffer is a percentage you add on top of the estimate to absorb them. A common range is 10% to 25%, depending on how well-defined the work is:
| Situation | Typical buffer |
|---|---|
| Repeat work you know well | 10% |
| New client, clear brief | 15% |
| Vague brief or new type of work | 20–25% |
If a project seems to need more than 25%, the scope is probably not clear enough to quote at a fixed price yet. Consider a paid discovery phase first.
Add expenses you pay on the client's behalf
Stock photos, fonts, plugins, printing or travel should be listed separately, either passed through at cost or included in the fixed price. Being explicit avoids awkward conversations later.
Do the maths
- Labour = estimated hours × your hourly rate
- Buffer = labour × contingency %
- Project total = labour + buffer + expenses
- Deposit = project total × deposit %
Worked example
You estimate 32 hours for a brand identity project at 65 per hour, with a 15% buffer, 120 in font licences, and a 40% deposit.
- Labour: 32 × 65 = 2,080
- Buffer: 2,080 × 15% = 312
- Total: 2,080 + 312 + 120 = 2,512
- Deposit: 2,512 × 40% = 1,004.80
Write the scope down
The quote is only as good as its scope. State clearly:
- What is included (deliverables, number of revisions, formats)
- What is not included
- How extra work will be priced (often your hourly rate)
- Payment schedule and due dates
- What happens if the client delays feedback for weeks
This is not about being difficult. Clear scope protects the relationship because nobody is surprised.
Ask for a deposit
A deposit (commonly 25% to 50%) confirms the client is committed and covers your early work. For longer projects, use milestone payments so you are never owed a large amount at once.
Review after every project
Compare your estimate with the hours you actually spent. If you are consistently over, increase your buffer or your task estimates. This feedback loop is what turns fixed-fee pricing from a gamble into a profitable habit.
Key takeaways
Break work into tasks, estimate each one, add a buffer that matches the uncertainty, list expenses, and agree a written scope with a deposit. Then learn from every project so the next quote is better.
General information only, not legal or financial advice.