Skip to content
codelicenses Earn $500+ per repo

What is copyleft?

Copyleft is a licence condition requiring that derivative works be released under the same licence as the original. It is the single feature separating the GPL family from permissive licences like MIT, BSD and Apache, and it is the whole of the practical difference between them. Permissive licences ask for attribution; copyleft licences ask for reciprocity.

Updated 23 September 2026


Every comparison of open source licences is really a comparison along one axis, and copyleft is that axis. Understand this one condition and the licence landscape stops being a list and becomes a line.

The mechanism

A copyleft licence grants the usual freedoms: use, copy, modify, distribute. Then it attaches a condition. If you distribute a derivative work, you must release it under the same licence, with source.

That is the whole thing. The freedoms travel with the code and cannot be stripped off downstream. Someone can take copyleft code and build on it; they cannot take it and close it.

Copyleft is built on copyright, not opposed to it. The author holds copyright, and uses it to enforce the condition. Remove copyright and there is nothing to attach the condition to, which is why a public domain dedication like the Unlicense cannot be copyleft.

Strong, weak, and network

The condition comes in three strengths, and the strength is the only thing that distinguishes the licences within the family.

Weak copyleft confines the obligation. Under the MPL, modified files must stay open but the larger work can be proprietary. Under the LGPL, the library itself stays open but software that links to it need not. Both exist so that copyleft code can be used inside proprietary products without infecting them.

Strong copyleft is the GPL. Distribute a work derived from GPL code and the whole work must be GPL, with source. This is deliberate and it is the point.

Network copyleft is the AGPL, which closes a gap in the GPL. Under the GPL, running modified software as a network service is not distribution, so nothing has to be released. The AGPL treats making the software available over a network as triggering the obligation.

What triggers it

Distribution. That is the trigger for the GPL family, and it is more specific than people assume.

Using GPL software internally, modifying it, running it on your servers: none of that is distribution. Nothing has to be released. Shipping it to customers, bundling it in a product, providing binaries: that is distribution and the obligation applies.

Linking is where it gets contested. The GPL’s position is that a program linking to a GPL library is a derivative work. The LGPL exists because that position stops commercial adoption of libraries, and it explicitly permits linking without the obligation.

The AGPL adds network use. If users interact with modified AGPL software over a network, they are entitled to the source.

┌─ WORTH CHECKING ─────────────────────────────────────────────────────┐
│                                                                      │
│  Private, finished, owned by you: $500+ each to AI labs.             │
│                                                                      │
│  [ See what my repos are worth ]                                     │
│                                                                      │
└──────────────────────────────────────────────────────────────────────┘

Why companies ban the AGPL

The network trigger is the reason. A company running a modified AGPL component anywhere in a service has an obligation to release that component’s source. Auditing an entire stack for AGPL dependencies, and for modifications to them, is expensive. Most legal teams conclude that a blanket ban is cheaper than the audit.

So AGPL projects see less adoption inside large companies, and know it. That is often the intended effect: the authors would rather a company pay for a commercial licence than run the software for free, which is the model behind dual licensing.

Choosing a side

Permissive if you want maximum adoption and do not mind derivatives being closed. Copyleft if you want derivatives to stay open and are willing to lose the users who cannot accept that. Weak copyleft if you want a library used everywhere but the library itself kept open.

The full comparison, licence by licence, is in open source licenses compared. Whichever side you choose, the decision applies to future versions only: copies already distributed stay under the licence they were distributed with.

What copyleft does not do

It does not keep your code out of training corpora.

Copyleft governs the distribution of derivative works. Whether training a model on code creates a derivative work is a live argument that will be settled in courts over years. In the meantime, as a matter of fact rather than law, public code under every licence has been collected. Copyleft did not prevent it and was never designed to.

The consequence is the same as for permissive code: public means collected, collected means no scarcity, and no scarcity means no licensing value. The code with value left is the code that was never public, under any licence. That argument is made in full on your MIT-licensed repo is worth nothing, and it applies to a GPL repository just as much.

The one place copyleft and this site’s subject genuinely meet is ownership. Copyleft only works because the author holds copyright. Licensing to a lab only works for the same reason. What copyright actually covers, before any licence is attached, is in is code protected by copyright.

Common questions

Is copyleft the opposite of copyright?
No. Copyleft is built on copyright. The author uses their copyright to attach a condition to the licence: derivatives must carry the same terms. Without copyright there would be nothing to attach the condition to.
Does using a copyleft library force me to open source my application?
Under the GPL, if you distribute software that incorporates or links to the library, generally yes. Under the LGPL, linking is allowed without that consequence. Under the MPL, only the modified files must stay open. Internal use without distribution triggers nothing under the GPL.
What is the difference between copyleft and permissive?
Permissive licences let derivative works be closed. Copyleft licences require them to stay open. Everything else about the two families is detail.
Why do companies ban AGPL?
Because AGPL treats providing the software over a network as distribution. A company running a modified AGPL component inside its service would have to release the source. Most legal teams find it simpler to ban the licence than to audit for that.
Does copyleft stop my code being used to train AI?
No. Copyleft governs distribution of derivative works. Whether training constitutes creating a derivative work is contested, but as a practical matter public code under every licence has been collected. Copyleft did not prevent it.

WORTH CHECKING

Earn $500+ on every repo you never open.

Private, finished, owned by you: $500+ each to AI labs.

Non-exclusive, so you keep the code and are paid again on every re-license.

See what my repos are worth