1
Identify the parties with full legal entity names
Enter the licensor's and licensee's complete registered legal names, entity types, and jurisdictions of incorporation. Verify these against current corporate registry filings before execution.
💡 If the licensor is an individual developer rather than a company, include their full legal name and address — not a brand or screen name.
2
Define the licensed software precisely in Exhibit A
List the specific source code files, repositories, version numbers, or module names being licensed. Attach a complete Exhibit A rather than describing the code in vague terms in the body of the agreement.
💡 Include commit hashes or version tags if licensing from a specific point in a repository — this eliminates disputes about which version of the code is covered.
3
Set the grant scope — exclusivity, territory, and field of use
Choose exclusive or non-exclusive and specify whether the license is worldwide or limited to defined territories. Add a field-of-use restriction if you are licensing the same codebase to multiple parties in different verticals.
💡 Non-exclusive licenses are safer for licensors who want flexibility to license to others; if a licensee pays a significant premium for exclusivity, price it accordingly and define exclusivity precisely.
4
Specify permitted modifications and derivative work ownership
Decide whether the licensee may modify the source code, and if so, who owns the resulting derivative works. Document this in the IP ownership clause and in the restrictions clause consistently — inconsistency between clauses is the most common drafting error.
💡 A 'grant-back' clause requiring the licensee to license derivative works back to the licensor on a royalty-free basis is increasingly common in commercial source code deals — include it if you want access to the licensee's improvements.
5
Set the confidentiality duration and scope
Define what constitutes confidential information (the source code itself, documentation, and any related technical disclosures) and specify how long the obligation survives — typically indefinitely or for the life of any trade secret protection.
💡 Require the licensee to identify internal employees who will access the source code and ensure they have signed individual NDAs before access is granted.
6
State the license fee, royalties, and audit rights
Enter the agreed fee structure — one-time, annual, or royalty-based. If royalties apply, include the calculation method, reporting frequency, and an audit right allowing the licensor to verify royalty accuracy on reasonable notice.
💡 A 10–15 business day audit-notice requirement balances the licensor's right to verify compliance against the licensee's operational disruption — avoid demanding access on fewer than 5 business days.
7
Define the term and termination triggers
Set the initial license term, any renewal mechanism, and the cure period for breach (30 days is standard). List the specific events that allow immediate termination — insolvency, criminal conduct, and uncured material breach.
💡 Include an explicit right for the licensor to seek injunctive relief without posting a bond — source code disclosure cannot be undone with money damages alone.
8
Complete and sign before delivering access
Both parties must sign the agreement before the licensor hands over any source code or repository access. Post-delivery signatures may not bind the licensee to the confidentiality and restriction clauses that govern the code already received.
💡 Use timestamped e-signature with IP address logging — this provides admissible evidence of execution date if a dispute arises over when the restriction obligations commenced.