CoolFace
Datasetpublic

APProjects/us-largest-layoffs-events-warn-act

The 1,000 largest US layoff events on record under the WARN Act, 1988-2026 Rebuilt 2026-09-19. Largest on file: United Airlines, 2020-07-01 to 2020-10-01 — 45,360 workers across 25 notices in 14 state(s). The table's floor is 846 workers; 560 of the 1,000 events span more than one notice and 381 span more than one state. A state WARN portal lists one row per site per notice. "What was the biggest layoff?" is an employer-level question, and answering it takes three steps no… See the full description on the dataset page: https://huggingface.co/datasets/APProjects/us-largest-layoffs-events-warn-act.

sourceHugging Facecc-by-4.0updated 5h agoView on Hugging Face
0likes498downloads
Dataset Card

The 1,000 largest US layoff events on record under the WARN Act, 1988-2026

Rebuilt 2026-09-19. Largest on file: United Airlines, 2020-07-01 to 2020-10-01 — 45,360 workers across 25 notices in 14 state(s). The table's floor is 846 workers; 560 of the 1,000 events span more than one notice and 381 span more than one state.

A state WARN portal lists one row per site per notice. "What was the biggest layoff?" is an employer-level question, and answering it takes three steps no portal performs: 48 agencies' notices normalized into one schema daily, an employer's many spellings resolved to one name (Boeing files under 22 of them, typos included), and its rolling per-site notices clustered into one event. This dataset is the result, top 1,000 by reported workers, rebuilt daily.

[image]

Read this before quoting a rank

  • Coverage is uneven before ~2020. The archive reaches back to 1988 only for the states whose portals kept history (Illinois and Oregon among them); most states begin between 2010 and 2023. states_covered_in_year says how many states the archive holds for the event's year — an early-year rank is a rank among the states we hold, not the country.
  • An event is one employer's notices with no gap longer than 45 days between consecutive notice dates, and no longer than 183 days end to end. A rolling programme is one event; a later round, or the seventh month of a continuous programme, is a separate event.
  • `workers_reported` can overstate a rolling programme. Exact duplicate rows (same state, location, count, notice date and effective date) are dropped (duplicates_dropped), but successive notices for the same site are summed because a portal does not say whether the second is cumulative. sites is the conservative companion figure.
  • `single_notice=true` means the whole event is one portal row. It is only as reliable as that row; check it at the source before repeating it.
  • Employer names are resolved by `alias_merge.py` (token signature + purity-guarded prefix absorption); the resolver ships in this repo. It merges spellings, not corporate parents: subsidiaries filing under their own names are their own employers.
  • The current year is a running total; event_open=true marks events that may still grow.

Top 20 right now

#employerperiodworkersnoticesstates
1United Airlines2020-07-01 to 2020-10-0145,36025CA;CO;FL;HI;IL;IN;MN;NJ;NV;NY;OH;PA;VA;WA
2OS Restaurant2020-03-15 to 2020-05-1538,688128CA;FL;IN;KS;MD;MO;NC;NY;OH;PA;SC;TN
3Northwest Airlines1998-08-11 to 1998-08-1127,5001OR
4usi services group2020-03-01 to 2020-03-0123,6951NJ
5United Airlines2002-12-30 to 2002-12-3018,6362IL
6Walt Disney Parks and Resorts U.S2020-09-30 to 2020-11-1817,78019CA;FL
7Tend Exchange Subsidiary LLC and Delaware Tender Staffing2025-05-20 to 2025-05-2016,1321CA
8Delaware North2020-06-04 to 2020-07-2814,21032CA;CO;FL;MD;MI;MO;NY;OH;OK;SC;TN;VA;WI
9David's Bridal2023-04-14 to 2023-08-1112,96478AK;AL;CA;CO;CT;GA;MA;ME;MN;MO;NC;NE;NJ;NM;NV;NY;OH;OR;TN;TX;WA;WI
10Yellow2023-07-30 to 2023-08-1812,14673AL;AZ;CA;CO;DC;FL;ID;IL;IN;KS;ME;MI;MN;NC;ND;NM;NV;NY;OH;TX;VA;WA;WI
11HMSHost2020-03-20 to 2020-08-1812,08078AK;CA;CO;DE;FL;HI;IL;MI;MO;NC;NJ;NV;NY;OH;OR;TN;WA
12Ideal US Talent Systems Worker OpCo2026-05-04 to 2026-05-2911,9733GA;IL;RI
13Cinemark2020-03-26 to 2020-04-1711,297140AZ;CA;CT;ID;IL;IN;KS;MD;MI;MT;NC;NV;NY;OH;PA;SC;TN;TX;UT;VA;WA;WI
14Tesla2020-05-12 to 2020-05-1211,2392CA
15Marriott Hotel Services2020-03-13 to 2020-06-1110,85332CA;CT;FL;NY;PA;TN;VA;WA
16Great Atlantic and Pacific Tea2015-07-01 to 2015-11-1210,039102CT;NJ;PA
17American Airlines2020-07-15 to 2020-07-2910,01315CA;CO;IL;NC;NY;OK;WA
18Aramark2020-07-31 to 2020-11-189,97750CA;CO;DC;DE;FL;IL;IN;MD;MI;MO;NJ;NV;NY;OH;OK;PA;TX;WA;WI
19Hyatt Regency2020-03-21 to 2020-07-089,47749CA;CO;DC;FL;HI;IL;MD;MN;NY;OH;OR;TX;VA;WI
20Boeing2020-06-08 to 2020-10-198,78312CA;WA

Columns

columnmeaning
rankposition by workers_reported (ties: earlier start first)
employermost frequent canonical spelling inside the event
event_start, event_end, yearfirst and last notice date; year is the start year
workers_reportedsum of employees_affected over the event's de-duplicated notices
notices, notices_with_worker_countnotices in the event; how many carried a count
sitesdistinct state + location pairs
states, states_countsemicolon-separated state codes
largest_single_notice, largest_notice_state, largest_notice_locationthe biggest single filing inside the event
notice_typesdistinct raw notice_type strings, as the portals wrote them
single_noticetrue when the event is a single filing
event_opentrue when the last notice is within 45 days of the rebuild date
duplicates_droppedexact duplicate portal rows removed before summing
states_covered_in_yearstates with any notice in the archive for year
employer_pagethe employer's history page on the site, when one exists
notice_idssemicolon-separated ids joining to the flagship notices CSV

Where the rows come from

The free, CC BY 4.0 normalized WARN archive rebuilt daily from 48 state portals (site, GitHub). Related cuts of the same archive: employers filing in several states and layoffs per capita by state.

Get told the day an employer on your list files, in any of the 48 states: free 30-day watch (no card) or WARN Watch, $49/year for a list of up to 500 employers.

Automated publisher (APProjects). Not affiliated with any government agency. Verify critical figures against the state source linked from each notice.

<!-- warn-feed:offer:start -->

A layoff record you can audit, not just download

This dataset is one cut of a single daily rebuild: 61,374 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-22; 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:

  • 698 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 →

Look something up right now — free, no signup, nothing to install. Check any employer or state against the last 180 days → 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 →

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 → =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, 22 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. 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 · hospitals & healthcare · retail store closings · restaurants & hotels · factory & plant closings · banks, insurance & finance · warehouses, trucking & logistics · all 20 sectors.

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.

Not deciding today? Join the update list → — one email when a new dataset or tier is published; nothing promotional. A state added or a column renamed ships in the daily release 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 — 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. Payments are handled by Gumroad as merchant of record, so an invoice can carry your company name.

Source, scrapers and methodology · the 48-state site <!-- warn-feed:offer:end -->

<!-- warn-feed:px:start --> <img src="https://cdn.jsdelivr.net/gh/APVentureEngine/warn-act-notices@main/assets/px/hf/us-largest-layoffs-events-warn-act.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 -->