# What is the difference between GPL-2.0 and GPL-3.0?

**Short answer:** GPL-3.0 code shipped commercially: Yes.

Both are strong copyleft licenses; GPL-3.0 adds an explicit patent grant, anti-tivoization rules and compatibility with Apache-2.0.

## GPL-3.0 code shipped commercially — Yes

License: [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html) (`GPL-3.0-only`, curated)

- Every use you described is granted by GPL 3.0, and nothing you described is prohibited.

Duties: attribution, license_notice, state_changes, share_alike, source_disclosure

## Duties and notes compared
- **GPL-2.0-only**: duties attribution, license_notice, state_changes, share_alike, source_disclosure. Sublicensing is not allowed; every recipient receives a license from the original licensor. Running the software, including as a network service, does not by itself trigger the duty to share source; distributing copies does. GPL-2.0-only code cannot be combined with GPL-3.0 or Apache-2.0 code in one distributed work.
- **GPL-3.0-only**: duties attribution, license_notice, state_changes, share_alike, source_disclosure. Sublicensing is not allowed; every recipient receives a license from the original licensors (sections 2 and 10). Running the software, including as a network service, does not by itself trigger the duty to share source; conveying copies does.

Combined in one work: **compatible**.

## Context
- "Only" and "or later" matter: GPL-2.0-only code cannot be relicensed to GPL-3.0.

## Sources
- [GNU GPL v3.0](https://www.gnu.org/licenses/gpl-3.0.html)
- [Why upgrade to GPLv3](https://www.gnu.org/licenses/rms-why-gplv3.html)

## Check it yourself (free, no key)
```json
{
  "tool": "check_license",
  "arguments": {
    "license": "GPL-3.0-only",
    "intended_use": {
      "commercial_use": true,
      "redistribution": true
    }
  }
}
```
REST: POST https://www.rightshold.com/v1/licenses/check

_Computed from Rightshold's license profiles; not legal advice. Updated 2026-10-23. JSON: https://www.rightshold.com/answers/gpl-2-0-vs-gpl-3-0.json_