Open Source License Generator
Generate a complete, ready-to-commit LICENSE file for MIT, Apache-2.0, GPL-3.0, BSD-3-Clause, ISC or MPL-2.0 with your name and year filled in.
Worked examples
- MIT License for a solo developer's project
The most common permissive license for small open-source projects — short, and only asks that the copyright notice be kept.
- Apache License 2.0 for a company-owned project, with a year range
Apache-2.0 adds an explicit patent grant and contributor terms MIT doesn't have, which is why many companies prefer it for projects that accept outside contributions — a year range covers a project maintained across multiple years.
- ISC License, functionally equivalent to MIT with simpler wording
ISC is the license `npm init` suggests for new packages and is common across the Node.js ecosystem — it grants the same permissions as MIT with fewer words.
What this tool does
This tool generates a complete, ready-to-commit LICENSE file for six of the most widely used open-source licenses — MIT, Apache-2.0, GPL-3.0, BSD-3-Clause, ISC and MPL-2.0 — with your name and year filled in. Each license's text is reproduced verbatim from its canonical source; only the copyright holder placeholders are substituted.
When you need it
- Starting a new open-source project and needing a correctly formatted LICENSE file without hand-copying legal text from a website and hoping you didn't introduce a typo.
- Comparing what a few different license options actually say, side by side, when deciding which one fits a project.
- Updating a project's copyright year or holder name after a fork, a company rename, or the start of a new year, without re-typing the whole file.
- Double-checking that an existing LICENSE file in a repository matches the canonical text for the license it claims to use.
How to choose between them
MIT and ISC are both short, maximally permissive licenses — do almost anything with the code, just keep the copyright notice. ISC is functionally equivalent to MIT with slightly simpler wording, and is the license npm init suggests by default for new packages. Apache-2.0 adds an explicit patent grant and formal contribution terms, which is why larger projects and companies that accept outside contributions often prefer it — the patent language protects users from a contributor later asserting a patent claim against the same code they contributed. BSD-3-Clause is similar in spirit to MIT with one added condition: your name can't be used to promote derived products without permission. GPL-3.0 is copyleft — anyone who distributes a modified version must also release their changes under GPL-3.0, which is a deliberate choice to keep derivative works open rather than a limitation to work around. MPL-2.0 sits in between: modified files must stay open under MPL, but those files can be combined with proprietary code in a larger work, a middle ground GPL doesn't offer.
These are the real license texts, not summaries
Every word of each license here matches its official published version — the Apache Software Foundation's text for Apache-2.0, the Free Software Foundation's text for GPL-3.0, the Mozilla Foundation's text for MPL-2.0, and the standard OSI-catalogued text for MIT, ISC and BSD-3-Clause. The only thing this tool changes is filling in your name and year. MIT, ISC and BSD-3-Clause have a copyright line at the top that is filled in. Apache-2.0 and GPL-3.0 do not name a copyright holder in the license body: their texts contain a "how to apply this license" appendix with a placeholder notice, and that is the place where your name and year are substituted — the GPL's own opening line still names the Free Software Foundation, which is the author of the license text, not of your project. MPL-2.0 has no placeholder at all, so a Copyright (c) year name line is added above the unmodified license text. For Apache-2.0 and GPL-3.0, projects usually also put the short notice from that appendix at the top of each source file. Nothing about the substantive terms is altered, shortened or paraphrased.
A year range
The year field accepts either a single year or a hyphenated range, such as 2024-2026, for a project that's been maintained across multiple years — it's inserted into the copyright line exactly as typed.
Limits
This tool generates license text; it doesn't provide legal advice about which license is right for your situation, how license compatibility works when combining code under different licenses, or how to handle a license change on an existing project with prior contributors. For anything beyond generating the standard text, consult a lawyer familiar with software licensing.
Frequently asked questions
- Is my name or project information uploaded anywhere?
- No. The license text is assembled entirely in your browser from bundled copies of each license; nothing is sent to a server.
- Are these the official, unmodified license texts?
- Yes — each license is reproduced verbatim from its canonical source (opensource.org, apache.org, gnu.org or mozilla.org), with only your name and year substituted: into the copyright line for MIT, ISC and BSD-3-Clause, into the license's own how-to-apply appendix for Apache-2.0 and GPL-3.0, and as one added copyright line above the unmodified text for MPL-2.0.
- Which license should I pick?
- MIT and ISC are short and permissive with almost no restrictions. Apache-2.0 adds an explicit patent grant, useful if patents are a concern. BSD-3-Clause is similar to MIT with an added non-endorsement clause. GPL-3.0 is copyleft — derivative works must also be open-sourced under GPL. MPL-2.0 is a middle ground: modified files must stay open, but they can be combined with proprietary code. This tool generates the text; it isn't legal advice.
- Can I use a year range like 2024-2026?
- Yes — enter a single year or a hyphenated range, and it's inserted exactly as typed into the copyright line.