This post summarizes the types of software licenses.
When comparing software licenses, some are more permissive or restrictive than others, indicating that the limitations of use are more expanded or limited. These licenses are introduced on this post in descending order of permissiveness (or ascending order of restrictiveness).
This post is part of the series of articles, whose main post is Software Licenses.
List of Types of Software Licenses
An important initial remark is that a software without license is not equivalent to public domain. A software without license would get the default copyright granted on a given country, and it is not generally a recommended practice, especially if the plan is to release FOSS.
The main types of software licenses described on this post are:
Free and Open-Source Software Licenses
You can read more details about free and open-source software licenses on this post.
FOSS licenses can be divided into:
- Public domain & equivalent
Public domain & equivalent
Public domain software means that no one has ownership over the source code, as the original authors have relinquished all copyright and related rights.
Apart from public domain, there are licenses that are considered public-domain-equivalent licenses. They are very short licenses that keep no rights on the software.
People considering releasing a software as public domain or equivalent should take into account that releasing a code into the public domain or equivalent could bring legal issues to software contributors and users, like patent-related claims from contributors or third parties.
Most FOSS projects go for permissive licenses instead on public domain or public-domain-equivalent licenses because they are seeking a minimal license that prevents the contributors or users being sued.
The most common public-domain-equivalent license is the Unlicense.
You can read more about public domain and public domain-equivalent licenses on this post.
Permissive licenses are also known as BSD-style or Apache-style licenses.
Unlke public domain or public domain equivalent licenses, they contain requirements about how the software can be used, modified or redistributed while allowing compatibility with software released under other licenses, including proprietary.
Because of this, public domain, public-domain equivalent and permissive source code is more prone to be reused in commercial or patented projects compared to restrictive licenses.
The most popular permissive licenses are MIT and Apache 2.0.
You can read more about permissive licenses on this post.
Copyleft licenses are also known as restrictive, share-alike or reciprocate licenses.
These licenses allow you to modify the licensed code and distribute it as a new work as long as you do it under the same software license.
Inside copyleft, there two different sub-types of licenses:
- Weak: code can be combined with other licenses, including proprietary.
- Strong: code cannot be combined with proprietary licenses
Example of copyleft licenses:
- Weak copyleft
- Mozilla Public License (MPL)
- Eclipse Public License (EPL) 2.0
- European Union Public License (EUPL) 1.2
- LGPL v2.1
- Strong copyleft
- GNU GPL v2.0
- GNU GPL v3.0
- GNU Affero GPL (AGPL) v3.0
GPL licenses are the most popular among copyleft licenses.
Take into account that all GPL licenses have two options: the “only” and the “or later”. If you choose the GPL “only” version, you only can apply the selected version of the GPL license. If you choose the “or later” version, it means that it will higher GPL versions.
FSF recommends that people choose the “or later” version because copyright lasts decades later than people deceases, and software licenses may require to update or adapt to new unpredictable situations.
On the other hand, choosing the “or later” version is an act of trust towards the organization issuing the new versions.
The FSF has written a very complete article about what is copyleft on this external link.
You can read more information about copyleft software licenses on this post.
Proprietary software is the one that has a license that is not considered free and open source software (FOSS).
Freeware is proprietary software that can be obtained for free. Do not confuse this term with free software or FOSS.
There are different types of proprietary software:
- Open core
Source-available, shared, viewable or read-only open-source software licenses are those that allow the code to be seen but is has restrictions on its modification, distribution and use so it makes it not eligible for FOSS.
Some popular examples of source available software licenses are Business Software License (BSL) and Server Side Public License (SSPL).
To read more about source-available licenses, please check this post.
Open core software contains free and open source software (FOSS) and closed source on different parts of the source code. Technically, open core software is closed source, as any software project containing any closed source code in it must be considered as such.
You can read more about open core on this post.
Closed source is usually released under the idea that all rights are reserved. It is generally used for proprietary software where the source code may not be accessed, modified or redistributed.
Examples of closed source are Microsoft Windows and macOS.
You might also be interested in…
- Synopsis Editorial Team; “5 types of software licenses you need to understand“; Synopsis; 2020-04-07.
- Snyk; “Open sources licenses: Types and comparisons“; Snyk
- tl;drLegal; “Software Licenses in Plain English“, tl;drLegal
- Aner Mazur; “Apache license 2.0, MIT license or BSD license : Who is the fairest of them all?“; Snyk; 2017-11-01.
- quorten; “CC0 or Unlicense?“; GitHub
- Steven J. Vaughan-Nichols; “Open source vs sort-of open source“; The Register, 2023-10-27