Many web developers prefer to create their own Website Development Agreements for clients. If you’ve been drafting your own form of contract, it’s important to ensure that the Agreement addresses all of the key issues, including ownership of the website, intellectual property rights to the content and any software or resources used in the building of the site; how the development process will proceed, testing functionality of the end product, dealing with problems that may arise and the corrective measures required to correct them; covenants, warranties and undertakings; confidentiality and non-disclosure; and ongoing support provided to the client. The following is a checklist of provisions that should be included in your standard form Website Development Agreement.
1. Project Specifications and Development
- Provide detailed specifications for the design of the website. These will serve as criteria for the testing of the website, in order to determine if the specifications have been met and if acceptance of the website is warranted.
- The specifications must be approved or modified by the client before work commences on the development of the site.
- Clearly define the developer’s performance obligations to avoid any ambiguity between the parties. Clarify how extra work will be approved and billed.
- If the project warrants it, appoint a project manager to oversee and coordinate the development and to be the liaison / point of contact with the client.
- Set out a timetable for development / performance milestones, and include the payment schedule attached to those milestones.
- Make provision for progress meetings between the parties at key points in the timetable.
- List all deliverables and resources required from the client and the times at which these are required. Include provisions which cover the implications if the client is late in delivering these items, i.e. how it will affect the timetable and completion date.
- Clarify what happens if a milestone is not met or the completion date is missed through no fault of the client.
- Ensure that the Agreement allows you to subcontract any part of the development services if necessary.
- The developer’s performance obligations should include providing documentation and source code for all software used during the process.
The Agreement must be flexible enough to allow for changes to the site specifications, and must also clarify how those changes will affect the timetable and development costs.
2. Price and Payment
- Make it clear whether the price includes applicable taxes.
- Payment should be tied to performance milestones. At least 1/3 of payment should be held back until the website has been thoroughly developed, delivered, tested and accepted by the client, and the website is ready to go live.
- There should also be a further holdback (10%-15%) for a reasonable period following acceptance to ensure that all defects have been detected and fixed.
3. Ownership of Work
- The Agreement should expressly provide that the work done under the Agreement is a work-made-for-hire, and that all content, graphics, domain names, files and the look-and-feel of the site (together with all underlying code, software, digital programming) are the sole property of the client. A copyright notice should be displayed on the website.
- For greater certainty, the developer should assign all proprietary rights in the work to the client. Unless the developer is an employee of the client, the developer must convey copyright ownership to the client in writing in order for the client to acquire all rights reserved to the author under the copyright laws.
- Clarify whether the developer retains any rights to use any materials or software created during the development.
4. Hardware and Software
- If the developer is providing any of the hardware, what warranties are being provided?
- If the developer is using any proprietary software in the development of the website, include provisions for the client to be able to license the software and access the source code in the event that the relationship between the parties is terminated or the developer goes out of business or becomes otherwise unavailable. The license granted to the client should be perpetual, royalty-free, irrevocable and worldwide, and should be transferable.
- Is any third party software or material (such as graphics) being used in the development? Have the required licenses / consents been obtained? Who is responsible for, and who pays the costs for, obtaining them? And who is liable for the performance of that software?
5. Infringement Claims
- Each of the parties should provide warranties that none of the material provided by such party infringes any intellectual property rights or other proprietary rights of any third party.
- There should also be mutual indemnification by each party of the other party.
- The client should require the developer to carry adequate liability insurance coverage to protect against third party claims.
6. Confidentiality and Non-Solicitation
- The Agreement should contain confidentiality undertakings from each party with respect to the other party’s confidential information and proprietary data.
- The Agreement should also contain a non-solicitation provision barring either party from soliciting the other’s employees during and for a reasonable period of time following completion of the project.
- If either party wishes to refer to the relationship in its marketing materials (including putting the developer’s name and/or link on the website), this should be agreed to in the contract.
7. Compliance with Laws and Regulations
- If the website collects any personal information from site visitors, all applicable local and international privacy and data security laws must be complied with.
- If the website is an e-commerce site which will be processing payment transactions, compliance with the applicable standards and regulations (e.g. PCI compliance) must be included in the scope of services.
- The website must contain all the required notices and disclosures for users (privacy, use of personal information, cookies, copyright, etc.)
- Each party should indemnify the other for any loss or damages arising as a result of such party’s breach of its obligations.
- The liability should be limited to the total of the fees paid by the client under the Agreement.
- Each party should indemnify the other against third party infringement claims with respect to content, material or resources supplied by that party.
- The Development Agreement should clearly specify the anticipated functionality of the website, including page load times, connection speed and bandwidth, download speed, 24/7 accessibility except for scheduled maintenance and downtime, number of simultaneous connections and response times for user requests, compatibility with Internet browser software, security protocols, and credit card/debit card/Paypal verification and acceptance (if applicable).
- The functionality provisions should also cover integration of the site with the client’s existing data server structure.
- The client must be able to make changes to the website without interfering with the site’s operation or functionality.
- Website functionality should also include the procedure for accessing, recording and compiling data about site traffic, visitors and customers.
10. Installation and Acceptance
- The developer is responsible for transferring and installing the site, including all software and files, on the client’s web server.
- Who will take responsibility for acceptance testing?
- Who will determine whether the testing has been successful?
- Will acceptance testing occur in stages?
- The client should have the right to reject the site if the site fails to meet designated specifications and does not pass the acceptance tests.
- In addition to the warranty regarding no infringement, the developer should warrant that the website will be delivered free from all known viruses and material defects, and will conform to the specifications. There should be a reasonable period of time allotted to resolve any defects or shortcomings.
- The client should also warrant that it has complied with all legal, financial and data protection matters.
- Determine how long the developer’s warranty should be in effect, and set out the start date and end date.
12. Ongoing Support
- Determine whether the client will require training and if so, whether and for how long the developer will provide that training, and at what cost.
- Will the developer be providing ongoing support and maintenance? Is this tied to a warranty period? If not, then consider signing a separate support and maintenance agreement.
- Determine the service level requirements, the costs to be billed to the customer, billing and payment dates.