Chicago Building Records logo — a record sheet with a mark struck across itChicago Building RecordsWhat the City's building records prove
Reading the record

Reading a Chicago Building Violation Record

A violation row records that an inspector wrote something down on a date. It is not a finding against the building.

What a violation entry actually is

A building violation entry is a single cited line item: one condition a Department of Buildings inspector recorded as out of compliance at an address on a given date. It proves that the inspector wrote that down. It does not prove the condition existed, because whether it existed is decided somewhere the dataset does not reach, and it does not prove the condition persists today.

The entries live in the Building Violations dataset the Department owns on the Chicago Data Portal, 2,033,347 rows covering January 1, 2006 to the present when the count was read on October 22, 2026, updated daily according to the City's own metadata. Each row carries a violation code, a description, an ordinance reference, dates, free-text inspector comments, an inspector identifier, and a set of fields describing the inspection the citation came out of.

Readers treat these rows as verdicts. They are closer to entries in a case docket, and the City says as much in the documentation it publishes alongside them.

One inspection, many rows

The City states the structure outright: violations are always associated to an inspection, and there can be multiple violation records to one inspection record.

The consequence runs through every count anyone makes from this data. A single visit that found six deficiencies produces six rows. A building showing forty violations may have been inspected four times. Counting rows is not counting inspections, and it is certainly not counting problems — it is counting cited line items, and any figure drawn from the data has to be described that way or it misleads.

It also means a long list looks alarming for reasons that have nothing to do with severity. A thorough inspector on one visit generates more rows than a cursory one across three.

The three statuses, and what each one means

The City's own definition of the violation status field reads: Complied means violations have been addressed; Open means violations are open; No Entry means the inspector could not gain access to the premise to conduct an inspection.

Each of those is narrower than it sounds.

  • Complied is a case-management state. Addressed means the file was closed. Read against the City's statement that the data does not necessarily reflect the current condition of the building or property, a complied status is not a finding that anything was repaired well, or at all, or that it has stayed repaired since.
  • Open means the file is not closed. It does not establish that the condition persists. An owner may have fixed the problem years ago and never had it reinspected, and nothing in the record distinguishes that from neglect.
  • No Entry is neither of the above, and it is the most misread of the three. It records a failed attempt to look. A run of No Entry rows is a record of the City being unable to get in — information of a completely different kind, routinely counted as if it were a violation history.

What the record does not separate

The City's description of the dataset contains a sentence most readers never see: the data contains cases where a respondent has been found to be liable as well as cases where the respondent has been found to be not liable.

Liable and not-liable outcomes sit in the same table, undifferentiated by the status field. A violation row therefore does not establish that anyone was found responsible for anything. The adjudication — the proceeding that decides whether the cited condition was in fact a violation and who answers for it — happens at the Chicago Department of Administrative Hearings or in the Circuit Court of Cook County, and the result of it is not published here.

This is the gap that does the most damage in practice. A reader who finds eleven violations at an address has found eleven citations, some unknown number of which may have been resolved in the owner's favor, and the public dataset offers no way to tell which.

Source: Building Violations dataset description and field definitions, City of Chicago.

The City's own warning about transactions

The most important sentence on this subject was written by the City and published in the dataset description itself:

Lenders and title companies, please note: These data are historical in nature and should not be relied upon for real estate transactions. For transactional purposes such as closings, please consult the title commitment for outstanding enforcement actions in the Circuit Court of Cook County or the Chicago Department of Administrative Hearings.

Title companies are the firms that research and insure title at a sale; lenders are the institutions financing it. The City is telling both, in the data itself, that this is not the record to rely on at a closing, and it names the records that are — the title commitment, the Circuit Court, Administrative Hearings. None of the three is on the Data Portal.

The common error follows directly from ignoring that instruction: running an address through the portal before a closing and treating a clean result as clearance. The City has said in writing that this is the wrong record for that purpose. That warning is not a disclaimer of liability tacked onto a download page; it is a statement about what the data can carry.

Why the record exists at all

The inspection category field answers a question readers rarely think to ask: why does this record exist? Two categories are documented in the City's published field description. COMPLAINT means the inspection resulted from a 311 complaint. PERIODIC means it resulted from a recurring inspection cycle.

The published field description is truncated, and the full list of inspection categories could not be verified — so these two should not be taken as the only ones the City uses.

Even so, the distinction matters. A complaint-driven record exists because a person called 311. A periodic record exists because the building falls into a class the City inspects on a cycle. Neither tells a reader anything about buildings that nobody complained about and that fall into no cycle — which is most buildings in Chicago. The dataset is a record of looking, not a record of being, and the decision to look is usually made by someone other than the City.

Two traps in the entry itself

The lot, not the address. The City carries a property group field because, in its own words, properties in Chicago can typically have multiple point addresses, range addresses and buildings — corner lots and large lots being the examples it gives. A search run on one street address can miss citations filed against a sibling address on the same lot. For corner buildings this is the routine case rather than the exception, and a clean result on one address is not a clean result for the property.

The code numbering. The violation ordinance field references the code provision cited, and Chicago renumbered its construction codes partway through the dataset's span: the Chicago Construction Codes were adopted in 2019 and became mandatory for most permit applications started on or after August 1, 2020, with the material reorganized into Titles 14A, 14B, 14R and 14X. Citations in rows from 2006 onward are therefore written against two different numbering systems, and a section number from an older row does not necessarily correspond to anything in the current code. Some City guidance documents still in circulation cite the superseded numbering.

Source: Implementation Memo, City of Chicago Department of Buildings, December 15, 2019.

Frequently Asked Questions

Does Complied mean the problem was fixed?

It means the file was closed. The City defines Complied as violations have been addressed, and separately states that the data does not necessarily reflect the current condition of the building or property. A complied status records case closure, not a verified repair and not a current condition.

What does No Entry mean on a Chicago violation record?

The City defines it as the inspector having been unable to gain access to the premise to conduct an inspection. It is neither compliance nor non-compliance. A string of No Entry rows records the City being unable to look, which is a different kind of information from a violation and is frequently miscounted as one.

Does a violation mean the owner was found responsible?

No. The dataset contains cases where a respondent was found liable and cases where the respondent was found not liable, undifferentiated. The adjudication happens at the Department of Administrative Hearings or in the Circuit Court of Cook County, and its outcome is not published in the violations data.

Why does the City tell title companies not to use this data?

Because it is historical. The dataset description states the data should not be relied upon for real estate transactions and directs lenders and title companies to the title commitment for outstanding enforcement actions in the Circuit Court of Cook County or at the Chicago Department of Administrative Hearings.

Why does one building show so many violations?

Because one inspection can generate many rows. The City states that violations are always associated to an inspection and that there can be multiple violation records to one inspection record, so a single visit finding six deficiencies produces six entries. The row count measures cited line items, not visits or problems.

Can a clean violation search miss something?

Yes. The City's property group field exists because a Chicago lot can carry multiple point addresses, range addresses and buildings, so citations may be filed against a sibling address on the same lot. Corner buildings are the common case, and an address-level search will not surface them.