Spaces:
Running
Running
|
Download README.md from APProjects/warn-act-notices: direct link, hf CLI and curl.
- Browser
- Download file 14 kB
-
https://huggingface.co/spaces/APProjects/warn-act-notices/resolve/main/README.md
- Command line
-
hf download hf://spaces/APProjects/warn-act-notices/README.md
-
curl -L -o README.md https://huggingface.co/spaces/APProjects/warn-act-notices/resolve/main/README.md
14 kB
| title: US WARN Act Layoff Notices | |
| emoji: π | |
| colorFrom: gray | |
| colorTo: red | |
| sdk: static | |
| pinned: false | |
| license: cc-by-4.0 | |
| short_description: 61,431 US WARN Act layoff notices, 48 states, free CSV | |
| tags: | |
| - layoffs | |
| - warn-act | |
| - warn-notices | |
| - layoff-tracker | |
| - labor-market | |
| - public-records | |
| - united-states | |
| - dataset | |
| - daily-updated | |
| - csv | |
| - rss | |
| custom_headers: | |
| cross-origin-opener-policy: same-origin | |
| cross-origin-resource-policy: cross-origin | |
| # US WARN Act layoff notices β 61,431 notices, 48 states, rebuilt every day | |
| **[Open the live site β](https://approjects-warn-act-notices.static.hf.space/)** Β· rebuilt 2026-09-25 | |
| | | | | |
| |---|---| | |
| | **61,431** | layoff notices on file, back to 1988 | | |
| | **48** | state portals re-scraped every single day | | |
| | **6,831,447** | workers named across those notices (all of it free, dated 1988-01-01 onward, no delay) | | |
| | **233** | notices filed in the last 30 days (23,474 workers) | | |
| | **5,545** | near-duplicate employer spellings merged onto 1,243 employers, redone every morning (Aramark alone files under 159 spellings) | | |
| | **25** | daily snapshots in the observed change log (2482 field changes / disappearances recorded since 2026-08-30) | | |
| Every US state publishes WARN Act layoff notices in its own format β different | |
| columns, different date conventions, some as quarterly PDFs, several with no | |
| notice date at all. This project re-scrapes 48 of them daily, normalizes | |
| them into one schema, deduplicates with stable row ids, and canonicalizes | |
| employer names so `Amazon.com Services LLC` and `Amazon` roll up together. | |
| A one-off copy of this data starts rotting the week it is posted: states amend | |
| headcounts, re-issue notices and silently drop rows. Compare the rebuild date | |
| above with the "last updated" date on any other US WARN dataset before you | |
| choose one. | |
| ## Free, no account, no email address | |
| - **Site** β [https://approjects-warn-act-notices.static.hf.space/](https://approjects-warn-act-notices.static.hf.space/): state pages, employer pages, weekly / monthly / | |
| yearly roll-ups, search. | |
| - **CSV / JSON** β [`/data/warn_notices.csv`](https://approjects-warn-act-notices.static.hf.space/data/warn_notices.csv), | |
| [`/data/coverage.json`](https://approjects-warn-act-notices.static.hf.space/data/coverage.json) (per-state row counts, last-scraped | |
| stamp, newest notice on file). | |
| - **RSS** β [all states](https://approjects-warn-act-notices.static.hf.space/feed.xml), or one feed per state. | |
| - **Dataset mirror** β [APProjects/us-warn-act-layoffs-notices-daily](https://huggingface.co/datasets/APProjects/us-warn-act-layoffs-notices-daily) | |
| (`load_dataset` in one line). | |
| - **Daily GitHub release** β [releases/latest](https://github.com/APVentureEngine/warn-act-notices/releases/latest). | |
| ```bash | |
| curl -s https://approjects-warn-act-notices.static.hf.space/data/coverage.json | python3 -c "import json,sys; d=json.load(sys.stdin); print(d['total_rows'], 'notices;', len(d['states']), 'states')" | |
| ``` | |
| ## What a re-scrape cannot give you: the observed change log | |
| State portals overwrite themselves. When an agency amends a headcount, moves an | |
| effective date or quietly removes a notice, the previous value leaves the public | |
| internet. Because this dataset is committed on every daily rebuild, its history | |
| is a point-in-time record of what each portal was publishing on each day, and | |
| that record is published as | |
| [`/data/revisions.csv`](https://approjects-warn-act-notices.static.hf.space/data/revisions.csv) | |
| ([README](https://approjects-warn-act-notices.static.hf.space/data/revisions.README.txt)): one row per field change or | |
| disappearance between consecutive daily builds, 25 snapshots since | |
| 2026-08-30, 2482 rows so far, 177 of them a tracked | |
| field changing from one non-empty value to another. | |
| Read it honestly: a row means *our build changed*, which can be the agency | |
| amending the notice **or** this project's parser improving. The `cause_class` | |
| column labels only what is mechanically decidable (`field_populated`, | |
| `field_cleared`, `format_only`, `value_changed`); `row_absent` means the row | |
| stopped appearing in our build, not that the employer withdrew it. It grows by | |
| one snapshot a day and cannot be backfilled by anyone starting later. | |
| ## Get told when YOUR employers file β free, no card | |
| Name up to three employers (or one whole state); every daily rebuild is matched | |
| against them and every match lands on your own alert page with an RSS feed | |
| (plus an optional Slack / Discord / Teams webhook). | |
| **[Start a free 30-day watch β](https://approjects-warn-act-notices.static.hf.space/go/hf-free.html)** Β· $0, no card, nothing renews. | |
| Or skip the signup entirely: [match your employers in your own browser](https://approjects-warn-act-notices.static.hf.space/watch-now.html) | |
| and download an **.opml** holding one RSS feed per employer you typed β no account, no email | |
| address, no checkout. Every employer that filed in the last 180 days has a static feed at | |
| `/feeds/employer/<name>.xml`, rebuilt each morning with the data. The paid tier is the one that | |
| comes to *you* (Slack / Discord / Teams / private alert page, 500 terms plus whole states); the | |
| feeds wait for your reader to ask. | |
| ## Paid tiers | |
| | | | | |
| |---|---| | |
| | **[WARN Watch β $49/year](https://approjects-warn-act-notices.static.hf.space/go/hf-buy.html)** | up to 500 employer terms + any number of whole states, matched on every daily refresh for a year. Private alert page + RSS + webhook, no login. [What it looks like](https://approjects-warn-act-notices.static.hf.space/watch.html). | | |
| | **[Full historical archive β free](https://github.com/APVentureEngine/warn-act-notices/releases/latest)** | all 61,431 notices, 1988βpresent, 48 states, CSV + JSON + coverage metadata, rebuilt every morning. No paywalled years since 2026-09-07, no account, CC BY 4.0. | | |
| The free tier is not crippled to sell these: same normalization, same columns, | |
| same CC BY 4.0 licence. | |
| ## Largest employers by workers noticed in 2026 so far | |
| | employer | workers noticed in 2026 | | |
| |---|---| | |
| | Ideal US Talent Systems Worker OpCo | 11,973 | | |
| | Spirit Airlines | 6,906 | | |
| | Meta Platforms | 5,686 | | |
| | Amazon | 5,386 | | |
| | Republic National Distributing | 3,533 | | |
| ## Honest scope | |
| - 48 states scraped; not covered yet: AR, NH, WY. `coverage.json` is the | |
| authoritative list and is regenerated on every run. | |
| - MI, PA and SC publish no notice date at all; those rows are labelled rather | |
| than guessed. | |
| - Compiled from state workforce-agency portals. Independent project, not | |
| affiliated with any government agency; not legal or financial advice. | |
| - Found a bad row? [Open an issue](https://github.com/APVentureEngine/warn-act-notices/issues) | |
| β corrections ship the same day. | |
| Source code: [github.com/APVentureEngine/warn-act-notices](https://github.com/APVentureEngine/warn-act-notices). | |
| Underlying scrapers include Apache-2.0 code from `biglocalnews/warn-scraper`. | |
| <!-- warn-feed:offer:start --> | |
| ## A layoff record you can audit, not just download | |
| This dataset is one cut of a single daily rebuild: **61,431 US WARN Act | |
| layoff notices from 48 state agencies, 1988 to today**, one schema, no | |
| login, no delay, CC BY 4.0. Snapshot as of **2026-09-25**; the files above are | |
| rebuilt every day, so the live count is the truth. | |
| Several projects publish a current WARN scrape and two of them carry more rows | |
| than we do. None of them publish what the records **used to say**: | |
| - **2,482 observed changes to already-published notices, logged daily since 2026-08-31.** | |
| `data/revisions.csv` records every field that differed between two consecutive | |
| daily builds β employee counts, effective dates, notice types, company names β | |
| with the old value, the new value and the date we saw it. We publish the | |
| observation and not the cause: a change is equally explained by the agency | |
| amending the notice or by our own parser improving, and we do not guess which | |
| (see `data/revisions.README.txt`). A scrape that starts tomorrow cannot backfill | |
| any of it; it only exists if someone was watching. | |
| - **6,799 notices whose state agency page no longer lists them.** Agencies | |
| take notices down. We keep them, flagged as archive-only, so a count you ran | |
| last year still reconciles. | |
| - **Point-in-time employer identity.** The ticker crosswalk resolves a filer to | |
| the company as it existed at the time of the notice β Kmart, Sears Holdings, | |
| Symantec β not to whatever is on today's ticker file. | |
| If you have to defend a number to an editor, a referee or a compliance reviewer, | |
| that provenance layer is the part you cannot rebuild yourself. | |
| [How to cite this dataset β](https://github.com/APVentureEngine/warn-act-notices/blob/main/CITATION.cff) | |
| **Look something up right now β free, no signup, nothing to install.** | |
| [Check any employer or state against the last 180 days | |
| β](https://approjects-warn-act-notices.static.hf.space/watch-now.html) It runs in your browser against these same files. | |
| **Building something with it?** The same files are a free HTTP API β JSON and | |
| CSV, no key, no signup, `access-control-allow-origin: *` so `fetch()` works from | |
| a browser: [endpoints, schema and curl examples β](https://approjects-warn-act-notices.static.hf.space/api.html) | |
| **Prefer a spreadsheet?** One formula puts the last 90 days, the last 12 months | |
| or any single state into Google Sheets as a live range that refreshes itself β | |
| no signup, no add-on: [the formulas, one per state β](https://approjects-warn-act-notices.static.hf.space/sheets.html) | |
| `=IMPORTDATA("https://cdn.jsdelivr.net/gh/APVentureEngine/warn-act-notices@main/data/sheets/us-last-90-days.csv")` | |
| **Backtesting, or citing a figure you published last month?** Today's file has | |
| look-ahead and survivorship bias baked in: notices get amended after the fact and | |
| some rows are later deleted. The same table as it stood on any past day since | |
| **2026-08-30** β one immutable vintage per day, 25 so far, plus a first-appearance | |
| index giving the first and last day every notice id was in the file β is the | |
| [point-in-time snapshot archive](https://huggingface.co/datasets/APProjects/us-warn-act-layoffs-point-in-time-snapshots). Nobody can backfill it. | |
| **Need one industry only?** The same filings, cut by an auditable employer-name | |
| rule (each row keeps the rule that fired): [tech companies](https://huggingface.co/datasets/APProjects/us-tech-company-layoffs-warn-act-notices-daily) | |
| Β· [hospitals & healthcare](https://huggingface.co/datasets/APProjects/us-hospital-healthcare-layoffs-warn-act-notices-daily) | |
| Β· [retail store closings](https://huggingface.co/datasets/APProjects/us-retail-store-closings-layoffs-warn-act-notices-daily) | |
| Β· [restaurants & hotels](https://huggingface.co/datasets/APProjects/us-restaurant-hotel-closings-layoffs-warn-act-notices-daily) | |
| Β· [factory & plant closings](https://huggingface.co/datasets/APProjects/us-factory-plant-closings-manufacturing-layoffs-warn-act-notices-daily) | |
| Β· [banks, insurance & finance](https://huggingface.co/datasets/APProjects/us-bank-insurance-finance-layoffs-warn-act-notices-daily) | |
| Β· [warehouses, trucking & logistics](https://huggingface.co/datasets/APProjects/us-warehouse-trucking-logistics-layoffs-warn-act-notices-daily) | |
| Β· [all 20 sectors](https://huggingface.co/datasets/APProjects/us-layoffs-by-industry-sector-warn-act). | |
| **Or have it watch a list for you.** Coming back to look is the part a CSV cannot | |
| do. **WARN Watch β $49 for a year**, one payment, nothing auto-renews, 14-day | |
| refund, no login: up to 500 employer names plus whole states, matched on every | |
| daily refresh, delivered to a private alert page + calendar (.ics) + RSS + | |
| an optional Slack / Discord / Teams webhook. Every alert carries that employer's | |
| whole filing history from the archive, which a keyword rule on an RSS feed cannot | |
| see. There is no built-in email β we do not claim one. | |
| - [See a real alert page before paying](https://approjects-warn-act-notices.static.hf.space/watch-sample.html) Β· [what you get](https://approjects-warn-act-notices.static.hf.space/watch.html) | |
| - [Try it free for 30 days, no card](https://approjects-warn-act-notices.static.hf.space/go/hf-free.html) Β· [Buy β $49/year](https://approjects-warn-act-notices.static.hf.space/go/hf-buy.html) | |
| **Not deciding today?** [Join the update list β](https://approj.gumroad.com/subscribe) β one email when a | |
| new dataset or tier is published; nothing promotional. A state added or a column | |
| renamed ships in the [daily release](https://github.com/APVentureEngine/warn-act-notices/releases) instead, no address | |
| needed. The list is | |
| shared across APProjects datasets, holds an email address only, is run by | |
| Gumroad, and any message unsubscribes you. Rather give no address at all? | |
| [Watch the repo's releases](https://github.com/APVentureEngine/warn-act-notices/subscription) β GitHub notifies you on | |
| every daily republish, and a new state or changed field is in those notes the | |
| day it lands. | |
| **Reaching a human.** WARN Feed is published by APProjects, an automated data | |
| publisher β that is stated plainly rather than dressed up. Corrections, coverage | |
| gaps, schema questions and refund requests all go here and are read: | |
| [open an issue](https://github.com/APVentureEngine/warn-act-notices/issues/new/choose). Payments are handled by Gumroad as merchant of | |
| record, so an invoice can carry your company name. | |
| [Source, scrapers and methodology](https://github.com/APVentureEngine/warn-act-notices) Β· [the 48-state site](https://approjects-warn-act-notices.static.hf.space/) | |
| <!-- warn-feed:offer:end --> | |
| <!-- warn-feed:px:start --> | |
| <img src="https://cdn.jsdelivr.net/gh/APVentureEngine/warn-act-notices@main/assets/px/hf/space-warn-act-notices.png" width="1" height="1" alt=""> | |
| <sub>Card views are counted anonymously: one 1Γ1 image on a public CDN, no cookies, no script, no personal data. The count is public: <a href="https://data.jsdelivr.com/v1/stats/packages/gh/APVentureEngine/warn-act-notices@main/files?period=month">jsDelivr stats</a>.</sub> | |
| <!-- warn-feed:px:end --> | |