Free Web Developer
Contract Template
A clear freelance web development agreement covering project scope, milestones, payment schedule, IP ownership and revision policy. Download and send in minutes.
- No signup required
- Free forever
- Reviewed June 2026
- Jurisdiction-neutral
Branding (optional)
1 — Developer
2 — Client
3 — Project
4 — Fees
5 — Revisions & Terms
PDF: choose "Save as PDF" in the dialog that opens.
Freelance Web Development Contract
Date: enter date above
1. Agreement Parties
This Contract is entered into as of enter date above between Developer name ("Developer"), and Client name ("Client").
2. Project Scope and Deliverables
Project: project name
Description: project description
Start date: start date | Deadline: completion deadline
3. Fees and Payment Schedule
Fee: USD ($) amount (fixed project fee)
Deposit: 50% due on signing. Remaining balance due on project completion before final files are delivered.
4. Revisions and Change Requests
2 rounds of revisions included. Additional revisions billed at USD ($) rate. Changes to scope are treated as new work and quoted separately.
5–9. Standard Clauses
Technical specs & warranties · IP ownership (transfers on final payment) · Client responsibilities · Limitation of liability · Termination
10. Governing Law
Governed by the laws of governing jurisdiction.
Developer
Signature
Print name: _______________
Title: _______________
Date: _________________
Client
Signature
Print name: _______________
Date: _________________
Template preview
Parties
1. Agreement Parties
This Freelance Web Development Contract ("Agreement") is entered into as of [Date] between [Developer Full Name], trading as [Business Name] ("Developer"), and [Client Full Name], [Company Name] ("Client").
Project Scope
2. Project Scope and Deliverables
The Developer agrees to design and develop [Project Name] as described below.
Project description: [e.g. A 5-page responsive WordPress website including: Home, About, Services, Blog and Contact. Includes mobile-responsive layout, contact form integration, on-page SEO setup and one round of content population from materials supplied by the Client.]
Not included in scope: [e.g. Copywriting, photography, ongoing maintenance, third-party plugin licences, domain registration, hosting fees — unless separately agreed in writing.]
Start date: [Date] | Completion deadline: [Date, subject to timely receipt of all Client materials]
Milestones
3. Milestones and Approval
The project will be delivered in the following milestones:
[Milestone 1: Wireframes and design mockups — [Date] — Client approval required before proceeding]
[Milestone 2: Development build (staging environment) — [Date] — Client review and feedback]
[Milestone 3: Final delivery and launch — [Date]]
If the Client does not provide feedback within [e.g. 7 business days] of a milestone delivery, the milestone is deemed approved and the Developer may proceed.
Payment
4. Fees and Payment Schedule
Total project fee: [Currency + Amount] ([fixed price / hourly rate of [Amount]/hr, estimated [X] hours]).
Deposit: [e.g. 50%] of the total fee is due upon signing. Work will not begin until the deposit is received.
Balance: Remaining balance is due on project completion, before final files and logins are transferred to the Client.
Invoices not paid within [e.g. 14 days] of the due date may incur a late payment fee of [e.g. 1.5% per month]. Accepted payment methods: [bank transfer / PayPal / Stripe / other].
📄 Download the full template — includes revisions policy, IP ownership, client responsibilities, limitation of liability and termination clause.
Download the full template — free
Fill in your details above and download a ready-to-send contract.
What's included in this template
How to use this template
Define the scope before you fill in anything else
The scope clause is the most important clause in a web development contract. List exactly what is included (number of pages, specific features, CMS, integrations) and explicitly state what is not included (copywriting, hosting, ongoing maintenance). Be more specific than you think you need to be — disputes almost always come from vague scope, not pricing.
Set milestones, not just a final deadline
Break the project into 2–3 milestones with individual deadlines and approval gates. This protects you from clients who go silent mid-project, and it ties payment to progress — making it easier to stop work if a payment is missed without completing the entire project first.
Specify your revision policy as a number, not a feeling
Do not write "reasonable revisions" or "minor changes" — these are unenforceable. Write "2 rounds of revisions per milestone". A revision round = one consolidated list of changes. If a client sends changes in batches, each batch counts as one round. This single clause will save you more time than any other.
Collect the deposit before you start — every time
The deposit is not a courtesy — it is what converts a verbal agreement into a binding contract and compensates you for turning away other work. Send the contract and the deposit invoice together. Do not begin work until both are received. Use Bonsai to collect signature and payment in one step.
Frequently asked questions
- A web developer contract should include: both parties' names and contact details, a clearly defined project scope (what is included and what is not), milestones and delivery dates, the fee and payment schedule, a revision and change request policy, IP ownership (code transfers to client upon final payment), client responsibilities, a limitation of liability clause, and termination terms. This template covers all 10 clauses in plain, editable language.
- Yes — every project, every time. Without a contract, you have no documented agreement on scope, timeline, payment, or who owns the code. Scope creep — clients adding features without paying for them — is the single most common dispute in web development and is almost impossible to resolve without a written contract. Even a short project needs a contract; the few minutes it takes to send one is nothing compared to an unpaid invoice dispute.
- By default, the developer who writes the code owns the copyright. Ownership only transfers to the client when explicitly stated in the contract. This template includes an IP clause that transfers all intellectual property rights in the custom deliverables to the client upon receipt of final payment in full. The developer retains the right to display the work in their portfolio. Third-party components — WordPress themes, plugins, stock libraries — remain subject to their own licences and are not transferable beyond what those licences allow.
- A kill fee is a payment the client owes if they cancel the project early. This contract's termination clause requires the client to pay for all work completed to date plus a cancellation fee. The kill fee compensates the developer for blocked calendar time and sunk costs. Set your kill fee at 20–50% of the remaining project balance — the exact percentage is a placeholder you can adjust to match your business policy.
- Two rounds of revisions per milestone is the most common standard for freelance web developers. A revision round means one consolidated list of changes submitted at once — not a series of individual requests. Specify in the contract that changes outside the original scope are treated as new work and quoted separately. Never write "minor" or "reasonable" revisions — these are subjective and unenforceable. Use a number.
- If you have a signed contract and have met your obligations, a client refusing to pay is in breach of contract. This template protects you in three ways: the deposit is due before work begins; milestone payments are tied to delivery; and the IP clause means copyright only transfers upon receipt of final payment — so until the client pays, you own the code and they cannot legally use it. Keep all communications in writing and document every deliverable you send.
Bonsai lets freelance developers send a contract, collect a signature and receive the deposit payment — all before writing a single line of code.