Skip to content
codelicenses Value my repos

What are the different types of software license?

Four families. Permissive open source asks for attribution and nothing else. Copyleft open source requires derivative works to stay open. Source-available lets you read the code under restrictions that are not open source. Proprietary grants use under negotiated terms without source. Everything else is a variation inside one of these.

Updated 14 September 2026


Most explanations of this list twenty licences. There are four families, and every licence you will meet sits in one of them.

The four families

Permissive open source

Attribution and nothing else. Use commercially, modify, close the source of your modifications, sell the result. The only obligation is carrying the copyright notice.

MIT, BSD, and Apache 2.0. Apache adds an explicit patent grant, which is why it tends to be the choice where legal review is involved. Detailed in the MIT license and open source licenses compared.

Copyleft open source

Free to use on the condition that derivative works carry the same freedoms. Distribute something built on GPL code and that thing must be GPL too, with source.

GPL, LGPL for libraries, AGPL extending the obligation to network services, MPL applying it per file. The obligation is the point, not a side effect: it keeps derived work open rather than letting it be absorbed.

Source-available

The category that confuses everyone, because the source is right there and it still is not open source.

Open source has a definition, and central to it is the right to use the software for any purpose, including competing with the author. Source-available licences deliberately remove that right while keeping the code readable.

BUSL. Restricted commercial use for a period, typically four years, after which it converts to an open licence. A time-delayed compromise.

SSPL. Requires anyone offering the software as a service to open source their entire service stack. Written specifically to stop cloud providers reselling databases they did not build.

Elastic License and various Fair Source licences. Similar shape: read, modify, use internally, do not offer it as a competing service.

These exist because permissive licensing produced an outcome authors did not anticipate, where a hyperscaler runs your software as a managed service at scale and contributes nothing back. Whether that justifies leaving open source is genuinely argued. What is not arguable is that these licences are not open source, and calling them that is the marketing move to watch for.

┌─ WORTH CHECKING ─────────────────────────────────────────────────────┐
│                                                                      │
│  Private, finished, owned by you, and doing nothing.                 │
│                                                                      │
│  [ See what your repos are worth ]                                   │
│                                                                      │
└──────────────────────────────────────────────────────────────────────┘

Proprietary

A negotiated grant of permission, usually without source, on terms covering how many people may use it, for how long, where, and with what support. Perpetual licences, subscriptions, per-seat, per-core, usage-based: all variations within this family.

Most software anyone pays for works this way, and the terms are whatever the two parties agreed.

Dual licensing

Not a fifth family but a strategy worth knowing. The same code offered under two licences: a strong copyleft licence for free use, and a commercial licence for companies that want to avoid the copyleft obligation.

It only works if you own all the rights, which is why dual-licensed projects require contributor licence agreements. Accept one outside contribution without one and you can no longer relicense your own project.

Where your own work sits

Probably none of the above.

Code written for a client is governed by the contract, which usually either assigns ownership outright or grants a bespoke licence written by somebody’s solicitor. That is a different question, worked through in work for hire versus license and who owns the code you wrote for a client.

And private code you own carries no meaningful licence at all, because a licence governs distribution and you have not distributed anything. That turns out to be the interesting position to be in rather than the empty one, for reasons set out in your MIT-licensed repo is worth nothing.

Common questions

Is source-available the same as open source?
No. Open source has a specific definition that includes the right to use the software for any purpose, including commercially and competitively. Source-available licenses like BUSL and SSPL restrict exactly that, which is their point. You can read the code; you cannot do whatever you like with it.
What is dual licensing?
Offering the same code under two licenses, typically a strong copyleft license for free use and a commercial license for companies that do not want the copyleft obligation. It only works if you own all the rights, which is why such projects require contributor license agreements.
What is a proprietary license?
A negotiated grant of permission to use software, usually without source access, on terms covering seats, term, territory, and support. Most commercial software you pay for works this way.
Which type applies to code I wrote for a client?
Usually none of these. Client work is governed by the contract you signed, which typically either assigns ownership outright or grants a bespoke licence. That is a different question and it is covered in the guides.
Does the license type affect whether I can license code to AI labs?
Only indirectly. What matters is whether the code was ever public and whether you own it. A private repository can carry any license text at all and still be licensable, because the licence in the file governs distribution you never made.

WORTH CHECKING

You have repos you will never open again.

Private, finished, owned by you, and doing nothing.

That is the code labs pay to license. Non-exclusively, so you keep it.

See what your repos are worth