Web Development Contract Template

Web development contract template: Technical specs & code ownership

A 15-section web development agreement covering technical specs, browser support, payment, code ownership, hosting, testing, post-launch support, third-party services and governing law. Download it as a Word file or copy the clauses below. A separate e-commerce version is further down the page.

Get the editable contract

Download the Word file and replace every [bracket], or copy the clauses below. The .docx opens in Microsoft Word, Google Docs, Apple Pages and LibreOffice.

Not legal advice. Contract law differs by country and state, so have a qualified lawyer where you and your client are based review the final version before you sign it.

Contract template

1. Parties & agreement

Names the developer or agency and the client.

This Web Development Services Agreement ("Agreement") is entered into as of [DATE]:
Developer: [YOUR NAME/COMPANY], located at [ADDRESS] ("Developer")
Client: [CLIENT NAME/COMPANY], located at [ADDRESS] ("Client")
This Agreement governs the development of the website/application described below.

2. Project scope & technical specifications

Records the stack, features, pages, integrations and performance requirements that acceptance is measured against.

Project: [PROJECT NAME/DESCRIPTION]
Technology Stack:
  - Frontend: [FRAMEWORK/LIBRARY]
  - Backend: [FRAMEWORK/LANGUAGE]
  - Database: [DATABASE TYPE]
  - Hosting: [HOSTING REQUIREMENTS]
Features & Functionality:
  - [FEATURE 1 - detailed description]
  - [FEATURE 2 - detailed description]
  - [FEATURE 3 - detailed description]
Pages/Screens: [NUMBER] pages including [LIST KEY PAGES]
Third-Party Integrations: [LIST INTEGRATIONS]
Performance Requirements: [LOAD TIME, UPTIME, etc.]

3. Browser & device compatibility

Lists the browsers, versions and breakpoints that will be tested. Older browsers are an add-on.

Browser Support:
  - Chrome: Latest 2 versions
  - Firefox: Latest 2 versions
  - Safari: Latest 2 versions
  - Edge: Latest 2 versions
  - Mobile: iOS Safari and Chrome Android (latest versions)
Responsive Breakpoints: [MOBILE, TABLET, DESKTOP WIDTHS]
Testing: Developer will test on specified browsers/devices
Older browser support available as optional add-on service

4. Development process & timeline

Sets four phases with deliverables, and makes the timeline depend on the client's feedback window.

Phase 1 - Planning & Design: [X] weeks
  - Deliverables: Wireframes, design mockups, technical architecture
Phase 2 - Development: [X] weeks
  - Deliverables: Functional development environment, core features
Phase 3 - Testing & Refinement: [X] weeks
  - Deliverables: Bug fixes, performance optimization
Phase 4 - Launch: [X] weeks
  - Deliverables: Production deployment, documentation
Total Timeline: [X] weeks from project start
Timeline assumes Client provides feedback within [X] business days

5. Payment terms

Splits the fee 40/30/20/10 across signing, development, testing and launch acceptance.

Total Project Fee: $[AMOUNT]
Payment Schedule:
  - 40% ($[AMOUNT]) due upon signing (before work begins)
  - 30% ($[AMOUNT]) due upon completion of Phase 2
  - 20% ($[AMOUNT]) due upon completion of Phase 3
  - 10% ($[AMOUNT]) due upon launch acceptance
Payment Terms: Net [X] days from invoice
Late Payment: [X]% monthly fee after [X] day grace period

6. Code ownership & intellectual property

Gives the client the custom code on final payment, keeps pre-existing code and tools with the developer under a licence, and leaves third-party code under its own licence.

Upon final payment, Client receives ownership of custom code developed for this project
Until final payment, all code remains Developer's property
Developer retains ownership of:
  - Pre-existing code libraries and frameworks
  - Developer tools and methodologies
  - General programming techniques and knowledge
Third-party libraries: Licensed per their respective licenses
Developer grants Client license to use any pre-existing code incorporated in deliverables

7. Hosting & deployment

Choose Option A (developer hosts for a fee) or Option B (client hosts), and set the deployment process.

[OPTION A - Developer Provides Hosting]:
  - Developer will set up and manage hosting for [X] months
  - Hosting fee: $[AMOUNT]/month (separate from development fee)
[OPTION B - Client Provides Hosting]:
  - Client will provide hosting environment meeting [SPECIFICATIONS]
  - Developer will deploy to Client's hosting
Deployment Process:
  - Staging environment for testing
  - Production deployment upon approval
  - [X] deployment attempts included, additional deployments: $[RATE]

8. Testing & acceptance

Gives the client a testing window, classifies bugs and accepts the build once critical and major bugs are fixed.

Acceptance Testing:
  - Developer will conduct internal testing before delivery
  - Client will have [X] business days to test and report issues
Bug Classification:
  - Critical: Site unusable, data loss, security issues
  - Major: Significant functionality broken
  - Minor: Cosmetic issues, small bugs
Acceptance Criteria: All critical and major bugs resolved
Minor bugs may be deferred to post-launch support period

9. Post-launch support & maintenance

Sets a free bug-fix period after launch and lists what it does not cover.

Warranty Period: [X] days from launch date
During warranty, Developer will fix bugs related to delivered functionality at no charge
NOT Covered (available as paid maintenance):
  - New features or functionality changes
  - Content updates or changes
  - Third-party service issues or API changes
  - Client modifications or third-party additions
  - Hosting or server configuration issues
After warranty: Maintenance available at $[RATE]/hour or monthly retainer

10. Third-party services & limitations

Lists third-party services and puts their outages and API changes outside the developer's responsibility.

Third-Party Services:
  - [LIST THIRD-PARTY SERVICES/APIS]
Developer will integrate third-party services per their documentation
Developer not responsible for:
  - Third-party service outages or downtime
  - Changes to third-party APIs or services
  - Third-party service limitations or restrictions
Client acknowledges that third-party services may change or discontinue
Alternative solutions may require additional development fees

11. Security & compliance

Sets the security measures, any compliance standards that apply and the client's own security duties.

Developer will implement reasonable security measures
Security includes: [SSL, password hashing, input validation, etc.]
Compliance: [GDPR, PCI-DSS, HIPAA, etc. - if applicable]
Client responsible for:
  - Secure password practices
  - Regular backups (if not included in hosting)
  - Content that complies with applicable laws
Developer not liable for security breaches due to Client negligence or third-party attacks

12. Termination

Either side can end the agreement with notice. The client pays for work done, plus a kill fee after a completion point you set.

Either party may terminate with [X] days written notice
Upon termination:
  - Client pays for all work completed through termination date
  - Developer delivers all completed code and work-in-progress
  - If Client terminates after [X]% completion, Client pays [X]% kill fee
Code delivered upon termination is "as-is" without warranty

13. Limitation of liability

Caps the developer's liability at fees paid and excludes indirect losses, lost data and business results.

Developer's liability limited to total fees paid under this Agreement
Developer not liable for indirect, consequential, or punitive damages
Developer not liable for lost profits, lost data, or business interruption
Developer provides development services, not guarantees of business results
Client responsible for backing up data and content

14. Governing law & disputes

Names the law that applies and how disputes are handled. Fill in both lines, then have a lawyer qualified in that jurisdiction confirm them before signing.

Governing Law: This Agreement is governed by the laws of [STATE/PROVINCE, COUNTRY]
Dispute Resolution: The parties will first try to resolve any dispute through good-faith discussion within [X] days of written notice
If not resolved: [MEDIATION / ARBITRATION UNDER (NAMED RULES) / THE COURTS OF (CITY, STATE/COUNTRY)]

15. Signatures

Both parties sign and date the agreement before work starts.

Both parties agree to the terms above.
Developer: _________________ Date: _________
Client: _________________ Date: _________

Not legal advice. This template is a drafting starting point, provided for information only. Contract law differs by country and state, so have a qualified lawyer where you and your client are based review the final version before you sign it.

Choose the version for your work

Use only the sections that match your engagement. Each version below contains its own complete working text or checklist.

These are drafting examples. Adapt the terms with legal advice for your jurisdiction and engagement before signing.

E-commerce development and management agreement

Use this version for online stores. The one-time build (platform, payment gateway, shipping, catalog setup, launch) sits in sections 2 to 6 and 9; optional monthly management sits in section 8 with its own fee. Delete section 8 and the management lines if you only build. It also covers data ownership and access, PCI responsibilities and client duties for products, fulfilment and customer service.

Edits stay in this page until you leave. Download a copy before closing.

Before you sign: what to check with a lawyer

This template has not been reviewed for any particular country or state. Take these points to a lawyer qualified where you and your client are based.

  • The governing law and disputes section is a fill-in clause. Choose the law and the forum, then have a lawyer qualified in that jurisdiction confirm the wording.
  • Clause 6: open-source and third-party code stays under its own licence after handover. List the main licences so the client knows what they own outright.
  • Clause 11: decide who is responsible for the privacy policy, cookie consent and accessibility obligations that apply to the site, and write it down.
  • E-commerce version: the client usually remains responsible for PCI DSS compliance with its payment provider. If you handle customer personal data, attach a data processing agreement.
  • Check that the warranty period in clause 9 and the liability cap in clause 13 match what your insurance covers.

Drafting tips

  • Document technical specifications in detail before starting. Changes mid-project are expensive
  • Keep the browser list in clause 3 to what you will actually test.
  • Define what "bug" means. Not every issue is a bug that must be fixed for free
  • Set a clear post-launch support window. Don't commit to indefinite free fixes
  • Clarify hosting responsibilities upfront. This is a common source of confusion
  • Get client approval for third-party services. They may change or cost money

What this contract covers

Spec that acceptance is measured against

Clause 2 records the stack, features, pages, integrations and performance requirements. Clause 8 accepts the build against them once critical and major bugs are fixed.

Code ownership on final payment

Clause 6 gives the client the custom code on final payment, licenses any pre-existing code you reuse and leaves third-party libraries under their own licences.

Hosting choice

Clause 7 has two options: you host for a monthly fee, or you deploy to the client's hosting. Delete the one you do not use.

Browser and device list

Clause 3 names the browsers, versions and breakpoints you will test. Support for older browsers is an add-on.

Warranty period

Clause 9 fixes bugs in delivered functionality free for a set number of days after launch. New features, content changes and third-party issues are paid work.

Third-party limits

Clause 10 lists the third-party services and puts their outages and API changes outside your responsibility.

Frequently asked questions

Who owns the code after the project is complete?

Typically, custom code transfers to the client upon final payment. However, you retain rights to general techniques, tools, and pre-existing code libraries. Be explicit about what transfers and what doesn't.

Should I include hosting in the development fee?

Usually not. Hosting is an ongoing cost that should be separate. You can offer to set up hosting initially, but ongoing hosting should be a separate service or the client's responsibility.

How long should the post-launch support period be?

Pick a fixed number of days in clause 9, for example 30. It should be long enough for the client to use the site in real conditions and report bugs in delivered functionality. After it ends, maintenance is paid.

What if the client wants to add features after launch?

New features are out of scope and require a change order with additional fees. Your contract should clearly distinguish between bug fixes (covered) and new features (paid).

Am I responsible if a third-party API changes?

Not under clause 10 as written: outages and API changes are outside the developer's responsibility, and fixing them is paid work. Check that your client contract does not promise more than that.

How web development agencies run client builds in AgencyPro

Projects, client requests, files and invoices in one branded portal, with retainers for post-launch support.

Related contract templates

Freelance contract template

Independent contractor agreement with scope and exclusions, milestone payments, revision limits, a kill fee and an IP assignment that takes effect only on final payment. Includes a governing-law clause to fill in, optional clauses and a filled-in example.

View template

Scope of work template

Statement of work template with 13 sections: overview, objectives, scope by workstream, deliverables with acceptance criteria, milestones, acceptance, roles, assumptions, exclusions, revisions, change control, payment and approval. Includes a completed website example, a retainer version and a short scope section for proposals.

View template

IT Managed Services Contract Template

IT managed services agreement covering help desk support, system monitoring, maintenance, and infrastructure management with defined service levels and response times. Includes hardware and software procurement responsibilities, security compliance requirements, and disaster recovery provisions. Protects IT providers with clear exclusions for client-caused issues, third-party vendor problems, and limitations on uptime guarantees that account for planned maintenance and force majeure events.

View template

WordPress maintenance contract template

WordPress website maintenance agreement covering plugin and theme updates, security monitoring, backup services, and technical support response times. Includes clear distinction between maintenance (updates, backups, monitoring) and development work (new features, customizations), preventing scope creep. Features service level agreements for response times, uptime monitoring, and clear exclusions for major site changes or custom development work.

View template

Run client builds in a branded portal

AgencyPro keeps projects, client requests, files and invoices in one branded portal, with payments through Stripe or PayPal. Basic is $39/mo with unlimited clients.