The Apache License 2.0

The Apache License 2.0 is a permissive open source license published by the Apache Software Foundation, dated “January 2004” in its header. It permits use, modification, and redistribution of software, including in proprietary products, but unlike the very short MIT and BSD licenses it is a longer, structured legal document with numbered sections covering definitions, copyright, patents, redistribution, contributions, trademarks, and warranty disclaimers.

Its most significant addition over earlier permissive licenses is an explicit patent grant. Section 3, “Grant of Patent License,” gives each recipient “a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable” patent license covering the contributors’ patent claims that are necessarily infringed by their contributions. This means a user receives not only copyright permission but also assurance against patent claims from the contributors themselves, a protection that the MIT and BSD texts do not address at all.

The patent grant comes with a defensive termination provision, often called a patent retaliation clause. The license states that if a recipient initiates patent litigation alleging that the work or a contribution within it constitutes patent infringement, then “any patent licenses granted to You under this License for that Work shall terminate.” This discourages recipients from suing contributors over the very software they are using.

The license also formalizes how contributions and notices work. Section 5 establishes that any contribution intentionally submitted for inclusion is, by default, made under the terms of the license unless explicitly stated otherwise, which clarifies the legal status of patches and pull requests. Section 4 requires that redistributors retain copyright, patent, trademark, and attribution notices and carry along any NOTICE file, while Section 6 makes clear that the license does not grant rights to use the licensor’s trademarks.

Because of its patent and contribution provisions, the Apache License 2.0 is favored by large projects and corporate-backed foundations that need clearer intellectual property terms than a one-paragraph license can offer. The Software Package Data Exchange assigns it the identifier Apache-2.0. It is widely regarded as compatible for inclusion in GPL version 3 projects, though the Free Software Foundation has noted that its patent termination terms make it incompatible with GPL version 2, an example of how license compatibility depends on the precise interaction of clauses.