AGPL-3.0 vs Proprietary License
GNU Affero General Public License v3.0 compared with Proprietary / commercial licence: what each licence allows, and whether code under one can be used in a project under the other. Results are generated by the open-source license compatibility checker.
Quick Answer
Compatibility is directional, so both directions are answered separately (distributed software):
AGPL-3.0 code in proprietary software
Likely IncompatibleUsing AGPL-3.0-licensed code in a proprietary project is likely incompatible in this scenario, as the licence terms are generally understood.
If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
proprietary code in a project licensed under AGPL-3.0
Likely IncompatibleUsing Proprietary-licensed code in a project under AGPL-3.0 is likely incompatible in this scenario, as the licence terms are generally understood.
A distributed AGPL-3.0 work must be licensed as a whole under AGPL-3.0 with complete source code. Proprietary components normally cannot be offered on those terms.
Key Differences
- Type: AGPL-3.0: open source; Proprietary: proprietary.
- OSI approved: AGPL-3.0: yes; Proprietary: no.
- Commercial use: AGPL-3.0: permitted; Proprietary: depends on the licence agreement.
- Modification: AGPL-3.0: permitted; Proprietary: depends on the licence agreement.
- Distribution: AGPL-3.0: permitted; Proprietary: depends on the licence agreement.
- Copyleft: AGPL-3.0: strong, with network-use clause; Proprietary: none.
- Network-use (SaaS) clause: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Source disclosure: AGPL-3.0: whole distributed work based on it; Proprietary: depends on the licence agreement.
- Same licence for distributed changes: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Attribution / notices: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Mark modified files: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Express patent licence: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Patent termination clause: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
Comparison Table
| AGPL-3.0 | Proprietary | |
|---|---|---|
| Type | Open source | Proprietary |
| OSI approved | Yes | No |
| Commercial use | Permitted | Depends on the licence agreement |
| Modification | Permitted | Depends on the licence agreement |
| Distribution | Permitted | Depends on the licence agreement |
| Copyleft | Strong, with network-use clause | None |
| Network-use (SaaS) clause | Yes | Depends on the licence agreement |
| Source disclosure | Whole distributed work based on it | Depends on the licence agreement |
| Same licence for distributed changes | Yes | Depends on the licence agreement |
| Attribution / notices | Yes | Depends on the licence agreement |
| Mark modified files | Yes | Depends on the licence agreement |
| Express patent licence | Yes | Depends on the licence agreement |
| Patent termination clause | Yes | Depends on the licence agreement |
| Trademark rights granted | Not addressed | Not addressed |
Commercial Use
- AGPL-3.0: permitted.
- Proprietary: depends on the licence agreement.
- AGPL-3.0 code in proprietary software: AGPL-3.0 permits commercial use. Commercial use, including selling copies, is allowed; the copyleft conditions still apply to how the code is distributed.
- proprietary code in a project licensed under AGPL-3.0: The component is under proprietary terms. Whether it may be used, modified, redistributed, resold or white-labelled depends entirely on the specific licence agreement.
Proprietary Software
AGPL-3.0 code in closed-source commercial software
Likely IncompatibleUsing AGPL-3.0-licensed code in a proprietary project is likely incompatible in this scenario, as the licence terms are generally understood.
If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
- AGPL-3.0 code in closed-source commercial software: If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
SaaS
- Network-use clause: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
AGPL-3.0 code in a closed-source SaaS
Potential ConflictUsing AGPL-3.0-licensed code in a proprietary project may conflict, depending on how the code is combined, distributed and licensed.
AGPL-3.0 section 13 applies to modified versions offered over a network. Running an unmodified AGPL-3.0 program does not by itself trigger it, but integrating AGPL-3.0 code into your own service code (linking, importing, patching) generally creates a modified version.
Modified AGPL-3.0 code in a closed-source SaaS
Likely IncompatibleUsing AGPL-3.0-licensed code in a proprietary project is likely incompatible in this scenario, as the licence terms are generally understood.
AGPL-3.0 section 13: if you modify the program, users interacting with it remotely over a network must be offered the Corresponding Source of your modified version, even if it is never distributed. That is generally incompatible with keeping the service's code for that program proprietary.
- AGPL-3.0 code in a closed-source SaaS: AGPL-3.0 section 13 applies to modified versions offered over a network. Running an unmodified AGPL-3.0 program does not by itself trigger it, but integrating AGPL-3.0 code into your own service code (linking, importing, patching) generally creates a modified version.
- Modified AGPL-3.0 code in a closed-source SaaS: AGPL-3.0 section 13: if you modify the program, users interacting with it remotely over a network must be offered the Corresponding Source of your modified version, even if it is never distributed. That is generally incompatible with keeping the service's code for that program proprietary.
Modification
- AGPL-3.0: permitted; modified files must be marked.
- Proprietary: depends on the licence agreement.
Modifying AGPL-3.0 code used in closed-source software
Likely IncompatibleUsing AGPL-3.0-licensed code in a proprietary project is likely incompatible in this scenario, as the licence terms are generally understood.
If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
- Modifying AGPL-3.0 code used in closed-source software: AGPL-3.0 permits modification. AGPL-3.0 requires modified files to carry notices stating that they were changed.
Distribution
- AGPL-3.0: permitted.
- Proprietary: depends on the licence agreement.
- AGPL-3.0 code in proprietary software: If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
- proprietary code in a project licensed under AGPL-3.0: A distributed AGPL-3.0 work must be licensed as a whole under AGPL-3.0 with complete source code. Proprietary components normally cannot be offered on those terms.
Copyleft
- AGPL-3.0: strong, with network-use clause copyleft.
- Proprietary: none copyleft.
- AGPL-3.0 code in proprietary software: If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
- proprietary code in a project licensed under AGPL-3.0: A distributed AGPL-3.0 work must be licensed as a whole under AGPL-3.0 with complete source code. Proprietary components normally cannot be offered on those terms.
Source Disclosure
- AGPL-3.0: whole distributed work based on it.
- Proprietary: depends on the licence agreement.
- AGPL-3.0 code in proprietary software: If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
- proprietary code in a project licensed under AGPL-3.0: See Proprietary source-disclosure conditions.
Attribution
- AGPL-3.0: License the whole conveyed work under AGPL-3.0.
- AGPL-3.0: Provide Corresponding Source when conveying.
- AGPL-3.0: Offer Corresponding Source of a modified version to users interacting with it over a network (section 13).
- AGPL-3.0: Keep copyright and licence notices and include the licence.
- AGPL-3.0 code in proprietary software: AGPL-3.0 requires the copyright and licence notices to be kept with copies you distribute.
- proprietary code in a project licensed under AGPL-3.0: Proprietary attribution requirements apply on distribution.
Patent Considerations
- Express patent licence: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- Patent termination clause: AGPL-3.0: yes; Proprietary: depends on the licence agreement.
- AGPL-3.0 code in proprietary software: AGPL-3.0 includes an express patent licence from contributors. That patent licence terminates for anyone who initiates patent litigation alleging that the work infringes a patent.
- proprietary code in a project licensed under AGPL-3.0: Patent terms are unknown.
Common Scenarios
| Scenario | AGPL-3.0 code in proprietary software | proprietary code in a project licensed under AGPL-3.0 |
|---|---|---|
| Use as a dependency / library | Likely Incompatible | Likely Incompatible |
| Copy source code into the project | Likely Incompatible | Likely Incompatible |
| Modify the component | Likely Incompatible | Likely Incompatible |
| SaaS / network service (not distributed) | Potential Conflict | Manual Review Required |
| Internal / private use only | Generally Compatible | Manual Review Required |
| Resell the software | Likely Incompatible | Likely Incompatible |
| White-label / rebrand | Likely Incompatible | Likely Incompatible |
FAQ
Can I use AGPL-3.0 code in proprietary software?
Using AGPL-3.0-licensed code in a proprietary project is likely incompatible in this scenario, as the licence terms are generally understood. If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
Can I use proprietary code in a project licensed under AGPL-3.0?
Using Proprietary-licensed code in a project under AGPL-3.0 is likely incompatible in this scenario, as the licence terms are generally understood. A distributed AGPL-3.0 work must be licensed as a whole under AGPL-3.0 with complete source code. Proprietary components normally cannot be offered on those terms.
Do I have to publish my source code when I use AGPL-3.0 code?
If a work based on AGPL-3.0 code is distributed, the whole work must be licensed under AGPL-3.0 with its complete source available. That is generally incompatible with distributing the project under proprietary terms.
Can I use AGPL-3.0 code in a closed-source SaaS?
Using AGPL-3.0-licensed code in a proprietary project may conflict, depending on how the code is combined, distributed and licensed. AGPL-3.0 section 13 applies to modified versions offered over a network. Running an unmodified AGPL-3.0 program does not by itself trigger it, but integrating AGPL-3.0 code into your own service code (linking, importing, patching) generally creates a modified version.
Try the Interactive Checker
Change the scenario, say whether the code is modified, distributed or offered as SaaS, and see every rule that applies.
Related Comparisons
Authoritative Sources
This tool provides general software licensing information and is not legal advice. License obligations may depend on how software components are combined, modified, distributed and used. For high-risk results, review the actual license text before relying on this result.