MIT vs LGPL-3.0 License
MIT License compared with GNU Lesser General Public License v3.0: 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):
MIT code in a project licensed under LGPL-3.0
Generally CompatibleUsing MIT-licensed code in a project under LGPL-3.0 is generally compatible in this scenario.
MIT permits commercial use.
LGPL-3.0 code in a project licensed under MIT
Compatible With ConditionsUsing LGPL-3.0-licensed code in a project under MIT is generally possible if the listed conditions are met.
An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Key Differences
- Copyleft: MIT: none; LGPL-3.0: weak (library / module level).
- Source disclosure: MIT: not required; LGPL-3.0: the library and changes to it.
- Same licence for distributed changes: MIT: no; LGPL-3.0: yes.
- Mark modified files: MIT: no; LGPL-3.0: yes.
- Express patent licence: MIT: no; LGPL-3.0: yes.
- Patent termination clause: MIT: no; LGPL-3.0: yes.
Comparison Table
| MIT | LGPL-3.0 | |
|---|---|---|
| Type | Open source | Open source |
| OSI approved | Yes | Yes |
| Commercial use | Permitted | Permitted |
| Modification | Permitted | Permitted |
| Distribution | Permitted | Permitted |
| Copyleft | None | Weak (library / module level) |
| Network-use (SaaS) clause | No | No |
| Source disclosure | Not required | The library and changes to it |
| Same licence for distributed changes | No | Yes |
| Attribution / notices | Yes | Yes |
| Mark modified files | No | Yes |
| Express patent licence | No | Yes |
| Patent termination clause | No | Yes |
| Trademark rights granted | Not addressed | Not addressed |
Commercial Use
- MIT: permitted.
- LGPL-3.0: permitted.
- MIT code in a project licensed under LGPL-3.0: MIT permits commercial use.
- LGPL-3.0 code in a project licensed under MIT: LGPL-3.0 permits commercial use. Commercial use, including selling copies, is allowed; the copyleft conditions still apply to how the code is distributed.
Proprietary Software
MIT code in closed-source commercial software
Generally CompatibleUsing MIT-licensed code in a proprietary project is generally compatible in this scenario.
MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
LGPL-3.0 code in closed-source commercial software
Compatible With ConditionsUsing LGPL-3.0-licensed code in a proprietary project is generally possible if the listed conditions are met.
An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
- MIT code in closed-source commercial software: MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
- LGPL-3.0 code in closed-source commercial software: An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
SaaS
- Network-use clause: MIT: no; LGPL-3.0: no.
MIT code in a closed-source SaaS
Generally CompatibleUsing MIT-licensed code in a proprietary project is generally compatible in this scenario.
MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
LGPL-3.0 code in a closed-source SaaS
Generally CompatibleUsing LGPL-3.0-licensed code in a proprietary project is generally compatible in this scenario.
LGPL-3.0 copyleft conditions are triggered by distribution; this scenario does not include distribution.
- MIT code in a closed-source SaaS: MIT has no network-use (SaaS) clause.
- LGPL-3.0 code in a closed-source SaaS: LGPL-3.0 has no network-use (SaaS) clause.
Modification
- MIT: permitted.
- LGPL-3.0: permitted; modified files must be marked.
Modifying MIT code used in closed-source software
Generally CompatibleUsing MIT-licensed code in a proprietary project is generally compatible in this scenario.
MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
Modifying LGPL-3.0 code used in closed-source software
Compatible With ConditionsUsing LGPL-3.0-licensed code in a proprietary project is generally possible if the listed conditions are met.
An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
- Modifying MIT code used in closed-source software: MIT permits modification.
- Modifying LGPL-3.0 code used in closed-source software: LGPL-3.0 permits modification. LGPL-3.0 requires modified files to carry notices stating that they were changed.
Distribution
- MIT: permitted.
- LGPL-3.0: permitted.
- MIT code in a project licensed under LGPL-3.0: MIT permits distribution.
- LGPL-3.0 code in a project licensed under MIT: LGPL-3.0 permits distribution subject to its copyleft conditions.
Copyleft
- MIT: none copyleft.
- LGPL-3.0: weak (library / module level) copyleft.
- MIT code in a project licensed under LGPL-3.0: MIT has no copyleft.
- LGPL-3.0 code in a project licensed under MIT: An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Source Disclosure
- MIT: not required.
- LGPL-3.0: the library and changes to it.
- MIT code in a project licensed under LGPL-3.0: MIT does not require you to publish source code.
- LGPL-3.0 code in a project licensed under MIT: An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Attribution
- MIT: Include the copyright notice and permission notice in all copies or substantial portions.
- LGPL-3.0: Provide source of the library and of modifications to it when distributing.
- LGPL-3.0: Give prominent notice that the library is used and that it is covered by the LGPL.
- LGPL-3.0: Accompany the Combined Work with copies of the GPL and LGPL.
- LGPL-3.0: Provide a way to relink or use a shared library so users can run a modified library version (section 4(d)).
- LGPL-3.0: Provide Installation Information where required for User Products.
- MIT code in a project licensed under LGPL-3.0: MIT requires the copyright and licence notices to be kept with copies you distribute.
- LGPL-3.0 code in a project licensed under MIT: LGPL-3.0 requires the copyright and licence notices to be kept with copies you distribute.
Patent Considerations
- Express patent licence: MIT: no; LGPL-3.0: yes.
- Patent termination clause: MIT: no; LGPL-3.0: yes.
- MIT code in a project licensed under LGPL-3.0: MIT contains no express patent licence. Any patent permission would depend on implied licence doctrines, which vary by jurisdiction.
- LGPL-3.0 code in a project licensed under MIT: LGPL-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.
Common Scenarios
| Scenario | MIT code in a project licensed under LGPL-3.0 | LGPL-3.0 code in a project licensed under MIT |
|---|---|---|
| Use as a dependency / library | Generally Compatible | Compatible With Conditions |
| Copy source code into the project | Generally Compatible | Potential Conflict |
| Modify the component | Generally Compatible | Compatible With Conditions |
| SaaS / network service (not distributed) | Generally Compatible | Generally Compatible |
| Internal / private use only | Generally Compatible | Generally Compatible |
| Resell the software | Generally Compatible | Compatible With Conditions |
| White-label / rebrand | Generally Compatible | Compatible With Conditions |
FAQ
Can I use MIT code in a project licensed under LGPL-3.0?
Using MIT-licensed code in a project under LGPL-3.0 is generally compatible in this scenario. MIT permits commercial use.
Can I use LGPL-3.0 code in a project licensed under MIT?
Using LGPL-3.0-licensed code in a project under MIT is generally possible if the listed conditions are met. An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Can MIT-licensed code be used in closed-source commercial software?
Using MIT-licensed code in a proprietary project is generally compatible in this scenario. MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
Can LGPL-3.0-licensed code be used in closed-source commercial software?
Using LGPL-3.0-licensed code in a proprietary project is generally possible if the listed conditions are met. An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Do I have to publish my source code when I use MIT code?
MIT does not require you to publish source code.
Do I have to publish my source code when I use LGPL-3.0 code?
An application that uses an LGPL-3.0 library may be distributed under its own terms, including proprietary terms, when section 4 is met: typically by using the library as a replaceable shared library, giving notice of its use, and including the licence.
Can I use MIT code in a closed-source SaaS?
Using MIT-licensed code in a proprietary project is generally compatible in this scenario. MIT generally allows the code to be included in proprietary software without releasing your source code, provided its notices are kept.
Can I use LGPL-3.0 code in a closed-source SaaS?
Using LGPL-3.0-licensed code in a proprietary project is generally compatible in this scenario. LGPL-3.0 copyleft conditions are triggered by distribution; this scenario does not include distribution.
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.