FOSSA Logo

Permissive Licenses

Open source licenses that impose minimal restrictions on the redistribution and use of software, allowing for incorporation into proprietary products with few requirements beyond attribution.

What are Permissive Licenses?

Permissive licenses are a category of open source software licenses that grant users extensive rights to use, modify, and distribute the software while imposing minimal restrictions. Unlike copyleft licenses such as the GPL, permissive licenses allow the licensed code to be incorporated into proprietary software without requiring that the resulting work be open source.

These licenses typically require only that the original copyright notice and license text be retained, making them particularly popular in commercial settings and for libraries or components intended for wide adoption across diverse projects. Their simplicity and flexibility have contributed to the widespread use of permissively licensed software throughout the technology industry.

Common Permissive Licenses

MIT License

One of the most popular and simplest permissive licenses:

  • Key Provisions: Permission to use, copy, modify, merge, publish, distribute, sublicense, and sell
  • Attribution Requirement: Must include the original copyright notice and license text
  • Liability Limitations: Disclaims warranties and limits liability
  • Brevity: Extremely short and easy to understand
  • Compatibility: Compatible with virtually all other licenses

Apache License 2.0

A more comprehensive permissive license with modern provisions:

  • Patent Grant: Explicit patent license from contributors
  • Patent Termination: Defense against patent litigation
  • Contribution Terms: Clear terms for contributions
  • Trademark Restrictions: Prohibits use of contributors' trademarks
  • Attribution Requirements: Includes NOTICE file preservation

BSD Licenses

A family of licenses with varying requirements:

  • 3-Clause BSD: Prohibits using contributors' names for endorsement
  • 2-Clause BSD (Simplified): Removes the non-endorsement clause
  • 0-Clause BSD (0BSD): Eliminates all conditions except liability disclaimers
  • Historical 4-Clause: Original version with advertising clause (now discouraged)
  • FreeBSD License: Variant used by the FreeBSD project

ISC License

A simplified BSD-style license:

  • Functional Equivalent: Similar permissions to the Simplified BSD license
  • Streamlined Text: Even more concise than BSD licenses
  • Minimal Requirements: Only requires preservation of copyright and license
  • Clarity: Written in simpler, more straightforward language
  • Common Usage: Popular in the Node.js ecosystem

Unlicense / Zero-Clause Licenses

Licenses that approximate public domain dedication:

  • Unlicense: Waiver of all copyright interest
  • CC0: Creative Commons Zero, closest to public domain dedication
  • WTFPL: Do What The F*** You Want To Public License
  • 0BSD: BSD Zero Clause License
  • Public Domain Equivalent: Functionally similar to public domain

Requirements and Obligations

Attribution Requirements

How to properly provide attribution:

  • Copyright Notice Preservation: Retaining original copyright statements
  • License Text Inclusion: Including the full license text
  • Notice Files: Maintaining NOTICE files (when required)
  • Binary Distribution: Attribution requirements in binary distributions
  • Documentation Requirements: Including notices in documentation

Modification Disclosure

Handling modifications to permissively licensed code:

  • Change Notification: Requirements to indicate changes
  • Modification Marking: Identifying modified files
  • Original Source: Requirements regarding original source availability
  • Author Attribution: Distinguishing original authors from modifiers
  • Version Differentiation: Distinguishing from original versions

Trademark Considerations

Trademark issues with permissively licensed software:

  • Name Restrictions: Limitations on using project or author names
  • Logo Usage: Guidelines for using associated logos
  • Endorsement Prohibitions: Restrictions on implied endorsements
  • Trademark vs. Copyright: Distinguishing between these different protections
  • Brand Integrity: Protecting the brand identity of open source projects

Permissive vs. Copyleft Licenses

Philosophical Differences

Contrasting underlying philosophies:

  • Freedom Prioritization: Different priorities regarding user and developer freedom
  • Software Commons: Different approaches to building a software commons
  • Community vs. Adoption: Balancing community protection and widespread adoption
  • Historical Context: Origins and evolution of different licensing approaches
  • Free Software vs. Open Source: Nuances between these movements

Business Implications

Business considerations between license types:

  • Commercial Integration: Ease of incorporating into commercial products
  • License Compatibility: Broader compatibility of permissive licenses
  • Downstream Obligations: Minimal downstream obligations with permissive licenses
  • Competitive Advantages: Different competitive advantages of each approach
  • Community Relations: Impact on relationship with developer communities

Technical Implementation

Technical aspects of license compliance:

  • Code Isolation: Less need for technical isolation with permissive licenses
  • Linking Considerations: More flexibility in linking relationships
  • Derivative Works: Simpler derivative work analysis
  • Distribution Models: Freedom in choosing distribution models
  • Integration Methods: Greater flexibility in integration methods

License Compatibility

Compatibility with Copyleft Licenses

How permissive licenses work with copyleft licenses:

  • One-Way Compatibility: Permissive code can be used in copyleft projects
  • Relicensing Possibilities: Options for relicensing permissive code
  • Project Combinations: Combining projects with different licenses
  • Library Usage: Using permissively licensed libraries in copyleft projects
  • License Transitions: Transitioning between license types

Multi-licensed Code

Working with multiple licenses:

  • Dual Licensing: Code available under multiple licenses
  • License Selection: Choosing which license to apply
  • License Stacking: Dealing with layers of licenses
  • Contributor Agreements: Managing contributions to multi-licensed projects
  • License Compatibility Analysis: Ensuring compatibility among multiple licenses

Mixed License Codebases

Managing mixed license environments:

  • Component Isolation: Separating differently licensed components
  • Dependency Management: Managing dependencies with various licenses
  • License Mapping: Tracking licenses throughout the codebase
  • Architectural Considerations: Designing architecture with licensing in mind
  • Compliance Documentation: Documenting license boundaries

Using Permissively Licensed Software

In Commercial Products

Integrating into proprietary software:

  • Compliance Minimal Requirements: Meeting the basic requirements
  • Attribution Methods: Options for providing required attribution
  • Competitive Implications: Competitive effects of using open components
  • Patent Considerations: Patent implications of different permissive licenses
  • Commercialization Strategies: Strategies for commercial products

In Open Source Projects

Using in other open source projects:

  • License Selection: Choosing compatible licenses for new projects
  • Credit Practices: Best practices for acknowledging permissive components
  • Community Norms: Following community expectations beyond legal requirements
  • Contribution Back: Approaches to contributing improvements
  • Forking Considerations: Considerations when forking permissively licensed projects

In SaaS and Cloud Services

Considerations for service-based deployments:

  • Service vs. Distribution: How service deployment affects obligations
  • API Licensing: Licensing considerations for APIs
  • Client-Side Components: Handling client-side code distribution
  • Service Wrapper Applications: Applications that wrap permissively licensed services
  • Network Service Components: Components specifically designed for network services

Compliance Management

License Identification

Identifying and tracking licenses:

  • License Detection Tools: Tools for discovering licenses in code
  • License Expressions: Understanding SPDX and other license expressions
  • Unclear Licensing: Handling code with unclear licensing
  • License Metadata: Using and interpreting license metadata
  • Due Diligence: Processes for license verification

Compliance Automation

Tools and processes for compliance:

  • Scanning Tools: Automated license scanning capabilities
  • Policy Enforcement: Automating policy compliance
  • Continuous Integration: Integrating license checks into CI/CD
  • Dependency Analysis: Automatically analyzing dependency licenses
  • Compliance Workflows: Streamlining compliance processes

Compliance Documentation

Maintaining license compliance records:

  • Attribution Documents: Creating comprehensive attribution documents
  • SBOM Integration: Incorporating license information in SBOMs
  • Audit Readiness: Preparing for compliance audits
  • Version Tracking: Tracking licenses across component versions
  • Change Management: Documenting license changes over time

Sector-Specific Adoption

Patterns of permissive license use by sector:

  • Enterprise Software: Prevalence in enterprise environments
  • Web Development: Use in frontend and backend technologies
  • Mobile Development: Adoption in mobile application frameworks
  • Infrastructure Software: Use in infrastructure and platform software
  • Embedded Systems: Application in embedded and IoT contexts

Community Preferences

License preferences in different communities:

  • Programming Language Communities: Licensing norms in different language ecosystems
  • Regional Variations: Geographic differences in license preferences
  • Corporate vs. Community Projects: Licensing differences between corporate and community initiatives
  • Academic Projects: License choices in academic and research settings
  • Foundation-Governed Projects: Licensing approaches of major foundations

Evolution of permissive licensing:

  • Increasing Popularity: Growth in permissive license adoption
  • Corporate Influence: Corporate impact on license selection
  • Simplification Trend: Movement toward simpler licenses
  • License Proliferation: Challenges of license variety
  • Standardization Efforts: Initiatives to standardize licenses

Enforcement and Litigation

Legal aspects of permissive licenses:

  • Enforcement Actions: History of permissive license enforcement
  • Court Interpretations: Judicial interpretations of permissive terms
  • Litigation Risks: Comparative litigation risks versus other licenses
  • Jurisdictional Variations: How different legal systems view permissive licenses
  • Remedies: Available remedies for license violations

International Applicability

Global perspectives on permissive licensing:

  • Global Recognition: International recognition of permissive licenses
  • Translation Issues: Legal effect of license translations
  • Regional Regulations: Impact of regional regulations on license terms
  • Copyright Law Variations: Effect of different copyright regimes
  • Global Enforcement: Cross-border enforcement considerations

Warranty and Liability

Understanding disclaimers and limitations:

  • Warranty Disclaimers: Scope and effect of warranty disclaimers
  • Liability Limitations: Effectiveness of liability limitations
  • Consumer Protection Laws: Interaction with consumer protection regulations
  • Professional Services: Implications for professional service providers
  • Risk Management: Managing risks when using permissively licensed software

Future of Permissive Licensing

Emerging License Models

New approaches to permissive licensing:

  • Ethical Licenses: Adding ethical use restrictions to permissive models
  • Source-Available Licenses: Blending permissive and proprietary approaches
  • API Licensing: Specialized licensing for APIs and interfaces
  • Data-Specific Licenses: Adapting permissive approaches for data
  • Service-Oriented Licenses: Licenses designed for service architectures

License Evolution

How permissive licenses are changing:

  • Modernization Efforts: Updates to address current technologies
  • Patent Provisions: Enhanced patent protections in newer licenses
  • Simplification Initiatives: Efforts to further simplify license terms
  • Standardization Progress: Progress toward standardized license formats
  • Corporate Influence: Corporate impact on license development

Policy and Governance

Organizational approaches to permissive licenses:

  • License Selection Policies: Organizational policies for license selection
  • Governance Models: Governance approaches for permissively licensed projects
  • Foundation Stewardship: Role of foundations in license management
  • Corporate Contribution Policies: Corporate policies for contributing to permissively licensed projects
  • License Transition Strategies: Approaches for changing licenses over time