Free to read
Every record on this site is free to read. An account exists only to save watchlists and send alerts.
Show the source
Every number on this site traces to a named public dataset with a visible sync timestamp.
Records, not verdicts
We publish what the city recorded, and where we rank, we rank by counting those records. We add no opinion of our own about any owner or tenant, and the ranking method is written on the page doing the ranking.
Corrections
Report a record that looks wrong and a person checks it against the source dataset. If our copy is off, we fix it. If the city's record is what is off, we say so and point you at the agency.
How we score buildings
The letter grade on every building page is arithmetic, not opinion. Seven inputs from the public record are converted to points on a fixed 0-100 scale (0 is pristine, 100 is the worst the scale can express) and the total maps to a letter. It is a fixed scale, not a comparison to other buildings, and we publish the exact point values because a score you cannot audit is a score you should not trust.
A grade describes public records about a building, not the people living in it or the current condition of any single apartment. Records lag: a violation corrected yesterday may still read as open until the city processes the paperwork. Heat and bedbug inputs are derived from record text and filing data, so edge cases in the source data can miscount them. When one does, report it and we will check it.
How we group portfolios
Every residential building of three or more units has to file an annual property registration with HPD, naming the owner and, where there is one, the managing agent. That filing is the only citywide link between a building and the people behind it, so it is the link we use.
- A landlord page collects every building whose current registration lists that exact corporation name, or that exact individual name, in an owner role.
- A management page does the same for the managing agent named on the registration.
- Matching is on the name as filed. We do not merge affiliates, parent companies, or spelling variants, so one operator using ten LLCs appears as ten portfolios, and a typo in a filing makes its own page.
- Registrations lag. A building sold last month can stay attached to the previous owner until the new registration is filed and published.
A portfolio page is therefore a view of what the registration file says today, not a corporate ownership map. If a building is grouped under the wrong name, report it with the address and we will check the registration.
Every dataset we use
Every dataset behind this site: where it comes from, how often we pull it, and when it last updated. Backfilling means the first full load is still running. Updating means the city re-published the dataset and we are re-walking it, which some DOB feeds require nightly. Retrying means the last pull hit a transient error and the next hourly run will retry it. Sync failing means a dataset has not synced in over a day and may be missing recent records.
Rows synced is a rounded count of the rows our pipeline has pulled since we started tracking it, not the size of the source dataset. Source: NYC Open Data (data.cityofnewyork.us). Times shown in Eastern Time (ET). Free to use with attribution.
Where the public record has gaps
Fire inspections stop in 2024. NYC marked the Bureau of Fire Prevention inspection datasets “Historical” and stopped publishing new rows. There is no live replacement, so a building with no recent FDNY record here may still have been inspected — the city simply is not publishing it. What we can still show is current: OATH summonses issued by the Fire Department, and the FDNY vacate list.
Some records never resolve to a building. OATH summonses and 311 complaints arrive with an address and no building number, and roughly half of those addresses do not geocode — intersections, and addresses the city recorded malformed. Those records appear in the feed but cannot be attached to a building page, so a building’s own page can understate what has been filed against its address.
Not every building is on the map. Map positions come from the city’s building-footprint file, matched on BIN. Buildings that have been demolished, and BINs that only ever appeared in a violation record, have no footprint and so no pin. Their records are still in the feed, on their building page, and in the rankings.
Contact
Email hello@openviolations.org or use the form, for anything: a record that looks wrong, a question about the method, press, or a data request. Both get read.
Open the contact formIf a record looks wrong, include the violation or summons number so we can find it in the source dataset. Leave an email on the form and we reply; leave it blank and we still read the report, we just have no way to answer.
What we store about you
Nothing, unless you sign in, and then only your email address, your watchlist, and your alert preferences. If you verify a phone for text alerts we store that number too. We run no ad trackers, and we do not resell data or share addresses with landlords. Every record on this site is readable without an account, and deleting your watchlist entries removes them for good.