Publishing code without a licence does not mean it is free to use. Legally, it means nobody has permission to use it at all. Choosing the right licence is one of the first decisions you make when going open source, and it has long-term consequences.
Here is what the three most common licences actually allow.
Comparison at a Glance
| Licence | Can use commercially | Must share changes | Must keep licence notice | Allows proprietary linking |
|---|---|---|---|---|
| MIT | Yes | No | Yes | Yes |
| Apache 2.0 | Yes | No | Yes | Yes |
| GPL v3 | Yes | Yes | Yes | No |
MIT
The simplest permissive licence. Anyone can use, copy, modify, merge, publish, distribute, sublicense, or sell your code with almost no restrictions. The only requirement is that the original licence notice is kept in distributions.
MIT is the most widely used open source licence for a reason: it gets out of the way. It is the right choice when you want maximum adoption and have no commercial restrictions to enforce.
Apache 2.0
Also permissive, but with two additions over MIT: it includes an explicit patent grant (contributors grant users a licence to any patents covering their contribution) and it requires that modifications be documented.
Apache 2.0 is preferred by larger organisations and projects where patent clarity matters. If you are building infrastructure or developer tooling that enterprises will adopt, Apache 2.0 is worth considering over MIT.
GPL v3
The GPL is a copyleft licence. Any software that uses or distributes GPL-licensed code must also be released under the GPL. This is the "viral" property that makes it controversial in commercial contexts.
If you want to ensure that improvements to your project always flow back to the community, GPL is the tool for that. If you want companies to be able to use your code in proprietary products, it is not.
GPL v3 is commonly used for operating system components, developer tools intended for the open source ecosystem, and projects where the author wants to prevent commercial exploitation without contribution.
Which Should You Choose?
- MIT — default for most libraries, tools, and projects where adoption matters most
- Apache 2.0 — when you want patent protection and work in an enterprise-adjacent space
- GPL v3 — when you want copyleft enforcement and are comfortable limiting commercial use
If you plan to offer a paid hosted version of your open source product, look into dual licensing or the AGPL, which closes the "SaaS loophole" that the standard GPL does not address.
Find More on LiftOff
Building something open source? LiftOff is a launch platform where makers share what they build. Submit your project and get discovered.