A model can publish every weight under an “open” banner and still bar commercial use. It can post an MIT tag at the top of its Hugging Face card and ship a custom licence file underneath that overrides the tag. It can read gated: false on the API and still require manual approval through a separate channel. Across twenty repositories read on 28 August 2026, the answer to “can I ship this in a product?” is decided by four axes that move independently: the top-level license tag, the license_name field when it exists, the gated flag, and the contents of the actual licence file. Reading only the first gives a confident wrong answer more often than not.
This page walks through what each axis returns for the model families readers keep asking about, then lists the checks that catch the cases where the API is silent or misleading. Nothing here is legal advice; where a threshold sits near the line, the licence text goes in front of a lawyer.
What the API returns and what it doesn’t
The Hugging Face model API exposes the metadata developers reach for first. The relevant fields are cardData.license (a short string, sometimes "apache-2.0" or "mit", sometimes "other"), cardData.license_name (only present for custom licences), cardData.license_link (a URL to the licence file, sometimes missing), and the top-level gated field ("false", "manual", or "auto"). Each one is a separate axis.
The Open Source Initiative’s Open Weights page defines open weights as “the final weights and biases of a trained neural network” released under an OSI-approved licence, and lists four freedoms (use, study, modify, share) that a model under a custom vendor licence may or may not satisfy. Industry usage of “open” is looser than OSI’s, which is why the API alone cannot answer the question.
Five families, four commercial answers
The twenty repositories read for this update sort into five licence families. Each answers the commercial-use question differently.
| Family | What the API reports | Commercial use | Representative repos |
|---|---|---|---|
| Apache-2.0 | license: "apache-2.0", gated: false | Permitted, with notice and patent grant | Qwen3.5-0.8B, Qwen3.5-9B, Qwen3.5-35B-A3B, Qwen3.5-122B-A10B, Qwen3.5-397B-A17B, Qwen3-32B, Qwen3-Next-80B-A3B-Instruct, Qwen3-Next-80B-A3B-Thinking, Qwen2.5-Coder-32B-Instruct, Mistral-Small-3.2-24B-Instruct-2506, Devstral-Small-2-24B-Instruct-2512, gemma-4-12B-it, granite-4.0-h-small |
| MIT | license: "mit", gated: false | Permitted, with copyright notice | DeepSeek-V3.2, Phi-4-multimodal-instruct |
| Qwen variants | license: "other", license_name: "qwen-research" or "qwen" | Either research-only or commercial-below-100M-MAU depending on the repo | Qwen2.5-3B-Instruct (research-only), Qwen2.5-72B-Instruct (commercial below 100M MAU) |
| Llama community | license: "other", license_name: "llama4", gated: "manual" | Permitted with 700M MAU threshold, attribution, naming | Llama-4-Scout-17B-16E-Instruct |
| Gemma (older) | license: "gemma", gated: "manual" | Permitted with Notice file, use-policy by reference | Gemma 3 and Gemma 3n families |
The first two rows are the easy cases: standard open-source licences, no surprises in the file itself, and no approval gate. The Qwen, Llama and Gemma rows are where the traps live.
Qwen ships three different licences under the same vendor name
The Qwen line is the one place the tag is least informative. The Qwen2.5-3B-Instruct licence is the Qwen RESEARCH LICENSE AGREEMENT, which grants rights “FOR NON-COMMERCIAL PURPOSES ONLY” with no user-count or revenue threshold at all: any commercial use requires a separate licence from Alibaba Cloud. The Qwen2.5-72B-Instruct licence is the Qwen LICENSE AGREEMENT, which permits commercial use royalty-free but states that “If you are commercially using the Materials, and your product or service has more than 100 million monthly active users, you shall request a license from us.” Both repos report license: "other" at the top-level API tag; only license_name distinguishes them.
The Apache-2.0 cases sit between and around them. Qwen3-32B, Qwen3.5-9B, Qwen3.5-35B-A3B, Qwen3.5-122B-A10B, Qwen3.5-397B-A17B, Qwen3.5-0.8B, the Qwen3-Next-80B-A3B Instruct and Thinking variants, and Qwen2.5-Coder-32B-Instruct all return apache-2.0 from the API on 28 August 2026. Treating “it’s a Qwen model” as the answer is the failure mode; the per-repo answer is the only one that holds.
DeepSeek changed licence posture between releases
DeepSeek-V3.2 returns license: "mit" at the top level and ships an MIT LICENSE file containing only the standard MIT text attributed to “DeepSeek, 2023”. No separate LICENSE-MODEL is present in the file fetch from the API response; the model repo’s API metadata names no extra restriction. That is the simplest DeepSeek case in some time and a change from the earlier DeepSeek-V3 release, which carried no licence field at all and shipped both a LICENSE-CODE (MIT, code) and a separate LICENSE-MODEL (custom, governing the weights). Reading the licence field on the latest release as if it applies to releases from twelve months earlier is the trap.
Llama’s 700 million MAU threshold is higher than Qwen’s 100 million
The Llama 4 Community License requires a separate licence if “the monthly active users of the products or services made available by or for Licensee, or Licensee’s affiliates, is greater than 700 million monthly active users in the preceding calendar month.” It also requires a “Built with Llama” attribution prominently displayed and names that begin with “Llama” for any derivative model. The Llama-4-Scout-17B-16E-Instruct repo reads license: "other", license_name: "llama4", gated: "manual" on 28 August 2026. The threshold is seven times Qwen’s, and the gated: manual access request is independent of the licence text - either can stop a deployment on its own.
Gemma shifted from custom to Apache-2.0 between major versions
gemma-4-12B-it returns license: "apache-2.0" with gated: false and a license_link to Google’s Gemma 4 licence page. The Gemma 3 and Gemma 3n families instead report license: "gemma" with gated: "manual", placing them under a different, more restrictive licence that incorporates a Prohibited Use Policy by reference. Reasoning from one major version to the next is exactly the move that gives a confident wrong answer here.
Gating is a separate axis from licensing
gated: "manual" on a model like Llama-4-Scout means an approval step stands between the reader and the weights, whatever the licence says. It is an access control, not a licence term, and the two move independently: every gated: "manual" repo in the table above also carries a custom licence, but a permissive apache-2.0 model can in principle become gated in a future revision, and a custom-licence model can lose its gate. Any pipeline fetching weights unattended needs this field checked separately, and any deployment that depends on a non-gated pull today is one repo revision away from a manual access request.
What to check before shipping
- Fetch
https://huggingface.co/api/models/<the-exact-repo>for the size and version being shipped. ReadcardData.license,cardData.license_name,cardData.license_link, andgated. - Treat any
gatedvalue other thanfalseas an approval step, regardless of how permissive the licence reads. - On
apache-2.0ormit, open the licence file anyway. Several Apache-2.0 repos also include a separateLICENSE-MODELorNOTICEthat adds terms the API tag does not surface. - On a custom
license_name, search the licence text for: a user-count or revenue threshold, an attribution requirement (“Built with…”), a naming requirement for derivatives, and any use policy incorporated by reference. - Confirm whether the model is research-only. The Qwen2.5-3B licence is the live example: the API tag is
other, thelicense_nameisqwen-research, and the body says “non-commercial purposes only.” - Before fine-tuning or distilling, find the licence’s definition of “derivative” and check whether use-policy obligations carry into the new weights.
The VRAM tier hub sorts models by what fits on your hardware; this page sorts them by what their licences permit. The two pages converge only when both answer the same question: which model can run here and which can ship there. For the runtime side, the quantization guide covers the formats a chosen model will actually load.
Bottom line
A permissive-looking tag is the most common reason a commercial deployment stalls at legal review. The Hugging Face API exposes four axes (top-level license, license_name, license_link, gated) and they do not collapse into one. Apache-2.0 and MIT remain the clean cases on the families checked here; the Qwen line splits by parameter count, DeepSeek moved between releases, Llama’s MAU threshold is seven times Qwen’s, and Gemma shifted between major versions. Every figure on this page was read on 28 August 2026 from the URLs listed in the sources; licences change, so re-check the exact repo before shipping.