Methodology
Immigration statistics are easy to misread because similar-sounding metrics measure very different things. Here is exactly what each number means — and what it does not.
Metrics that are not the same thing
An administrative arrest is the start of a process. Many arrests do not end in removal, and a person can be arrested in one year and removed in another. The two counts are not interchangeable.
Removals are a flow over a fiscal year. Detention population is a stock — the number of people held at a point in time (often reported as an average daily population). Adding them together is meaningless.
An encounter is an event at or near the border (an apprehension or inadmissibility determination). One person can be encountered multiple times. Encounters are not removals and are not unique people.
A Labor Condition Application is a prerequisite an employer files with the Department of Labor. It is not a visa, not a petition, and not an approval. Many LCAs are never used.
USCIS approves petitions inside the immigration system. The State Department issues visas at consulates abroad. A person can have an approved petition without a visa issuance in the same year, and vice versa.
WARN notices record that layoffs happened. They contain no information about who, if anyone, was hired afterward. Layoff data does not prove replacement by H-1B or any other workers.
Reporting periods & data freshness
Sources update on different schedules, so each counter shows the latest available reporting period for its dataset — not a single fixed year. We never present a stale figure as the headline when newer data exists, and every card is labelled so you know exactly what you are looking at:
- Complete A finished fiscal year with final published totals (e.g. CBP encounters FY2025).
- YTD Fiscal-year-to-date — the current fiscal year is still in progress, so the total is partial (e.g. border encounters FY2026 YTD).
- Preliminary The agency’s latest release that has not yet been finalized and may be revised (e.g. FY2025 H-1B petition totals).
- Point-in-time A snapshot on a specific date rather than a running total (e.g. the ICE detention population, which is a count on one day).
- Est. pace A projected full-year figure, scaling a year-to-date total by the share of the fiscal year elapsed. An estimate, not an official total.
Where a source lags — USCIS’s employer-level H-1B Data Hub and DOL’s wage disclosures run roughly a year behind — the latest available complete year (FY2024) is shown and labelled as such, rather than guessing at unpublished newer figures. Toggle the dashboard between Latest available, Last complete fiscal year, and 5-year trend to compare. We use “latest available” and “YTD,” never “real-time,” because the underlying sources are not live feeds.
Why some counters are estimated
Different agencies publish on different calendars — some monthly, some quarterly, some only once a year. When a fiscal year is still in progress, we show the latest reported value and, where labelled pace est., project a full-year figure by scaling the year-to-date total by the share of the fiscal year elapsed. Projections assume the current pace continues; they are estimates, not official totals, and will be revised as new data lands.
The U.S. federal fiscal year runs from October 1 to September 30. “This fiscal year” counters therefore accumulate from October, not January.
The four integrity labels
Every figure on this site carries one of four labels. They are not decoration — they describe exactly how much weight a number can bear.
- ✓ Reported — the agency published this exact number for this exact period. We only reformatted it.
- ≈ Projected — we extrapolated a reported partial period to a full one, by scaling the year-to-date total by the share of the fiscal year elapsed. It assumes the current pace continues.
- ~ Estimated — we apportioned a reported total using a share the agency itself published.
- ◇ Modeled — we apportioned a reported national total using our own assumed weights, which the agency has never published. This is the weakest claim we make. ICE arrests by state, removals by nationality, border encounters by citizenship, and the curated employer/wage views are all modeled. Read them as illustrative of relative scale, never as official counts.
Tracked subsets vs national totals
Employer, state, and occupation views are built from a curated set of large, public H-1B sponsors. These are a meaningful sample, not the entire country, and they are labelled Modeled. National counters (for example, total H-1B approvals or border encounters) are drawn from agency-wide totals and are labelled accordingly.
Two USCIS products can disagree on the latest year, and we do not hide that. Per-employer approvals come from the H-1B Employer Data Hub, whose most recent published export is FY2023. National petition totals come from a separate USCIS release that runs a year ahead. Figures from the two will not add up to each other.
Layoff (WARN) coverage
Covers 5 states with a machine-readable WARN feed (CA, NJ, TX, VA, WA). This is not a national total — most states publish WARN notices only as HTML, Excel, or PDF. Every notice we show is a real filing republished from a state agency’s open-data portal, with a link back to that portal on each row. We do not estimate, model, or infer layoff notices — if a state has no machine-readable feed, we show nothing for it and say so.
Yearly totals date each notice by the state-published notice/received date where available, and fall back to the layoff effective date for states that publish only that (e.g. New Jersey). Notices with neither date are excluded from yearly totals but included in the overall counts.
WARN notices report planned layoffs. They do not indicate whether or how the affected roles relate to visa sponsorship, and no dataset here identifies the immigration status of affected workers.
Corrections
When we get something wrong we say so, in public, with the date. Corrections are recorded in docs/data-corrections.md in the project repository.
Until this date, some state and employer pages displayed individual “WARN notices” that this site had generated rather than ingested: annual layoff totals reported in the press, split into invented notices with invented filing dates, and shown under a government source label. Those records have been deleted. Every layoff figure now comes from real notices filed with state agencies, each linking back to its own state portal. Some displayed totals changed as a result. Automated tests now block any reintroduction of generated records.
What this site will not do
- No individual immigrant profiles, tracking, or identifying personal data.
- No reporting of specific enforcement operations or locations of people.
- No claims that immigrants caused layoffs, or that sponsorship displaced specific workers.
- No dehumanizing language, slurs, or inflammatory framing.
Every figure links to its public source. See the sources page for the full list, and the refresh status page for when each dataset was last updated.