contracts
How to Draft a App Development Agreement (2026 Template and Clauses)
What an app development agreement does An app development agreement is the contract between a client who wants a mobile or web application built and the developer, studio or agency building it. It records what will be built, by when, for how much, who owns the finished code and design, and what happens when the app has a bug, runs late, or the relationship ends. Without it, the two sides usually disagree on exactly the points that matter most: whether the client owns the source code, whether the developer can reuse parts of it, and who is liable when something breaks after launch. The single most important thing this agreement settles is intellectual property. In many countries, the person who writes code owns the copyright in it by default, even when a client paid for the work, unless the contract assigns that ownership across. A client who assumes they automatically own what they paid for can be wrong. So the clauses below are written to make ownership, licences and reuse explicit rather than assumed. This is general information, not legal advice. App projects touch copyright, data protection and sometimes open-source licence rules that vary by country, so have an important agreement reviewed by a qualified professional. ## An app development agreement template you can copy ```
APP DEVELOPMENT AGREEMENT Date: [date] Client: [legal name and address] Developer: [legal name and address] The App: [name and short description of the application] 1. SCOPE OF WORK The Developer will design, build and deliver the App as described in the Statement of Work (Schedule 1), covering platforms [iOS / Android / web], features, and acceptance criteria. 2. TIMELINE AND MILESTONES The work is delivered in milestones (Schedule 2), each with a date, deliverable and payment. [Process for slippage and dependencies.] 3. FEES AND PAYMENT Fees are [fixed price per milestone / time and materials at [rate]]. Invoices are due within [number] days. Expenses are [included / reimbursed with approval]. 4. CHANGE CONTROL Changes to scope are agreed in writing, with any effect on price and timeline, before the Developer starts the changed work. 5. ACCEPTANCE AND TESTING The Client has [number] days to test each deliverable against the acceptance criteria and to accept it or report defects. Undisputed deliverables are deemed accepted after that period. 6. INTELLECTUAL PROPERTY On full payment, the Developer assigns to the Client all intellectual property rights in the bespoke code, designs and assets created for the App. The Developer retains ownership of its pre-existing tools and libraries and grants the Client a perpetual, non-exclusive licence to use them within the App. Open-source components are listed in Schedule 3 with their licences. 7. SOURCE CODE AND HANDOVER On acceptance and payment, the Developer delivers the source code, build instructions and credentials needed to run and maintain the App. 8. THIRD-PARTY AND OPEN-SOURCE COMPONENTS The Developer will disclose all third-party and open-source components and ensure their licences are compatible with the Client's intended use. 9. DATA PROTECTION AND SECURITY Where the App processes personal data, the parties comply with applicable data protection law and, where the Developer processes data on the Client's behalf, enter a data processing agreement (Schedule 4). The Developer follows reasonable security practices. 10. WARRANTIES The Developer warrants the App will materially conform to the specification for [number] days after acceptance and will fix conforming defects in that period at no charge. 11. SUPPORT AND MAINTENANCE Support after the warranty period is [out of scope / covered by a separate maintenance agreement at [terms]]. 12. CONFIDENTIALITY Each party keeps the other's confidential information private and uses it only for the project. 13. LIABILITY Each party's liability is capped at [amount / fees paid], excluding confidentiality breach, data protection breach and IP infringement. 14. TERM AND TERMINATION Either party may terminate for material breach not cured within [number] days. On termination the Client pays for work accepted to date and the Developer hands over that work. 15. GOVERNING LAW Governed by the law of [place]; disputes resolved in [place]. SIGNED Client ____________ Date ______ Developer ____________ Date ______
Most app disputes are really scope disputes. A clear Statement of Work with features, platforms and acceptance criteria turns a vague brief into something testable. The acceptance clause then gives the client a defined window to check each deliverable and the developer certainty that accepted work will not be reopened forever. ### Intellectual property and source code
This is the clause to get right. Decide three things: who owns the bespoke code written for this project, what happens to the developer's pre-existing tools and libraries, and whether the client gets the source code. A common and fair structure is a full assignment of the custom work to the client on payment, with the developer keeping ownership of its reusable building blocks and licensing them into the app. Tie the assignment to payment so the developer is protected until invoices are settled. ### Open-source and third-party components
Modern apps are built on open-source libraries, and some licences carry conditions, including copyleft terms that can affect code you combine with them. A clause requiring the developer to disclose every component and its licence protects the client from a surprise obligation later. ### Data protection
If the app collects personal data, the client is usually the controller and the developer may be a processor, which means a data processing agreement is needed. Build this in from the start rather than bolting it on after launch. ### Warranty, support and liability
Separate the free warranty period, when the developer fixes defects at no charge, from paid ongoing maintenance. Cap liability sensibly and carve out the serious risks such as data breaches and IP infringement. ## Red flags to watch for - No IP assignment, or assignment not tied to payment. The client may not own what they paid for, or the developer may hand over ownership before being paid.
- Source code withheld. If the client never receives the code, they are locked into one developer forever.
- Silence on open-source licences. An undisclosed copyleft component can create obligations the client never agreed to.
- No acceptance process. Without defined testing and acceptance, projects drift and payment disputes follow.
- No data processing agreement where personal data is involved. This is a compliance gap, not a nicety. ## How jurisdiction changes things Copyright in software is recognised almost everywhere, but the default owner differs. In the United States, the work made for hire doctrine can vest ownership in an employer or, for certain commissioned works, in the commissioning party, but independent contractor code usually needs a written assignment to move ownership to the client. In the United Kingdom, under the Copyright, Designs and Patents Act 1988, a commissioned contractor generally owns the copyright unless it is assigned in writing. In India, the Copyright Act, 1957 treats the author as the first owner unless there is an agreement to the contrary. The lesson is the same across all of them: do not rely on the default, assign ownership expressly in writing. Where the app processes personal data, confirm the data protection regime for each region, from the EU and UK GDPR to India's Digital Personal Data Protection Act, 2023. ## Keeping the agreement and its schedules in one place An app project is never one document. It is the master agreement, the statement of work, the change orders, the component list and the data processing agreement, and the terms in force are whatever the latest signed versions say. The value is in keeping them linked, current and easy to check, so the ownership, licences and obligations everyone relies on actually match what was signed. That is the discipline every company needs across its contracts. Drafting from a clear template, catching a clause where IP or liability is one-sided or missing, editing wording in plain language, and holding each version with its date can live in one AI workspace tuned to how your company contracts. [Adira](https://adiralaw.com) is built around that single workspace idea. For one app development agreement the template above is a strong start; the point worth borrowing is that a build stays safe only when the documents behind it stay in step.
Frequently asked questions
- What is an app development agreement?
- It is the contract between a client and the developer or studio building a mobile or web application. It sets out what will be built, the timeline and milestones, the price, who owns the finished code and design, warranties for defects, data protection duties, and how either side can end the project. Its most important job is to settle intellectual property ownership, which does not pass automatically just because the client paid.
- Who owns the code in an app development project?
- It depends on the contract, not on who paid. In many countries the developer who writes the code owns the copyright by default, so the client only owns the bespoke work if the agreement assigns it to them in writing. A common fair structure is to assign the custom code and designs to the client on full payment, while the developer keeps ownership of its pre-existing tools and libraries and licenses them into the app.
- Should the client get the source code?
- Usually yes, if the client wants to maintain or move the app later. Include a handover clause requiring delivery of the source code, build instructions and credentials on acceptance and payment. Without it, the client can be locked into a single developer, because they own the licence to use the app but cannot change or rebuild it themselves.
- Why does open-source matter in an app contract?
- Most apps include open-source libraries, and some open-source licences carry conditions, including copyleft terms that can affect code combined with them. A clause requiring the developer to disclose every third-party and open-source component and its licence lets the client confirm the licences fit their intended use and avoid inheriting obligations they never agreed to.
- Does an app development agreement need a data protection clause?
- If the app collects or processes personal data, yes. The client is usually the data controller and the developer may act as a processor, which under laws such as the EU and UK GDPR requires a written data processing agreement. India's Digital Personal Data Protection Act, 2023 sets similar duties. Build the data clauses in from the start rather than adding them after launch.
Sources
See how Adira drafts in your voice and reads contracts from your side.
Explore the showroomWorking through a contract like this? Weave is Adira’s free tool to read, mark up, and connect any contract in your browser — no account needed.
Try Weave — free