esdecode

MPL-2.0 vs Proprietary License

Mozilla Public License 2.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):

MPL-2.0 code in proprietary software

Compatible With Conditions

Using MPL-2.0-licensed code in a proprietary project is generally possible if the listed conditions are met.

MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

proprietary code in a project licensed under MPL-2.0

Manual Review Required

Using Proprietary-licensed code in a project under MPL-2.0 requires review of the actual licence terms.

The component is under proprietary terms. Whether it may be used, modified, redistributed, resold or white-labelled depends entirely on the specific licence agreement.

Key Differences

  • Type: MPL-2.0: open source; Proprietary: proprietary.
  • OSI approved: MPL-2.0: yes; Proprietary: no.
  • Commercial use: MPL-2.0: permitted; Proprietary: depends on the licence agreement.
  • Modification: MPL-2.0: permitted; Proprietary: depends on the licence agreement.
  • Distribution: MPL-2.0: permitted; Proprietary: depends on the licence agreement.
  • Copyleft: MPL-2.0: file-level; Proprietary: none.
  • Network-use (SaaS) clause: MPL-2.0: no; Proprietary: depends on the licence agreement.
  • Source disclosure: MPL-2.0: licensed files and changes to them; Proprietary: depends on the licence agreement.
  • Same licence for distributed changes: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • Attribution / notices: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • Mark modified files: MPL-2.0: no; Proprietary: depends on the licence agreement.
  • Express patent licence: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • Patent termination clause: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • Trademark rights granted: MPL-2.0: no; Proprietary: not addressed.

Comparison Table

MPL-2.0Proprietary
TypeOpen sourceProprietary
OSI approvedYesNo
Commercial usePermittedDepends on the licence agreement
ModificationPermittedDepends on the licence agreement
DistributionPermittedDepends on the licence agreement
CopyleftFile-levelNone
Network-use (SaaS) clauseNoDepends on the licence agreement
Source disclosureLicensed files and changes to themDepends on the licence agreement
Same licence for distributed changesYesDepends on the licence agreement
Attribution / noticesYesDepends on the licence agreement
Mark modified filesNoDepends on the licence agreement
Express patent licenceYesDepends on the licence agreement
Patent termination clauseYesDepends on the licence agreement
Trademark rights grantedNoNot addressed

Commercial Use

  • MPL-2.0: permitted.
  • Proprietary: depends on the licence agreement.
  • MPL-2.0 code in proprietary software: MPL-2.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 MPL-2.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

MPL-2.0 code in closed-source commercial software

Compatible With Conditions

Using MPL-2.0-licensed code in a proprietary project is generally possible if the listed conditions are met.

MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

  • MPL-2.0 code in closed-source commercial software: MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

SaaS

  • Network-use clause: MPL-2.0: no; Proprietary: depends on the licence agreement.

MPL-2.0 code in a closed-source SaaS

Generally Compatible

Using MPL-2.0-licensed code in a proprietary project is generally compatible in this scenario.

MPL-2.0 copyleft conditions are triggered by distribution; this scenario does not include distribution.

  • MPL-2.0 code in a closed-source SaaS: MPL-2.0 has no network-use (SaaS) clause.

Modification

  • MPL-2.0: permitted.
  • Proprietary: depends on the licence agreement.

Modifying MPL-2.0 code used in closed-source software

Compatible With Conditions

Using MPL-2.0-licensed code in a proprietary project is generally possible if the listed conditions are met.

MPL-2.0 is file-level copyleft: its files, including your modifications to them, must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

  • Modifying MPL-2.0 code used in closed-source software: MPL-2.0 permits modification.

Distribution

  • MPL-2.0: permitted.
  • Proprietary: depends on the licence agreement.
  • MPL-2.0 code in proprietary software: MPL-2.0 permits distribution subject to its copyleft conditions.
  • proprietary code in a project licensed under MPL-2.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.

Copyleft

  • MPL-2.0: file-level copyleft.
  • Proprietary: none copyleft.
  • MPL-2.0 code in proprietary software: MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.
  • proprietary code in a project licensed under MPL-2.0: Proprietary has no copyleft.

Source Disclosure

  • MPL-2.0: licensed files and changes to them.
  • Proprietary: depends on the licence agreement.
  • MPL-2.0 code in proprietary software: MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.
  • proprietary code in a project licensed under MPL-2.0: See Proprietary source-disclosure conditions.

Attribution

  • MPL-2.0: Covered files and their modifications stay under MPL-2.0.
  • MPL-2.0: Make source code of covered files available when distributing executable form.
  • MPL-2.0: Retain copyright and licence notices.
  • MPL-2.0 code in proprietary software: MPL-2.0 requires the copyright and licence notices to be kept with copies you distribute.
  • proprietary code in a project licensed under MPL-2.0: Proprietary attribution requirements apply on distribution.

Patent Considerations

  • Express patent licence: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • Patent termination clause: MPL-2.0: yes; Proprietary: depends on the licence agreement.
  • MPL-2.0 code in proprietary software: MPL-2.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 MPL-2.0: Patent terms are unknown.

Common Scenarios

ScenarioMPL-2.0 code in proprietary softwareproprietary code in a project licensed under MPL-2.0
Use as a dependency / libraryCompatible With ConditionsManual Review Required
Copy source code into the projectCompatible With ConditionsManual Review Required
Modify the componentCompatible With ConditionsManual Review Required
SaaS / network service (not distributed)Generally CompatibleManual Review Required
Internal / private use onlyGenerally CompatibleManual Review Required
Resell the softwareCompatible With ConditionsManual Review Required
White-label / rebrandCompatible With ConditionsManual Review Required

FAQ

Can I use MPL-2.0 code in proprietary software?

Using MPL-2.0-licensed code in a proprietary project is generally possible if the listed conditions are met. MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

Can I use proprietary code in a project licensed under MPL-2.0?

Using Proprietary-licensed code in a project under MPL-2.0 requires review of the actual licence terms. The component is under proprietary terms. Whether it may be used, modified, redistributed, resold or white-labelled depends entirely on the specific licence agreement.

Do I have to publish my source code when I use MPL-2.0 code?

MPL-2.0 is file-level copyleft: its files must remain under MPL-2.0 and their source must be made available when distributed. Your own separate files in the larger work may use other terms, including proprietary terms.

Can I use MPL-2.0 code in a closed-source SaaS?

Using MPL-2.0-licensed code in a proprietary project is generally compatible in this scenario. MPL-2.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.