⚖ CodeLibra

What is Dual Licensing?

Dual licensing is a software licensing strategy where the same code is made available under two different licenses simultaneously. Users choose which license to accept based on their needs.

The Basic Concept

With dual licensing, a software project offers:

  1. An open-source license — typically a copyleft license like AGPL-3.0, which allows free use but requires derivative works to be open-sourced under the same terms

  2. A commercial license — a paid license that permits proprietary development without the copyleft restrictions

Users who are happy to comply with the open-source license's terms (like releasing their own code as open source) can use the software for free. Users who want to build proprietary, closed-source products can purchase a commercial license instead.

Why Two Licenses?

Different users have different needs:

Open-source projects and developers often want to:

  • Use, modify, and redistribute code freely
  • Contribute improvements back to the community
  • Comply with copyleft requirements

Commercial organizations often want to:

  • Incorporate open-source code into proprietary products
  • Keep their own code private and proprietary
  • Avoid copyleft restrictions that would require open-sourcing their work

Dual licensing serves both groups: it keeps the code open and freely available to the open-source community while creating a sustainable revenue stream from commercial users.

How It Works in Practice

Consider a developer who creates a useful open-source library:

Without dual licensing:

  • The library is available under a permissive license (like MIT)
  • Anyone can use it for any purpose, including large corporations
  • The developer receives nothing for commercial use of their work
  • Or, the library uses a copyleft license (like AGPL)
  • Businesses avoid it because they can't use it in proprietary products
  • The developer still receives nothing, and adoption is limited

With dual licensing:

  • The library is available under AGPL for open-source use
  • Businesses that want proprietary use purchase a commercial license
  • The developer earns revenue from commercial users
  • Open-source users still have full access under AGPL
  • Everyone gets what they need

The CodeLibra Approach

CodeLibra simplifies dual licensing by handling the complexity:

  • Standard commercial license — The CodeLibra License provides clear, consistent terms for commercial use
  • Automated transactions — No need to negotiate individual license agreements
  • Subscription model — Licensees subscribe to receive ongoing updates; licenses for covered releases are perpetual
  • Dependency management — Revenue is automatically shared when your module depends on other CodeLibra modules
  • No upfront costs — CodeLibra only earns when you do (20% commission on license revenue)

Classic vs. Voluntary Dual Licensing

CodeLibra supports two dual licensing models:

Classic Dual Licensing

  • Open-source license: Copyleft (e.g., AGPL-3.0)
  • Commercial license: Required for proprietary development
  • Best for: Developers who want to ensure commercial users pay

Voluntary Dual Licensing

  • Open-source license: Permissive (e.g., MIT)
  • Commercial license: Optional (for users who want formal licensing, support, etc.)
  • Best for: Developers who want broad adoption with optional paid support

Is Dual Licensing Right for You?

Dual licensing works well when:

  • Your software provides clear value to commercial users
  • You want to maintain open-source availability while generating revenue
  • You're willing to maintain and support the software
  • Your module can function independently or as a dependency

It may not be ideal when:

  • Your software is purely hobbyist or experimental
  • You don't want any commercial involvement
  • The software has no clear commercial use case

Next Steps