Skip to main content
See other licenses

BSD-3-Clause

BSD 3-Clause License

Permissive like MIT, with one extra rule: you may not use the authors' names to promote your product. Notices travel with source and binaries.

On this page

What it does

BSD 3-Clause is the classic three-condition BSD grant. It sits under the Go standard library, Django and NumPy. Two conditions are about notices. Reproduce the copyright line, the list of conditions and the warranty disclaimer in source distributions. Reproduce them again in the documentation or other materials that accompany a binary. The third is the non-endorsement clause: you may not use the names of the original authors or their organization to promote your product without written permission. Nothing here reaches your own code.

Details

The notice wording is slightly stronger than MIT's. MIT asks that the notice travels with copies. BSD 3-Clause names the documentation and materials that accompany a binary, so an about screen or a bundled licenses file is the natural home for it. The third clause is the one that can cost money. A case study or a landing page that implies the upstream authors back your product is exactly what it forbids. Naming a dependency factually is fine, and implying endorsement is not.

Pros

  • Easy to drop into a closed, paid product. Procurement has seen this family hundreds of times.
  • No copyleft on your own files. You keep your source private.

Cons

  • The notice duty is easy to miss in a desktop, mobile, or container build. A web page is not a substitute for notices inside the artifact.
  • Buyers who want an express patent grant will ask you to prefer Apache-2.0 over a short MIT-style text.

What it allows and requires

Choose a category to see the full grant in one scannable list. Permissions show what the license allows, limits show what it withholds, and obligations show the conditions your release process must satisfy.

Permissions

  • Commercial use

    You may ship the code inside a paid product. The license does not restrict commercial use.

  • Modify

    You may change the code, including keeping those changes private, unless a later obligation says otherwise.

  • Distribute

    You may give copies to others. Distribution is what usually turns notice and source duties into real work.

  • Sublicense

    You may include the code under your own product terms, so long as you still meet this license's conditions.

  • Private use

    Use inside your company, including internal forks, does not by itself trigger distribution duties.

What BSD-3-Clause requires when you ship

When a copy that includes BSD-3-Clause code leaves your company, the grant is broad and the paperwork is easy to miss. Distribution here means an installer, a mobile binary, a container image, or an SDK another team embeds. Work this list against the artifact you actually hand over, not against a README. A hosted service that never gives out a copy still belongs on the record, but the notice duty does not fire until a copy exists.

  1. You are meeting the terms for a hosted service once the component and its license text are recorded. Running the code for your users triggers nothing further.

  2. You are meeting the terms for a shipped binary when the copyright line, the three conditions and the disclaimer appear in the materials that accompany it.

  3. You are meeting the terms for source you redistribute, including a copy vendored into your own repository, when that same text stays in the files.

  4. You are respecting the third clause when your marketing describes the dependency factually and never suggests the authors or their organization back your product.

  5. Your duties are the same whether you modified the code or not. BSD has no rules about static or dynamic linking, so how you build makes no difference.

The duties named in BSD-3-Clause

The license text itself is short. These are the named conditions. They follow the code, including files you vendor into your own repository and transitive packages in the lockfile.

Include copyright

Keep the copyright line with every copy or substantial portion you distribute.

Include license

Keep the license text with every copy or substantial portion you distribute. A web page is not a substitute for notices inside a shipped artifact.

Binary materials

For a binary, reproduce the copyright, the conditions, and the disclaimer in the documentation or other materials that accompany it, not only in the source tree.

Things to be aware of

  • Treating the non-endorsement clause as decoration and then quoting the upstream project on a sales page as if it recommended you. Describe use, not endorsement.
  • Recording BSD-3-Clause and BSD-2-Clause as the same license in an SBOM. The third clause is the only difference, and it is the one with teeth.
  • Missing that an older component declares BSD-4-Clause. That version adds an advertising clause and is not compatible with the GPL, which BSD-3-Clause is.

What the BSD 3-Clause License does not do

Search results often flatten BSD 3-Clause License into a slogan. These are the usual misreads. BSD-3-Clause is a grant with conditions, not a permission to skip the paperwork below.

  • BSD 3-Clause does not require you to publish your own source. Combining it with closed code is the point of the grant.
  • It does not let a binary skip the notice because the source tree still has the header. Condition 2 names the documentation or other materials that accompany the binary.
  • It does not grant patents. The text is silent on patents, and the third clause is about names, not claims.

How BSD-3-Clause differs from nearby licenses

These licenses are often confused with BSD-3-Clause, but their release duties differ. Each row summarizes what the license requires when you ship. Open the linked page for the full checklist.

BSD-3-Clause
Permissive like MIT, with one extra rule: you may not use the authors' names to promote your product. Notices travel with source and binaries.
BSD-2-Clause
MIT in BSD wording. Use it in a closed product, and keep the copyright line, the conditions and the disclaimer with every copy you distribute.
MIT
MIT lets you ship the code inside a closed, paid product. The one condition is that the copyright line and license text travel with every copy.
MPL-2.0
File-scoped copyleft. The MPL files stay open when you ship a binary, modified or not. Your own separate files stay yours.

Common questions about BSD 3-Clause License

Answers to common questions about what BSD 3-Clause License requires, when its duties apply, and what evidence belongs with a release.

What is the BSD 3-Clause License?

BSD 3-Clause is the classic three-condition BSD grant. It sits under the Go standard library, Django and NumPy. Two conditions are about notices. Reproduce the copyright line, the list of conditions and the warranty disclaimer in source distributions. Reproduce them again in the documentation or other materials that accompany a binary. The third is the non-endorsement clause: you may not use the names of the original authors or their organization to promote your product without written permission. Nothing here reaches your own code.

What does BSD-3-Clause require when you ship a product?

You are meeting the terms for a hosted service once the component and its license text are recorded. Running the code for your users triggers nothing further. You are meeting the terms for a shipped binary when the copyright line, the three conditions and the disclaimer appear in the materials that accompany it. You are meeting the terms for source you redistribute, including a copy vendored into your own repository, when that same text stays in the files. You are respecting the third clause when your marketing describes the dependency factually and never suggests the authors or their organization back your product. Your duties are the same whether you modified the code or not. BSD has no rules about static or dynamic linking, so how you build makes no difference.

Does BSD-3-Clause require me to open my own source?

It does not grant patents. The text is silent on patents, and the third clause is about names, not claims.

How do I attribute BSD-3-Clause in a product I ship?

Attribution for BSD-3-Clause means the copyright line and the license text travel with every copy a recipient actually gets. That can be an about screen, a licenses file inside the installer, or a notice in the container image. A public page helps a buyer audit the inventory. It does not replace notices inside the artifact. If you copied files into your own repository, the header on those files still has to stay.

Is a website notice enough for BSD-3-Clause?

No. BSD-3-Clause talks about copies. A public attestation page is the honest list for procurement. The condition is met when the notices sit in the material you hand over. Put them in the installer, the about screen, or a licenses file inside the binary, then keep the same texts on the page.

Do transitive BSD-3-Clause dependencies count?

Yes. The condition follows the code, not the package you chose by name. If the lockfile pulled in BSD-3-Clause transitively and you distribute that tree, those notices travel too. Listing only direct dependencies is how teams miss the duty.

How is BSD-3-Clause different from BSD 2-Clause License?

BSD-3-Clause asks this: Permissive like MIT, with one extra rule: you may not use the authors' names to promote your product. Notices travel with source and binaries. BSD 2-Clause License asks this: MIT in BSD wording. Use it in a closed product, and keep the copyright line, the conditions and the disclaimer with every copy you distribute. Open the BSD 2-Clause License page for what that license requires when you ship. Do not treat the SPDX ids as interchangeable because the short names look similar.

Where do I record BSD-3-Clause for a buyer?

BSD 3-Clause is a notice license in the catalog, so the component needs license text before it counts as live on your published page. Auto-fetch usually supplies it. SourceTrust downloads the published artifact, extracts the license file, and compares it with the declared id. The comparison matches the text against the reference for each id. A 2-clause text under a 3-clause id therefore lands as a mismatch for a person to look at, rather than being quietly accepted.

Where do I record BSD-3-Clause for a buyer?

BSD 3-Clause is a notice license in the catalog, so the component needs license text before it counts as live on your published page. Auto-fetch usually supplies it.

SourceTrust downloads the published artifact, extracts the license file, and compares it with the declared id. The comparison matches the text against the reference for each id.

A 2-clause text under a 3-clause id therefore lands as a mismatch for a person to look at, rather than being quietly accepted. Read /docs/reviewing-component for the review flow.

See also

The hub is the pillar for this cluster. Sibling licenses are the other spokes. Product FAQ links explain how SourceTrust records the duty, not the license text itself.

Practical guidance for procurement review, not legal advice. Confirm high-stakes use with counsel.

Ship the proof.

Import BSD 3-Clause License and the rest of what you ship. Free to import and review. You only pay when you publish.

Start for free

Cookies on sourcetrust.dev

We use essential cookies for security, including abuse prevention on our site scan and walkthrough request form. With your permission, we also use optional analytics and diagnostics (Google Tag Manager on this site, and the Sentry browser SDK on the SourceTrust application when configured). See our cookie policy.