Skip to content
Home

GNU Affero General Public License (AGPL)

A copyleft free-software license that requires making source code available for distributed programs and for software run over a network, designed to address the SaaS loophole.

The GNU Affero General Public License (AGPL) is a free software copyleft license created to ensure that users of networked software enjoy the same freedoms as users of locally run programs. It is commonly applied to server-side software and web services, including web servers and web applications. The AGPL shares many goals with the GNU General Public License but includes a special provision to cover software accessed over a network.

Key characteristics

The AGPL permits using, copying and modifying covered code, and it requires that recipients be offered access to the corresponding source code. A defining feature is the network-use requirement: if you run a modified AGPL-covered program and let others interact with it remotely, you must provide those users access to the modified source. For reference to official wording, see the license text.

Typical obligations

  • Disclose corresponding source when you distribute the program to others.
  • Provide access to source to users interacting with the program over a network.
  • Retain copyright notices and license terms in downstream copies.

History and purpose

The AGPL was developed to close what is sometimes called the "service-as-a-software" gap: organizations could modify GPL-covered server software and offer it as an online service without distributing binaries, thus avoiding the GPL's source-sharing trigger. By adding a network-use clause, the AGPL makes it harder to avoid releasing improvements to the community when software is made available over the Internet. It is often advocated within the free software movement for protecting user freedom in the cloud era.

Compatibility, versions and practical use

There are multiple versions of the AGPL; compatibility with other licenses and practical implications vary. Projects choose the AGPL when they want to ensure that enhancements made by service providers are shared back. Some organizations prefer permissive licenses to encourage wider adoption, while others use the AGPL to preserve reciprocity. Lawyers and maintainers often compare AGPL's trade-offs when deciding whether its network clause fits a project's goals.

Notable distinctions and examples

The AGPL differs from the GPL primarily by the explicit requirement to offer source to network users, addressing concerns about software delivered as a service (SaaS). This has practical effects: hosting providers running AGPL software that they have modified will need to make those modifications available. For more implementation and policy guidance, readers consult project documentation and community resources linked from official pages and repositories.

For further reading, consult license guides, project FAQs and authoritative commentary to understand how the AGPL interacts with deployment models, contributor agreements and company policies.

Related articles

Author

AlegsaOnline.com GNU Affero General Public License (AGPL)

URL: https://en.alegsaonline.com/art/39331

Share