Software License Compatibility Checker
Check whether code under one licence can be used in a project under another, for commercial, SaaS, proprietary, modification and distribution scenarios. Free, no registration.
Using GPL-3.0-licensed code in a project under Apache-2.0
Potential Conflict
Using GPL-3.0-licensed code in a project under Apache-2.0 may conflict, depending on how the code is combined, distributed and licensed.
Confidence: high
Compatibility is directional: using License A code in a License B project is a different question from using License B code in a License A project. Check the reverse direction.
Commercial Use
No issueGPL-3.0 permits commercial use. Commercial use, including selling copies, is allowed; the copyleft conditions still apply to how the code is distributed.
Modification
No issueThe scenario does not include modifying the component. Modification under GPL-3.0: permitted.
Distribution
WarningUsing GPL-3.0 code in a project under Apache-2.0 is one-directional: Apache-2.0 code can go into a work under GPL-3.0, but a distributed work containing GPL-3.0 code must as a whole be licensed under GPL-3.0. Your own files may keep Apache-2.0, yet the project can no longer be distributed under Apache-2.0 alone.
Source Disclosure
WarningUsing GPL-3.0 code in a project under Apache-2.0 is one-directional: Apache-2.0 code can go into a work under GPL-3.0, but a distributed work containing GPL-3.0 code must as a whole be licensed under GPL-3.0. Your own files may keep Apache-2.0, yet the project can no longer be distributed under Apache-2.0 alone.
Attribution
ObligationsGPL-3.0 requires the copyright and licence notices to be kept with copies you distribute.
Patent Considerations
No issueGPL-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.
Copyleft
WarningUsing GPL-3.0 code in a project under Apache-2.0 is one-directional: Apache-2.0 code can go into a work under GPL-3.0, but a distributed work containing GPL-3.0 code must as a whole be licensed under GPL-3.0. Your own files may keep Apache-2.0, yet the project can no longer be distributed under Apache-2.0 alone.
SaaS / Network Use
No issueThe scenario does not include offering the software over a network. GPL-3.0 has no network-use clause.
Proprietary Use
No issueThe project is not declared proprietary.
Why?
- Using GPL-3.0 code in a project under Apache-2.0 is one-directional: Apache-2.0 code can go into a work under GPL-3.0, but a distributed work containing GPL-3.0 code must as a whole be licensed under GPL-3.0. Your own files may keep Apache-2.0, yet the project can no longer be distributed under Apache-2.0 alone.
- GPL-3.0 permits commercial use. Commercial use, including selling copies, is allowed; the copyleft conditions still apply to how the code is distributed.
- When the obligation applies, GPL-3.0 requires making available the complete corresponding source of the whole distributed work based on it.
- GPL-3.0 requires the copyright and licence notices to be kept with copies you distribute.
- GPL-3.0 permits distribution subject to its copyleft conditions.
- GPL-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.
What do I need to do?
- Distribute the combined work under GPL-3.0 with complete source code.
- Include the GPL-3.0 copyright notice and licence text with the distributed software (source, binary documentation or an "open-source notices" screen).
- If the project must stay Apache-2.0-only, replace the GPL-3.0 component or keep it as a separate program.
- Review the actual licence texts linked in the sources, and consider qualified legal advice for high-risk decisions.
Risks
- Initiating patent litigation over the GPL-3.0 work ends your patent licence for it.
Authoritative Sources
- FAQGNU Project: Frequently Asked Questions about the GNU Licenses
- FSFGNU Project: Various Licenses and Comments about Them
- SPDXSPDX License List: GPL-3.0-only
- OSIOpen Source Initiative: GNU General Public License version 3
- Official textGNU GPL v3.0 (official text)
- SPDXSPDX License List: Apache-2.0
- OSIOpen Source Initiative: Apache License, Version 2.0
- Official textApache License, Version 2.0 (official text)
Rules applied
COPYLEFT_RELICENSE_REQUIRED (WARNING), GPL_COMMERCIAL_USE (INFO), GPL_SOURCE_DISCLOSURE (INFO), GPL_ATTRIBUTION (INFO), GPL_DISTRIBUTION (INFO), GPL_PATENT_NOTICE (INFO)
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.
How the checker works
Results come from a deterministic rule engine, not from AI. Each supported licence is described by structured facts taken from SPDX, the Open Source Initiative, the GNU Project and the licence stewards: copyleft strength, source-disclosure scope, attribution, patent and network-use terms. Rules combine those facts with your scenario, and every rule that fires is listed with its identifier.
Compatibility is directional. Using MIT code in a GPL-3.0 project is generally fine, but using GPL-3.0 code in an MIT project means the distributed result must be licensed under GPL-3.0. License A is always the code you want to use; License B is the project it goes into.
Commercial use is not the same as proprietary use. Almost every open-source licence allows commercial use; the question that usually matters is whether you can keep your own source code closed when you distribute or host the result.
The engine is open source: @esdecode/license-checker on GitHub, including every rule and its tests.
What the results mean
- Generally Compatible
- The licence terms generally allow this use; notice obligations may still apply.
- Compatible With Conditions
- The use is generally possible if specific conditions are met, such as providing source code or allowing relinking.
- Potential Conflict
- A conflict is plausible depending on how the code is combined, distributed or licensed.
- Likely Incompatible
- The licence terms, as generally understood, do not permit this combination.
- Manual Review Required
- The terms are proprietary, custom or product-specific and must be read individually.
- Unknown
- A licence could not be identified, so no conclusion is drawn.