Unlicense and CC0: Public Domain Dedication for Software

Learn about the Unlicense and CC0-1.0 public domain dedications. Understand when and how to release software into the public domain with no conditions at all.

Guides

Detailed Explanation

Public Domain Dedication: Unlicense and CC0

Some developers want to release their code with absolutely no restrictions — not even the requirement to include a copyright notice. The Unlicense and CC0-1.0 serve this purpose by dedicating the work to the public domain.

The Unlicense

The Unlicense is a public domain dedication specifically designed for software. It waives all copyright interest and places the software in the public domain. It also includes a fallback permissive license for jurisdictions that do not recognize public domain dedications.

SPDX Identifier: Unlicense

CC0-1.0 (Creative Commons Zero)

CC0-1.0 is Creative Commons' public domain dedication tool. While originally designed for creative works (text, images, data), it is also used for software. Like the Unlicense, it includes fallback provisions.

SPDX Identifier: CC0-1.0

Key Differences

Feature Unlicense CC0-1.0
Designed for Software Any creative work
Patent waiver No Yes (broader IP waiver)
Fallback license Yes (permissive) Yes (permissive)
OSI approved Yes No (but widely accepted)

When to Use Public Domain

  • Small utility code snippets
  • Example code in documentation or tutorials
  • Data files, schemas, or specifications
  • Code you want to be completely unrestricted

When NOT to Use Public Domain

  • If you want attribution (use MIT instead)
  • If you want patent protection (use Apache-2.0)
  • If you want copyleft (use GPL)
  • In jurisdictions that do not recognize public domain (CC0 handles this better)

Legal Considerations

Not all jurisdictions recognize the concept of voluntarily placing work in the public domain. Some countries (notably in parts of Europe) consider copyright inalienable. Both Unlicense and CC0 include fallback provisions that grant the broadest possible permissions in such jurisdictions.

Use Case

Releasing code snippets, example code, data files, or utility functions with absolutely no restrictions, maximizing the freedom for anyone to use the code for any purpose.

Try It — License Identifier

Open full tool