About this dataset
The Chicago Department of Public Health (CDPH) inspects every food establishment in the city —
restaurants, daycares, schools, grocers, long-term-care kitchens, mobile preparers, catering
operations. Each inspection produces one row in this dataset, mirrored on the Chicago Data
Portal as Socrata table 4ijn-s7e5.
Source
- Catalog page: Chicago Data Portal
- Endpoint (SODA v3):
POST https://data.cityofchicago.org/api/v3/views/4ijn-s7e5/query.json - Rows: 311,714 (one per inspection event)
The inspector-shaped gap
The public release is anonymized at the inspector level. Per-sanitarian variance is the headline
finding in academic work like arxiv 2108.05523, but that analysis required CDPH
internal data. Stories grounded in the public release can address establishment-level,
facility-type-level, and inspection-trigger-level variation — not inspector-level.
The July 2018 schema break
Chicago shifted from a Critical / Serious / Minor citation taxonomy to a Priority / Priority
Foundation / Core taxonomy in summer 2018. The violations text field's vocabulary changed at the same time. Cross-period analyses that don't address this are
reading two regimes as if they were one. Filter to one window per chart.
Risk tiers + cadence
The risk field carries the city's pre-assigned tier (Risk 1 (High), Risk 2 (Medium), Risk 3 (Low)). The tier governs inspection cadence
— Risk 1 establishments are visited more often than Risk 3. As the companion story shows, the
tier does not strongly predict inspection outcomes; it predicts how many chances each
establishment has to fail.
Caveats
- Inspector identity is anonymized. Per-sanitarian variance is not recoverable from the public data.
- License IDs drift. A restaurant that changes ownership or name receives a new
license_ID. Per-establishment trajectories are stable within an ownership tenure but break across one. - "Out of Business" / "No Entry" / "Not Ready" / "Business Not Located" are non-inspection outcomes — the inspector arrived and found nothing to inspect. Stories that compute
fail rates should restrict to
results IN ('Pass', 'Pass w/ Conditions', 'Fail'). - The 0-license entry. Some inspections have
license_ = 0, typically Mobile Food Preparers and event-style operators. Per-establishment rollups should filter these out.
Citation
Chicago Department of Public Health (2026). Food Inspections. Retrieved 2026-06-12 via Chicago Data Portal SODA v3.