A project quote is the document that turns "can you build this for me?" into an agreement. A good one protects both sides: the client knows what they are paying for, and you know exactly what you promised. A bad one is a single number in a message, and it is the root of most disputes about scope, revisions and payment.
This guide shows how to build a quote step by step, walks through a full worked example in dollars, and ends with a template you can copy and adapt.
Before you think about price, make sure you can describe the project in a few sentences without guessing. Ask what the client needs, who it is for, what they already have (text, images, logo), and what "done" looks like. If the answers are vague, that vagueness will turn into extra work later, so either clarify it now or price the uncertainty in.
Do not estimate a whole project in one lump. List every task from first call to final handover and estimate each separately. Small tasks are much easier to estimate honestly than a big, fuzzy one, and people tend to forget the invisible ones: client communication, gathering content, testing, deployment, and handover.
Estimate each task in hours, then total them. Almost every project takes longer than the raw estimate because of extra feedback, small changes and unexpected problems. A contingency buffer, commonly in the range of 10-20%, is a standard way to absorb that. Choose a higher number when the client is new to you or the scope is loosely defined.
Price = (hours × your hourly rate) + contingency buffer + any flat costs
If you do not yet have a reliable hourly rate, work it out first with our Freelance Rate Calculator, or read how to set a rate in India. The Project Price tab on the calculator also applies the buffer for you.
Project: a five-page website for a small local business. Hourly rate: $50. Contingency buffer: 15%.
| Task | Estimated hours |
|---|---|
| Discovery call and content gathering | 4 |
| Page layout and design | 8 |
| Building the five pages | 14 |
| Contact form and basic search setup | 3 |
| Testing on phone and desktop, fixes | 3 |
| Two rounds of revisions | 4 |
| Deployment and handover | 2 |
| Total | 38 hours |
| Calculation | Amount |
|---|---|
| Base cost: 38 hours × $50 | $1,900 |
| Contingency buffer: 15% of $1,900 | $285 |
| Flat costs (client pays domain and hosting directly) | $0 |
| Total | $2,185 |
| Quoted price (rounded up) | $2,200 |
A common payment structure is to take part of the fee before starting and the rest on delivery. In this example that would be $1,100 as a deposit and $1,100 on delivery.
Suppose the project takes 44 hours instead of 38 because of extra feedback. With the buffer, $2,200 ÷ 44 hours is exactly $50 an hour, which is still your target rate. Without the buffer, $1,900 ÷ 44 hours is about $43 an hour, so you would quietly lose about 14% of your planned rate. The buffer is not padding; it is insurance for the part of the work nobody can predict.
Most quote disputes are really arguments about revisions. State how many rounds are included (two is common), define what counts as a revision, and say that anything outside the listed deliverables is a change request billed separately at your hourly rate, agreed in writing before you start it. This protects your margin and keeps the relationship friendly, because the rule was agreed before there was any friction.
Many freelancers take a deposit before starting, often a third to a half of the total, with the rest due on delivery or in milestones for longer projects. The exact split is your choice, but it should be written in the quote. Also add a validity date, for example 14 days, so a price you calculated today does not bind you forever.
Replace everything in square brackets. Keep it to one page where you can.
PROJECT QUOTE Prepared for: [Client name] Prepared by: [Your name] Date: [Date] Valid until: [Date, for example 14 days from now] 1. PROJECT SUMMARY [One or two sentences describing what you will deliver and why.] 2. DELIVERABLES (INCLUDED) - [Deliverable 1] - [Deliverable 2] - [Deliverable 3] 3. NOT INCLUDED - [For example: logo design, written content, photography] - [For example: domain and hosting fees] 4. TIMELINE Estimated delivery: [number] working days after I receive the deposit and all content needed from you. 5. PRICE [Item or phase 1] ....... [amount] [Item or phase 2] ....... [amount] [Contingency / buffer] .. [amount] TOTAL ................... [amount] 6. REVISIONS AND CHANGES [Number] rounds of revisions are included. Work outside the deliverables above is a change request, billed at [rate] per hour after we both agree in writing. 7. PAYMENT TERMS [Percentage] deposit before work starts. Remaining [percentage] on delivery. Payment method: [bank transfer / PayPal / other]. 8. ACCEPTANCE Reply "Approved" by email, or sign below, to accept this quote.
What if the client says my quote is too high?
Before lowering the price, offer a smaller scope: remove a page, a feature, or a revision round. Cutting the rate while keeping the same work means you quietly work for less. Reducing scope keeps your rate intact.
Should I show my hourly rate in the quote?
For a fixed price, you do not have to. Showing a breakdown by phase is usually enough, and you only need the hourly rate in the quote for change requests.
How detailed should the quote be?
Detailed enough that someone who was not on the call could tell what is included and what is not. For most small projects that is one page.
Do I need to add tax to the quote?
It depends on your registration status and income. This site cannot give tax advice, so ask a qualified chartered accountant how to show taxes on your invoices and quotes.
Is a quote legally binding?
That depends on how it is accepted and where you are. If the project is large, consider a short written contract and get professional advice. This page is not legal advice.
A good quote is simple: a clear scope, tasks estimated one by one, a buffer for what you cannot predict, firm rules for revisions, and written payment terms. Build it from your own hourly rate, keep the language plain, and use the template above as a starting point. If you are still deciding between hourly and fixed pricing for a given job, read our comparison of hourly vs. project-based pricing.
Turn your hourly rate into a quote with the buffer built in:
Use the Project Price Calculator