Data Sources

This early-warning system combines automated data ingestion with human research. Some signal types are fully automated — new entries appear without human intervention. Others require someone on the ground investigating. Here's what's covered and where help is needed.

Automated Ingestion

287(g) Agreements

Automated

Local law enforcement agreements with ICE for immigration enforcement. Scraped from Prison Policy Initiative compiled data. FIPS-resolved via Census county lookup.

Script: ingest_287g.py Entries: 1311 Weight: 7

ANC Contracts

Automated

Alaska Native Corporation subsidiary contracts in detention/security, via USAspending.gov API. Tracks sole-source federal contracts to ANC entities like Akima, Nana Regional, ASRC.

Script: ingest_usaspending.py Entries: 244 Weight: 8

Budget Distress

Automated

County-level fiscal distress indicators from USDA ERS County Typology Codes (2025 edition). Scores persistent poverty, population loss, low employment, low education, and rural status. These are the counties most vulnerable to the "economic development" pitch.

Script: ingest_budget_distress.py Entries: 1120 Weight: 5

IGSA Facilities

Automated

Existing Intergovernmental Service Agreement facilities from Vera Institute of Justice. FIPS-coded. These are counties where ICE detention already operates.

Entries: 1188 Weight: 10

Commission Activity

Semi-automated

County commission agendas and meeting minutes scanned via Legistar API for detention-related keywords. Currently monitoring 30 county and city portals across 12 states. Keyword matching for IGSA, ICE detention, bed capacity, Sabot, 287(g), GEO Group, CoreCivic.

Script: ingest_legistar.py Entries: 3 Weight: 7
Coverage gap: Only 30 of 3,000+ U.S. counties use Legistar. High-priority counties NOT on Legistar (need alternative monitoring): Palm Beach FL, Pinal AZ, Webb TX, Charlton GA, Bradford FL. If your county posts agendas online, we can write a scraper — see the developer guide.

Human Research Needed

These signal types can't be fully automated — they require local knowledge, investigative reporting, or manual monitoring. Each one is a way to contribute.

Sheriff Network Activity

Needs humans

Sheriffs attending detention consultant conferences, making pitches to commissioners, or networking with other sheriffs who've built facilities. The NSA Annual Conference is the primary recruitment venue.

Entries: 1 Weight: 6
How to help: Check your sheriff's social media and press releases for mentions of immigration enforcement partnerships, NSA conference attendance, or meetings with detention consultants. Conference attendee lists (sometimes public via FOIA) are gold.

Communications Discipline

Needs humans

When county officials suddenly start using polished talking points about "public safety mission" and "fiscal sustainability" — that's consulting output. NDA citations, opposition framing as "outside agitators," and detailed plans at early-stage meetings are all signs.

Entries: 2 Weight: 6
How to help: Attend county commission meetings and note when officials use language that doesn't sound like them. File FOIA requests for communications between county officials and detention consultants.

Real Estate Traces

Needs humans

Warehouse purchases, county-owned building assessments, and property transactions near correctional facilities. The federal warehouse model involved $100M+ purchases of empty distribution centers. The IGSA model uses county-owned buildings.

Entries: 42 Weight: 2
How to help: Monitor county property records for large industrial purchases. Check LoopNet and commercial real estate listings for warehouses near county jails. GSA property acquisitions are sometimes visible in federal records. A scraper for LoopNet or county assessor records would be high-impact — see developer guide.

Job Postings

Partially automated

Detention consultant job postings indicate active pipeline work. "ICE Detention Compliance Operations Consultant" in a new state means a new pitch. Requires search API access (SerpAPI) for full automation.

Script: ingest_jobs.py Entries: 6 Weight: 7
How to help: Search LinkedIn and Indeed for "ICE detention," "NDS 2025," or employer names like Sabot Consulting, GEO Group, CoreCivic. Geographic specificity in postings reveals where the pipeline is active.

Legislative Traces

Needs humans

State legislation to block or enable detention agreements. States introducing IGSA bans are states where the pitch is active. States without protections are the open field.

Entries: 1 Weight: 1
How to help: Search your state legislature's bill tracker for "detention," "IGSA," "immigration enforcement." Track bill status and report it. State legislature bill trackers (LegiScan API, OpenStates) could be automated — see developer guide.

How signals become scores

Each entry is weighted by type (IGSA=10, ANC=8, 287(g)=7, etc.), then capped per type so one signal can't dominate. The key insight is the convergence bonus: +10 per signal type beyond 2, +15 more for 5+ types. Three different signal types in one county is far more predictive than ten entries of the same type. Full methodology →

Contribute data → Developer guide Full methodology