Back to selected projects

Academic team project · Real-world public data

Chicago food inspections: compare rates with context.

How do inspection failure rates differ by location, facility type and recorded risk level, and how did those patterns change from 2019 through 2025?

I developed two Tableau dashboards using real-world City of Chicago food inspection records for an academic team project. The dashboards combine geographic exploration, time trends and category comparisons. Our team presentation is upcoming.

Project type
Academic team analysis using real-world public data
Team
Jon Capalbo, Camerun Hannah, Mostafa Moawad and Yovanny Moscoso Huaman
My role
Tableau dashboard development. The upcoming presentation will be a team effort.
Tools and deliverables
Tableau; two dashboards, eleven worksheets, shared filters, ZIP selection and annual/monthly trends
Scope
123,673 inspection records from 2019-2025, including 103,614 evaluated inspections. Source snapshot supplied October 17, 2026.

Dashboard previews

Explore geography, trends and inspection context.

These images are native Tableau exports of the downloadable workbook with all years, facilities, risk levels and inspection types selected. Open either image at full size to read the detail.

Tableau overview: 103,614 evaluated inspections, 23,843 failures and a 23.0% failure rate, with a ZIP summary map and annual rate and volume trends.
Overview and geography. ZIP circles summarize inspection records. The rate and volume trend axes use focused ranges; the web summary below provides a zero-based rate scale and exact counts.
Tableau comparisons of failure rates by facility group, recorded risk and inspection type, with evaluated and failed inspection count bars.
Establishments and risk. The blue Total inspections bars represent evaluated inspections, and orange bars show the failed subset. Restaurants and other facility groups use separate count scales. Category rates describe inspection visits, including repeat visits.

Main finding

The annual failure rate fell from 24.9% to 21.1% between 2023 and 2025.

That is a decline of about 3.8 percentage points among evaluated inspections. The charts describe the records in the dataset; changes in inspection activity and the mix of facilities may affect the comparison.

Across all seven years, 23,843 of 103,614 evaluated inspections failed, giving an overall failure rate of 23.0%.

Static web summary from the workbook data

Annual inspection failure rates.

Each bar uses the same 0-30% scale. The table provides counts and exact denominators.

  1. 201922.4%
  2. 202023.3%
  3. 202123.1%
  4. 202224.9%
  5. 202324.9%
  6. 202421.8%
  7. 202521.1%

This is an HTML summary of the packaged data. Native Tableau exploration is available in the downloadable workbook.

Evaluated inspection counts and outcomes by year
YearEvaluatedFailedFailure rate
201916,1213,61222.4%
202012,6002,93523.3%
202113,1393,03523.1%
202214,2863,55424.9%
202315,4133,83524.9%
202415,9953,48121.8%
202516,0603,39121.1%
Total103,61423,84323.0%

Inspection context

Complaint and routine inspections describe different situations.

Complaint inspections had a 37.4% failure rate, compared with 24.5% for routine canvass inspections and 11.6% for re-inspections. The inspection-type filter helps narrow comparisons to a more consistent context.

These observed differences do not establish that inspection type causes an outcome. Complaint inspections, for example, are selected because someone reported a concern.

Selected inspection contexts, full 2019-2025 period
ContextEvaluatedFailedFailure rate
Complaint10,8174,04837.4%
Routine canvass51,64212,65924.5%
Re-inspection24,1882,79711.6%

Inside the Tableau workbook

Two views connect outcomes with volume.

Overview and geography
Headline evaluated counts, failed counts and failure rate; a ZIP-level map; and rate and volume trends. ZIP selection filters the headline values and both trends. The time control switches between annual and monthly aggregation.
Establishments and risk
Failure-rate comparisons by facility group, recorded risk and inspection type. Evaluated and failed count bars provide context; restaurants have a separate count panel because they account for 68.7% of evaluated inspections.
Shared controls
Year, facility, risk and inspection type narrow the evaluated records. Rates are recalculated from the filtered numerator and denominator.

For example, ZIP 60614 had 893 failures in 3,730 evaluated inspections (23.9%), compared with 542 in 2,793 (19.4%) for ZIP 60640. Facility mix and inspection context may differ, so these figures are starting points for investigation.

Open the interactive dashboards on Tableau Public to use the shared controls and switch between sheets. The fixed-width Tableau canvases work best on a desktop; the previews and findings here reflow for smaller screens.

Tableau Public hosts an all-row, unaggregated extract created from the packaged CSV. Use this website's sanitized workbook download; workbook copying and downloading are disabled on Tableau Public. The previews show the native dashboard layout; the web findings are a separate static summary.

Source and preparation

Define the denominator before comparing rates.

City of Chicago Food Inspections is the public source. The supplied October 17, 2026 snapshot has 317,175 rows. The workbook retains the 123,673 records dated within 2019-2025, covering seven complete calendar years.

Failure-rate calculation
Failed inspections divided by evaluated inspections. Evaluated means Pass, Pass w/ Conditions or Fail. The rate divides summed counts after filtering, rather than averaging group percentages.
Excluded outcomes
Out of Business (9,392), No Entry (7,904), Not Ready (2,735) and Business Not Located (28) remain in the packaged source but are excluded from the rate. These outcomes are not passes.
Category preparation
Named common facility types are normalized for case and surrounding spaces, daycare variants are combined, and remaining types use Other / unspecified. Inspection groups combine re-inspection variants. Original category fields remain available.
Validation
The packaged CSV reconciles to the supplied snapshot's inspection IDs and retained raw fields. No duplicate Inspection IDs were found in the period. Annual, risk and inspection-context totals reconcile with the headline counts.

Interpretation limits

Inspection records count visits, including repeat visits.

A useful follow-up would compare routine inspections within similar facility and risk groups, then investigate repeat visits at the establishment level. The current project reports descriptive patterns and does not claim a public-health intervention or measured business impact.

Attribution

An academic team deliverable.

I developed the Tableau dashboards for this academic team project. The team includes Jon Capalbo, Camerun Hannah, Mostafa Moawad and Yovanny Moscoso Huaman. Our presentation has not taken place yet and will be a team effort. Dashboard development is my contribution; this page does not assign me sole ownership of the team's other work.

The downloadable copy retains the public inspection records and analytical definitions. Tableau author and machine fingerprint metadata have been removed for public distribution. The original local workbook is preserved.

The workbook requires a compatible Tableau application. Both dashboards in the sanitized copy were opened and exported in Tableau Desktop 2026.2 before publication.

Contact

Contact Jonathan.

I'm open to business analysis, reporting, operations and business systems opportunities.