On this page
What a software development contract must include
A software development contract has to settle five things that cause most disputes: the scope, described in modules you can accept one by one; how changes are priced before anyone starts them; who owns the code and when the ownership passes; where the code and the accounts live from the first day; and which law and courts apply. The rest, from payment terms to confidentiality, is standard and matters less in practice.
This template holds fourteen clauses in plain English, each with a note on what it settles, five schedules, and a filled-in example of the five clauses buyers forget. It is written for a buyer who commissions custom software from an agency, at home or in another country. It is not legal advice: contract law, consumer law and intellectual property differ per country, and a lawyer in your jurisdiction should review the result before you sign.
Write the specification first; the contract points to it as Schedule 1. Our software requirements template gives you the questions, and our guide on how to choose a software development company the checks to run before you get this far.
Fourteen clauses, five that buyers forget
- 1.Parties and purpose
- 2.Scope in modules
- 3.Price and payment
- 4.Changes
- 5.Delivery and acceptance
- 6.Ownership of the code and IP
- 7.Repository, accounts and access
- 8.Hosting, data and security
- 9.Warranty
- 10.Support and maintenance
- 11.Liability
- 12.Confidentiality
- 13.Termination and exit
- 14.Governing law and disputes
The Word file explains every clause; the PDF shows the five highlighted ones filled in for a fictional project.
Ownership of the code: where the law differs
The clause on intellectual property is the one where jurisdictions differ most, and where a contract copied from another country fails.
| Jurisdiction | Who owns code written for you by default | What the contract needs |
|---|---|---|
| United States | the author, unless it is a work made for hire: an employee's work, or certain commissioned works agreed in writing | an explicit assignment, because software by an outside agency rarely qualifies as work made for hire |
| United Kingdom | the author, or the employer for an employee's work | a written assignment signed by the supplier |
| Belgium | the author; for software written by employees, the employer is presumed to hold the economic rights | a written assignment for work by an outside supplier |
| Netherlands | the author, or the employer for an employee's work | a written deed of assignment |
| EU in general | the author, under the Software Directive, with an employer rule for employees | a written assignment for commissioned work |
In every case, the safe course is the same: assign all intellectual property in what is created for you, in writing, and say when it passes: on creation, or on payment of each module. Keep the supplier's own pre-existing tools out of the assignment, with a licence for you to use them as part of your software.
The repository and the accounts
The single clause that protects a buyer most is not about law at all: the code lives in a repository owned by you from the first commit, and the domain, cloud accounts and app store accounts are in your company's name. With that clause, you can continue with another supplier at any moment; without it, even a fair supplier holds the keys. We describe this in our own contracts, and it is the first thing we suggest a buyer checks in any offer.
Fixed price or time and materials
The template is written for a fixed price per module. For time and materials, replace clause 3 with rates per role, a weekly report of hours and a monthly cap.
| Fixed price per module | Time and materials | |
|---|---|---|
| Who carries the risk of the estimate | the supplier | you |
| What you need on your side | a clear description per module | someone who decides priorities every week |
| How changes work | a new line with its own price | more hours on the next invoice |
| Best for | a product or module you can describe | work that changes as users react |
What custom software costs per type of project is in custom software development cost; developer rates per country, if you go the hourly way, in developer rates by country.
Contracting across borders
Working with a supplier in another country adds three choices to the contract. Pick one governing law and one court; English law is common between UK and EU parties, Belgian or Dutch law between EU parties, and some US buyers accept English or Belgian law for a European supplier. Settle the currency of the invoices, because the module price is only fixed in that currency. And if the supplier processes personal data of people in the EU, attach a data processing agreement under article 28 of the GDPR as Schedule 4; what it contains is explained in data processing agreement.
For US buyers, the time zone and tax side of working with a European team is in outsourcing to Europe from the US; for UK buyers, in bespoke software development for UK companies.
Contract questions from buyers
What should a software development contract include?
Scope in modules with acceptance criteria, a price and how changes are priced, ownership of the code with a written assignment, a repository and accounts in your name, and governing law. Then warranty, support, liability, confidentiality and exit.
Who owns the code if the contract says nothing?
In most countries, the developer or agency that wrote it. A buyer only owns the code with a written assignment, except for code written by its own employees.
Is this template enough to sign?
No. It gives you the structure and the questions; have a lawyer in your jurisdiction adapt the liability and intellectual property clauses before anyone signs.
Can I use the template for an app or a SaaS product?
Yes. Add the app store accounts to clause 7, and for a SaaS product make sure the hosting and support schedules match what you promise your own customers.
