What Constitutes a Source Code License Agreement
A source code license agreement is an agreement where the owner of a computer program ("the Licensor") licenses others to use a copy of the computer program in source code format according to various terms and conditions. Source code is a representation of a computer program that is written in a programming language. A source code license is a common license used in software development, but they are not as common as executable object code licenses. Source code is the original form of a computer program. To use the computer program in its original form, the licensee must have a license with the licensor.
The purpose of a source code license is to allow a company to gain access to a computer program in its original form so they can customize the source code for their specific business operations. The source code license will include terms and conditions regarding how the source code can be used by the licensee. The source code license will often grant the licensee the right to modify the source code , customize the program, and recompile the source code to develop a new program. However, there may be restrictions on the licensee’s rights to transfer ownership of the source code or to provide the source code to third parties.
A source code license may be used when a company needs a greater flexibility to customize a program than offered by executable object code licenses. A source code license may also be used when a company wants to be able to stop the expiration of software licenses and continuing to pay licensing fees. After the company has a source code license, it will have the ability to develop its own software using the licensed source code.

Different Forms of Source Code Licenses
Types of source code licenses are mainly split into two categories; Open Source and proprietary. Open Source licenses allow the user to view, use, modify, and redistribute the source code. Proprietary licenses are for programs or content where the owner retains control over the use and distribution of the program or content. Although there are many different open source licenses, the most common types are GNU General Public License (GNU GPL), MIT License, Apache License, and GNU Lesser General Public License. The most common proprietary licenses are commercial licenses and shareware licenses. A commercial license is a software license in which the licensee pays for the use of the software, and a shareware license is a variation licensing model that enables users to make copies to try the software. Under each type of license there are also subcategories of licenses such as Permissive Open Source Licenses, Copyleft Open Source Licenses, Shareware Licenses, Freeware Licenses, and Free Software Licenses. Each of these licenses have specific terms and conditions and, understanding the different types of licenses and how they operate, can help parties evaluate what best meets their needs.
Elements of a Source Code License Agreement
While source codes often form the intellectual property (IP) base for both a technology company and its innovative products, that doesn’t mean the source code is necessarily protected from unauthorized use. In fact, a source code can be shared and protected, often through the use of a source code license agreement between its developer and the entities which wish to use it. Because these agreements are so essential for IP protection in the tech field, they’re certainly worth your investment. A source code license agreement doesn’t need to be so complex and legalistic that you lose track of what you’re actually agreeing to; however, you do need to ensure that it includes some basic components. Don’t set yourself up to lose control of your source code simply because you’ve omitted a key element or two in your source code license agreement. As a general rule, the key components of a source code license include: Usage Rights: This is usually where the secrets and particulars of any source code license agreement lie – how will that source code be used? Where will it be used? How will it be installed? Who’s going to maintain it? How long does the agreement last? How much control does the entity receiving the source code have over it? Restrictions: There are always restrictions that come along with the ownership of any source code, and it’s imperative that you include them in your source code license agreement. Will the entity receiving it be allowed to make changes? Derivative works? Can it grant any others permission to use it? Who owns updates, fixes, and other improvements to the source code? Obligations: It’s very important that you understand the obligations on both ends of a source code license agreement, and not just the ones that you’re obligated to fulfill. If the receiving entity has an obligation to you, and you don’t perform yours, they could choose to be released from their own obligations instead of granting you a reprieve.
Advantages and Disadvantages of Source Code Licensing
Source code license agreements can bring substantial benefits to each of the parties, but there are also pitfalls that must be carefully considered. On the positive side, source code license agreements can improve a licensee’s competitive position, augment the portfolio of services that the parties can offer to their respective customers, protect a licensee’s investment in implementing its solution, and provide for the better cooperation of the parties in resolving issues and enhancing a common product. Source code license agreements may also permit licensees to reduce their costs of developing and maintaining solutions for its customers as well as allow licensees to enter new markets where they have no experience or expertise. From the licensor’s perspective, a source code license agreement may increase a licensor’s revenue (depending on the licensing considerations), reduce long-term product support costs, and allow a licensor’s software to be marketed by others.
On the other hand, from a licensee’s perspective, source code license agreements can present several inherent risks. First, as noted above, licensees must understand the extent to which it will be required to alter its internal operating procedures and structure itself to support the software being licensed; similarly, licensees must understand the time and resources that will be required to integrate the software with other software products that they already offer. Such integration, as well as customization and modification of the software, may have a significant impact on the time and resources that will be involved in implementing the licensed solution. A critical consideration for any licensee contemplating a source code license is the time required for the licensee’s personnel to become knowledgeable of the software concepts and coding techniques which are likely different than those employed by the licensor. Source code license agreements may also require the licensee to hire additional skilled programmers. Source code license agreements rarely include a schedule of payments for the continued maintenance and support of the licensed software, i.e., ongoing maintenance fee, which may be a substantial annual cost to the licensee.
While the benefits of source code license agreements can be substantial, from a licensor’s perspective, source code licenses have inherent drawbacks. First, such licenses tend to be a departure from the traditional package license model (with virtually all of the source code compiled) offered by most licensors, particularly those who have employed the software-as-a-service delivery model. These license agreements also may allow the licensor’s competitors to obtain access to the underlying source code of the licensor’s software (to the extent not custom developed under specific contractual terms and conditions specifically providing that the underlying source code will be proprietary to the relevant licensor). In addition, source code license agreements tend to involve various "gaps" in the scope of license rights granted to the licensee that are not present in more traditional license agreements. Source code license agreements may also require the licensor to commit substantial resources to train the licensee’s employees or programmers on the licensor’s software. The use of source code software can also require the establishment of onsite presence of a representative of the licensor to manage the relevant project and to provide training and support to the licensee. Such onsite presence will mean the licensor will be responsible for the licensor’s representative’s (or subcontractor’s) travel, living, and other expenses.
Legal Aspects of Source Code Licensing
Licences to use source code are often simpler than those for executables as the law makes it easier to copy, and control who has access to, source code. Nevertheless, the issues that arise need to be considered carefully and spell out in the license.
License terms
The license term only ever needs to be long enough to give the licensee sufficient time to exploit its investment. However, unless there is a strategy to tackle cybersecurity issues, making the license term co-terminous with the licensee’s support obligations under the services agreement is an obvious choice.
Reductions and audit
Auditing license use against the annual license fee payment is another useful "lever" to ensure efficiency in usage of licenses from a customer’s perspective. Similarly, a right to reduce software licenses should be linked to "ceiling" usage limitations in the license agreement.
Territory restrictions
In addition to the usual geographical limitations, the license agreement may also need to restrict the licensee’s right to use the subject matter in certain sectors or by reference to the licensee’s own operations.
Crown use
When licenses are given by a government or other public authority (and subject to the Crown Contracts Act 2014) so that it is acting as a contracting authority, no royalties or similar fees are payable until the software is made generally available. This is so even if it is already deployed in the business.
Indemnities
Reciprocal indemnities for infringement of third party intellectual property rights ("IPRs") are becoming more common. They clearly confer more risk on the licensor but is arguably necessary if the technology is being exploited commercially by the licensee but developed by the licensor. In the event of infringement , however, it is only necessary for the indemnifying party to indemnify and defend claims based on the lawful use of the subject matter. The indemnity should not be so widely worded as to cover every situation.
Liability
For commercial contracts, there is no liability cap unless the parties set one. Limiting liability on a per claim and in the aggregate, is acceptable. Care needs to be taken not to limit liability for fraud, personal injury or death and insurance obligations may need to be aligned so as to limit liability to insurance proceeds (otherwise there will be a large liability exposure).
Termination and survival
Termination rights in license agreements are usually capable of being exercised across the contract, so it is important to ensure consistency in the exercise of all rights. The licensee’s obligations will need to survive termination of the agreement to protect confidential information, return materials and so on. However, the termination clauses must not be so tightly drafted that the licensee cannot recover damages for breach unless there has been a material breach of the license.
Nursery clauses
These are designed to capture innovations or improvements in technology developed by the licensor after the agreement was entered into. The licensee should, if sharing costs or resources, get a share of the fruits for the life of the license agreement.
Common Mistakes in Source Code License Contracts
A common mistake is for licensees to fail to keep a careful record of source code changes and/or custom development they have made. Such record keeping is advisable at least for the term of the source code license agreement. When the term expires, the licensee should be reminded of its obligations to either destroy the licensed source code or return it to the licensor.
Both licensors and licensees can fall into the trap of failing to specify whether or not executable code is being licensed or at what level that executable code is being further developed. It is also important to distinguish between source code that has been modified and that which has not, again knowing the point at which such source code must be returned or destroyed.
A third common error is failing to cover the treatment of third parties, recognizing the need to protect trade secrets and other confidential information from disclosure to those SCR levels.
License agreements that include hosting services often inadvertently grant the hosting service the right to host, store and otherwise use the software for its own business purposes, rather than solely for the purpose of servicing the licensee’s business. This may result in the hosting service using the software and its underlying technology in ways not intended in the SCR.
Emerging Trends in Source Code Licensing
Emerging trends in source code license agreements include the potential for new licensing models and the impact of new technologies and regulations. With the rise of cloud computing, for example, licensors may need to adapt their licensing terms to address new deployment models and usage scenarios. For example, source code license agreements may need to be updated to address the legal implications of cloud computing and the hosting environment, including in light of emerging frameworks such as the EU’s General Data Protection Regulation (GDPR) and the California Consumer Privacy Act (CCPA).
Another emerging trend is the growing use of open source software, which can impact intellectual property rights and licensing terms in source code license agreements. Companies like Google, Apple, and Microsoft maintain various open source licenses and require documentation of open source software usage in their apps .
Regulatory changes may also drive the evolution of source code license agreements. For example, the European Union’s General Data Protection Regulation requires that companies preserve the "integrity and confidentiality of personal data" that they process. In light of this law, source code license agreements may need to include more robust contractual provisions on source code management, auditing rights, export controls, and other requirements.
Finally, new technologies like quantum computing and artificial intelligence (AI) may impact source code license agreements, particularly when it comes to intellectual property rights. As these technologies continue to mature, source code license agreements may need to include terms and conditions that address IP protections and rights with respect to proprietary information contained in the source code.