Everything LicensingAtlas publishes about a credential lives in a structured record before it becomes a page. These releases are those records, exported whole: one row per state, the same fields the pages are built from, nothing summarized and nothing derived.
They are free to cite and reuse with attribution. Researchers, workforce boards, journalists and state agencies are the intended readers. You do not need to scrape the site, and you should not have to — a dataset that has to be reconstructed from HTML is not really published.
Read the fields as sourced text, not as summaries. A value that arrives as a sentence with conditions is the fact. “Required for anyone who serves alcohol, except an owner who does not serve” is the requirement; “required” is not a shorter way of saying it, it is a different and wrong statement. Every row carries source_urls naming the official documents the values came from and last_verified giving the date they were last read, so a value can always be checked against the authority behind it rather than against us.
A release is dated, not evergreen. The version of each release is the newest last_verified in it — there is no separate build stamp, so re-exporting unchanged data produces an identical file. When a board changes something, the affected record is re-verified, its date moves, and the next release carries a new version. What changed and when is published in What Changed at the Boards
; every factual error we have found in our own data is published in the Corrections Log
.
Current releases
| Dataset | Version | Records | Download |
|---|---|---|---|
| electrician | 2026-09-08 | 51 | CSV · JSON · CSV (2026-09-08-6a8eefc1) · JSON (2026-09-08-6a8eefc1) |
| notary | 2026-09-02 | 51 | CSV · JSON · CSV (2026-09-02-492c172e) · JSON (2026-09-02-492c172e) |
| hvac | 2026-09-05 | 51 | CSV · JSON · CSV (2026-09-05-f74d217e) · JSON (2026-09-05-f74d217e) |
| plumber | 2026-08-12 | 10 | CSV · JSON · CSV (2026-08-12-c19ac76c) · JSON (2026-08-12-c19ac76c) |
| contractor | 2026-09-02 | 8 | CSV · JSON · CSV (2026-09-02-2bb2fa30) · JSON (2026-09-02-2bb2fa30) |
| cna | 2026-09-02 | 51 | CSV · JSON · CSV (2026-09-02-4a38987a) · JSON (2026-09-02-4a38987a) |
| food-handler | 2026-09-05 | 51 | CSV · JSON · CSV (2026-09-05-20d167ac) · JSON (2026-09-05-20d167ac) |
| alcohol-server | 2026-09-02 | 51 | CSV · JSON · CSV (2026-09-02-23440c8e) · JSON (2026-09-02-23440c8e) |
| food-manager | 2026-09-05 | 5 | CSV · JSON · CSV (2026-09-05-decd6e62) · JSON (2026-09-05-decd6e62) |
The -latest files always point at the newest release. A release id is its
version date plus a short hash of the release itself, and that file is immutable: two
releases published on one day get two different ids rather than one overwriting the other,
so a citation to
electrician-2026-09-08-6a8eefc1.csv
resolves to the same bytes a year from now. A machine-readable index of every release,
including earlier ones, is at /datasets/index.json.
Terms
Free to cite and reuse with attribution to LicensingAtlas. Every value is verified against the official source named in its source_urls and dated in last_verified.
How to cite
LicensingAtlas, electrician licensing requirements by state, version 2026-09-08. Retrieved from https://licensingatlas.com/datasets/. Each row cites the official source it was verified against.
What is not in a release
Only clusters we consider mature ship here. A cluster is held back while its records are still being repaired, because publishing a dataset is a stronger claim than publishing a page: a page can carry its own caveats in prose, and a CSV column cannot. Clusters not listed above are readable on the site but are not yet exported.
Some official sources cannot be monitored automatically — a few sit behind interactive
challenges, some render only after form selections, and a small number block automated access
entirely. Rows drawn from those sources are re-verified by hand during audit cycles rather than
on the weekly schedule, and their last_verified dates reflect that. This is stated
here rather than buried, because a freshness date means different things for a page we can
re-read every Monday and one we cannot.