160,000,000+ court records · open source

EOIR Analytics

The immigration court system, made explorable.

The U.S. immigration courts (EOIR) release their entire case database through FOIA — every proceeding, hearing, application, and decision, going back decades. It arrives as gigabytes of raw text files that almost nobody can use. EOIR Analytics loads all 160M+ rows into DuckDB and puts an interactive analytics platform on top, so questions that used to take a data team — how has the backlog grown, what does a specific judge’s decision pattern look like, how do outcomes differ by nationality or court — become a few clicks.

🗄️

160M+ rows, one file

The full EOIR FOIA release — proceedings, hearings, applications, decisions, judges, courts — loaded into a single DuckDB database that queries in milliseconds on a laptop.

📈

Charts for the questions that matter

Completions over time, top decisions, nationalities, courts, and judges, in-absentia rates, adjournment reasons — interactive Plotly visualizations over any slice of the data.

⚖️

Judge & court intelligence

Every judge and court is a first-class filter. Compare decision patterns, caseloads, and outcome rates across the entire system — grounded in the government’s own records.

🔍

Filter anything

A sidebar navigator exposes every table and field — asylum, withholding, and CAT applications included — with cross-cutting filters that follow you between views.

💬

Ask the data

An AI chat tab turns natural-language questions into queries over the database, for the questions no pre-built chart anticipates.

🔓

Public data, public code

The records are already public — the missing piece was usability. The platform is open source, so researchers, journalists, and attorneys can run it on their own copy of the data.

Entered into evidence

PythonDuckDBStreamlitPlotlyEOIR FOIA data