What is an Open Source License?
A software license is a legal agreement that defines the rights and restrictions for using, modifying, and distributing software.
Open-source licenses specifically make the source code publicly available while establishing clear terms for how others can interact with it.
Why does this matter? Without a license, software is automatically protected by copyright law, which means others cannot legally use, modify, or distribute it. An open-source license grants these permissions explicitly.
The Two Main Categories
Open-source licenses fall into two broad categories:
- Permissive Licenses: Allow broad freedom with minimal restrictions. You can use, modify, and commercialize the software with few obligations.
- Copyleft Licenses: Require that derivative works remain open-source under the same license. They ensure the software stays free for everyone.
Popular Open Source Licenses
Permissive Licenses (Most Flexible)
MIT License ❤️
The most popular permissive license. Simple, short, and straightforward.
Key Features:
- Use, modify, and distribute freely in any form
- No copyleft requirements
- Can be used in commercial and proprietary projects
- Only requirement: include the original copyright and license notice
Best for: Projects where you want maximum adoption and don’t care how others use your code.
Apache License 2.0
A business-friendly permissive license with explicit patent protection.
Key Features:
- Free to use, modify, and distribute
- Includes patent grant protection for users
- No copyleft clause
- Requires attribution and documentation of changes
- Provides explicit patent rights
Best for: Companies and projects concerned about patent liability.
BSD 3-Clause License
A permissive license similar to MIT but with an additional clause.
Key Features:
- Use, modify, and redistribute freely
- Three conditions: include copyright notice, don’t use names for endorsement, include disclaimer
- No copyleft
- Very similar to MIT in practice
Best for: Projects wanting slightly more protection than MIT while remaining permissive.
ISC License
The simplest permissive license—even shorter than MIT.
Key Features:
- Nearly identical to MIT but with simpler wording
- Recognized by OSI as fully open source
- Minimal legal complexity
- No copyleft
Best for: Developers who want the simplest possible license.
Copyleft Licenses (Share-Alike Requirements)
GNU General Public License v3 (GPLv3) ❤️
The most popular copyleft license. Ensures software remains free forever.
Key Features:
- Strong copyleft: all derivative works must use GPLv3
- Can be used commercially, but source code must be available
- Prevents tivoization (restricting modified versions from running on hardware)
- Patent protection included
- If you distribute, you must provide source code or offer to provide it
Best for: Projects where you want to ensure all improvements remain open source.
Caution: Difficult to combine with proprietary software.
GNU Affero General Public License v3 (AGPLv3)
Like GPLv3 but for network services.
Key Features:
- Same as GPLv3 but includes “network copyleft”
- If software runs on a network server, users accessing it must receive the source code
- Prevents SaaS loopholes where companies run GPL code without sharing modifications
Best for: Web applications and services where you want to prevent proprietary forks.
Mozilla Public License 2.0 (MPL)
A balanced middle-ground license with file-level copyleft.
Key Features:
- File-level copyleft: only modified files must be shared under MPL
- New files can be proprietary
- Can combine with proprietary code in the same project
- Patent rights included
- Commercial use allowed
Best for: Projects wanting some copyleft protection without the strictness of GPL.
European Union Public Licence (EUPL)
A copyleft license tailored for European legal environments.
Key Features:
- Strong copyleft similar to GPL
- Available in all 23 EU languages
- Compatible with GPL v2, v3, and AGPL v3
- Respects moral rights (important in EU law)
- Governed by EU member state law
Best for: European projects and public administrations.
Open Software License v3.0 (OSL)
A strong copyleft license designed for network distribution.
Key Features:
- Strong copyleft like GPL
- Explicit provisions for “External Deployment” (network services)
- Similar to GPL but more suitable for web applications
- Patent protection included
Best for: Network-distributed software where you want GPL-like protections.
Minimal/No Restriction Licenses
The Unlicense
Release software into the public domain with no restrictions.
Key Features:
- No license—software is in the public domain
- No attribution required
- No restrictions whatsoever
- Simplest possible approach
Best for: Projects where you want zero legal restrictions.
Comparison Table
| License | Permissive | Commercial Use | Copyleft | Patent Protection | Best For |
|---|---|---|---|---|---|
| MIT | ✅ | ✅ | ❌ | ❌ | Maximum adoption |
| Apache 2.0 | ✅ | ✅ | ❌ | ✅ | Companies, patent concerns |
| BSD 3-Clause | ✅ | ✅ | ❌ | ❌ | Similar to MIT |
| ISC | ✅ | ✅ | ❌ | ❌ | Simplicity |
| GPLv3 | ❌ | ✅* | ✅ | ✅ | Ensuring freedom |
| AGPLv3 | ❌ | ✅* | ✅ | ✅ | Web services |
| MPL 2.0 | ⚠️ | ✅ | ⚠️ | ✅ | Balanced approach |
| EUPL | ❌ | ✅* | ✅ | ✅ | EU projects |
*Can be used commercially but with source code obligations.
How to Choose the Right License
Ask yourself these questions:
-
Do you want others to keep improvements open source?
- Yes → Use a copyleft license (GPL, AGPL, EUPL)
- No → Use a permissive license (MIT, Apache, BSD)
-
Are you concerned about patent claims?
- Yes → Use Apache 2.0 or GPL
- No → MIT or BSD is fine
-
Is this a web service or network application?
- Yes → Consider AGPL or OSL to prevent SaaS loopholes
- No → Any license works
-
Do you want maximum adoption?
- Yes → MIT (most popular)
- No → Choose based on your values
-
Are you in Europe?
- Yes → EUPL is an option
- No → International licenses work fine
Quick Decision Guide
For maximum adoption: MIT
For commercial projects: Apache 2.0
To ensure freedom: GPLv3
For web services: AGPLv3
For balanced approach: MPL 2.0
For simplicity: ISC or Unlicense
Resources
- Open Source Initiative - Official license approvals
- Choose a License - Interactive license selector
- SPDX License List - Complete license database
FAQ
Can I change my license later? Only if you own all the copyright. If you have contributors, you need their permission.
Can I use code from multiple licenses? Yes, but you must comply with all licenses. Some combinations are incompatible (e.g., GPL + proprietary).
Do I need a lawyer to choose a license? For most projects, no. Use established licenses from OSI. For commercial products, consult a lawyer.
What if I don’t include a license? Your code is automatically copyrighted. Others cannot legally use it without permission.