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 Apache-2.0-licensed code in a project under GPL-2.0
Likely Incompatible
Using Apache-2.0-licensed code in a project under GPL-2.0 is likely incompatible in this scenario, as the licence terms are generally understood.
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 issueApache-2.0 permits commercial use.
Modification
No issueThe scenario does not include modifying the component. Modification under Apache-2.0: permitted.
Distribution
ConflictThe FSF and the Apache Software Foundation consider Apache-2.0 incompatible with GPL-2.0-only, because Apache-2.0's patent termination and indemnification terms are additional restrictions GPL-2.0 does not allow.
Source Disclosure
No issueApache-2.0 does not require you to publish source code.
Attribution
ObligationsApache-2.0 requires the copyright and licence notices to be kept with copies you distribute. If the Apache-2.0 component ships a NOTICE file, its attribution notices must be reproduced in your distribution (section 4(d)).
Patent Considerations
ConflictThe FSF and the Apache Software Foundation consider Apache-2.0 incompatible with GPL-2.0-only, because Apache-2.0's patent termination and indemnification terms are additional restrictions GPL-2.0 does not allow.
Copyleft
ConflictThe FSF and the Apache Software Foundation consider Apache-2.0 incompatible with GPL-2.0-only, because Apache-2.0's patent termination and indemnification terms are additional restrictions GPL-2.0 does not allow.
SaaS / Network Use
No issueThe scenario does not include offering the software over a network. Apache-2.0 has no network-use clause.
Proprietary Use
No issueThe project is not declared proprietary.
Why?
- The FSF and the Apache Software Foundation consider Apache-2.0 incompatible with GPL-2.0-only, because Apache-2.0's patent termination and indemnification terms are additional restrictions GPL-2.0 does not allow.
- Apache-2.0 permits commercial use.
- Apache-2.0 does not require you to publish source code.
- Apache-2.0 requires the copyright and licence notices to be kept with copies you distribute.
- If the Apache-2.0 component ships a NOTICE file, its attribution notices must be reproduced in your distribution (section 4(d)).
- Apache-2.0 permits distribution.
- Apache-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.
What do I need to do?
- Include the Apache-2.0 copyright notice and licence text with the distributed software (source, binary documentation or an "open-source notices" screen).
- Reproduce the contents of any Apache-2.0 NOTICE file in your distribution's notices.
- Check whether the GPL-2.0 project is actually licensed "GPL-2.0-or-later"; if so the combination can be distributed under GPL-3.0.
- Otherwise, replace the Apache-2.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
- Distributing a GPL-2.0-only work that incorporates Apache-2.0 code is generally considered a licence violation.
- Initiating patent litigation over the Apache-2.0 work ends your patent licence for it.
Authoritative Sources
- Licence stewardApache Software Foundation: Apache License v2.0 and GPL Compatibility
- FSFGNU Project: Various Licenses and Comments about Them
- SPDXSPDX License List: Apache-2.0
- OSIOpen Source Initiative: Apache License, Version 2.0
- Official textApache License, Version 2.0 (official text)
- SPDXSPDX License List: GPL-2.0-only
- OSIOpen Source Initiative: GNU General Public License version 2
- Official textGNU GPL v2.0 (official text)
- FAQGNU Project: Frequently Asked Questions about the GNU Licenses
Rules applied
APACHE_GPL2_INCOMPATIBLE (CONFLICT), APACHE_COMMERCIAL_USE (INFO), NO_SOURCE_DISCLOSURE (INFO), APACHE_ATTRIBUTION (INFO), APACHE_NOTICE_FILE (INFO), APACHE_DISTRIBUTION (INFO), APACHE_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.