LICENSEWARE

Blender add-ons, extensions and Python API licensing

This article is about the licence conditions for Python scripts, add-ons and extensions that use the Blender Python API, and the terms of the extensions.blender.org platform. For Blender itself see Blender GPL licensing and distribution. It is not legal advice.

On This Page

Blender embeds a Python interpreter and exposes its interface and tools through a Python API, and the Blender Foundation treats that API as part of the software. The licence page explains that Blender’s Python API is an integral part of the software, used for example to define the user interface or to develop tools, so the GPL requires that such scripts, if published, are shared under a GPL-compliant licence.[1] Add-ons are therefore the place where Blender’s open-source licence meets commercial software distribution. This article covers the rules for Blender add-ons and extensions as the Foundation states them, including the terms of the extensions.blender.org platform.

Scripts and add-ons under the GPL

The Foundation’s FAQ gives the core rule: if Python scripts are shared or published, they have to be made available under the GNU GPL as well, if they use Blender Python API calls.[2] Three consequences follow from the licence page and the FAQ.

First, private use is unconstrained. The FAQ states that anything created as an artist with Blender is the creator’s sole property, and that this also applies to the add-ons and Python scripts the creator writes for Blender.[2] The licence obligation attaches when a script is shared or published, not when it is written or used internally.

Second, add-ons can be sold, but only on GPL terms. The FAQ says a developer can sell add-ons if the add-on and its sources are provided to the clients under the GNU GPL, and the client then has all the rights the GPL offers, including free use and redistribution.[2] The licence page states the same point from the seller’s side: the sale is restricted to the download service itself, and customers receive the script under the same licence with the same free conditions as everyone has for Blender.[1] On the Foundation’s description, the price paid is for the download service, and the customer’s rights come from the GPL.

Third, the rule is triggered by use of the Blender source code or API. The FAQ lists the conditions under which a software product can be licensed however its author wishes: it operates outside of Blender, it uses no Blender source code or API calls including the Python API, it produces data for Blender to operate on, and it executes Blender to read and operate on that data.[2] Stand-alone converters, exporters that write files, and render-management tools that launch Blender and exchange data with it can therefore be proprietary as long as they stay on that side of the line. The licence page adds that under certain conditions it is possible to make Blender, or scripts using the Python API (bpy), work with proprietary or commercial software.[1]

The FAQ also addresses .blend files that embed scripts. It says the .blend file is program output and the user’s sole copyright, but that when a .blend file embeds Python scripts which provide bindings to other libraries or facilities, the add-on and script rules apply to those scripts.[2]

The Extensions platform

Since Blender 4.2, add-ons and themes are distributed as extensions. The manual describes extensions as add-ons or themes used to extend Blender, shared in online platforms and installable from within Blender, with extensions.blender.org as the official platform and other third-party sites supported if they follow the Extensions Platform specification.[10] The older style is called a legacy add-on: the manual says that with the introduction of Extensions in Blender 4.2 the old way of creating add-ons is considered deprecated, that legacy add-ons continue to be supported, and that maintainers are urged to convert them.[5]

Licence requirements

The manual says the platform supports only free and open-source extensions compliant with Blender’s licence. Add-ons must be under GNU General Public License version 3 or later, themes should be GPL 3 or later but any GPL-compatible licence is supported, and assets used in add-ons must be Public Domain (CC0).[4] The terms of service repeat this in section 1: uploaded add-ons must be wholly compliant with GPL version 3 or later, other extensions such as themes must be compatible with it, binary files and other assets such as images, SVG files and fonts must be CC0, and bundled copyrighted code must be credited in the manifest.[3] The manifest declares the licence with SPDX identifiers; the manual’s example uses SPDX:GPL-3.0-or-later and says some licences require a copyright entry in the form “Year Name”.[7]

The consequence for a commercial developer is that a proprietary add-on cannot be listed on extensions.blender.org. The terms also forbid additional requirements that block functionality, such as purchasing additional content, registering on an external service, payments or keys, and they say extensions that connect to external sites with a login are acceptable only if the offering on that site is complete and aligned with Blender’s mission; a mixed product with optional commercial extras will not be accepted.[3]

Branding and advertising

Section 2 of the terms bars the name “Blender” from extension names, bars the Blender logo or icon from thumbnails, icons or preview images, and bars statements that suggest the extension is supported or endorsed by Blender.[3] Section 6 bars advertisements inside the Blender interface, including links to commercial or funding sites, donation buttons and prompts to purchase, although external funding links are allowed in the platform description; it also bars showcasing features of commercial versions.[3] This aligns with the Foundation’s trademark policy, which allows describing an add-on without suggesting that Blender Foundation publishes, affiliates with or endorses it.[9]

Technical and content requirements

The terms of service and developer guidelines also set technical conditions that affect how an add-on can be built. Extension code must be reviewable, with no obfuscated code or byte code; source code must be fully written in Python and may not depend on externally pre-compiled packages; extensions must be self-contained and must not load remote code or require external functional components downloaded from elsewhere; and extensions intended for internal, private or closed-group use may not be listed.[3] Extensions that connect to the internet must request permission in the manifest, state the reason, respect the “Allow Internet Access” preference and not send data to remote locations without user authorisation.[3] The manual notes that Blender cannot prevent third-party add-ons from violating this rule, and the developer handbook says the guidelines are requirements for extensions.blender.org and recommended for add-ons hosted elsewhere.[5][8]

Third-party Python modules are bundled as wheels. The manual requires that wheels be bundled unmodified from Python’s package index and that they include their dependencies; wheels with binary content should be supplied for each supported platform, and the build command can split platform builds.[6] Licence managers should note that a bundled wheel carries its own licence, which the manifest copyright section and the GPL-compatibility requirement must accommodate.

Practical consequences for asset managers

An organisation that develops internal add-ons and does not distribute them has no GPL publication duty under the Foundation’s statements. An organisation that distributes an add-on to customers, by sale or free download, must provide it under the GPL with source. An organisation that buys add-ons from a third party should expect to receive them under the GPL, which means the vendor’s EULA cannot prohibit the buyer from sharing them where the add-on uses the Python API. Products that run outside Blender and exchange files can keep proprietary terms. Where a vendor’s product mixes the two, the platform terms state that a mixed product with optional commercial extras will not be accepted when the extension connects to an external site that requires a login.[3]

Out of scope

This article does not cover the contract terms of third-party add-on marketplaces, which are not Blender Foundation documents, nor the licences of individual add-ons. It does not interpret where the boundary lies between a derived work and an independent program in any jurisdiction, and it does not cover Blender running as a Python module or embedded in other software beyond the Foundation’s statements above.

References

  1. License (Blender)Add-ons (Python scripts) section and compliance statements. No effective date stated.Retrieved 2026-10-08.
  2. Frequently Asked Questions (Blender)Add-on, Python script and .blend questions. FAQ footnote records an edit on 2024-08-16.Effective 2024-08-16. Retrieved 2026-10-08.
  3. Extensions Terms of Service (extensions.blender.org)Sections 1 to 6. Last updated 10 August 2026.Effective 2026-08-10. Retrieved 2026-10-08.
  4. Extension Licenses (Blender 5.2 LTS Manual)Required licences for add-ons, themes and assets. No effective date stated.Retrieved 2026-10-08.
  5. Add-ons (Blender 5.2 LTS Manual)Online access, dependencies, legacy add-ons.Retrieved 2026-10-08.
  6. Python Wheels (Blender 5.2 LTS Manual)Bundling third-party Python modules.Retrieved 2026-10-08.
  7. Getting Started (Extensions, Blender 5.2 LTS Manual)Manifest fields including license and copyright.Retrieved 2026-10-08.
  8. Add-on Guidelines (Blender Developer Handbook)Requirements for submission to the official extensions repository.Retrieved 2026-10-08.
  9. Trademark Policy (Blender)Rules for describing add-ons. No effective date stated.Retrieved 2026-10-08.
  10. Creating Extensions (Blender 5.2 LTS Manual)Overview of extensions and the official platform.Retrieved 2026-10-08.

See also

Catalog Rows Cited

2Metrics3Rules

Esc