Methodology
How a report is built
Every figure comes from a public city record and links back to it. Here is how those records turn into a number, and just as importantly, what that number does not mean.
Step one
Finding the right building
You pick from a list rather than typing freely. Each suggestion carries a BBL, the Borough Block Lot number that identifies a tax lot, and every record we pull is keyed to it.
The worst thing this could do is confidently report on the wrong building. So we never guess at an address, and never accept one the city cannot confirm.
Step two
Weighing the violations
HPD issues four classes, and each one carries a deadline the city sets. A is non hazardous with 90 days to fix, B is hazardous with 30, C is immediately hazardous with 21. The fourth, Class I, covers everything from missing paperwork to a vacate order, so the letter alone tells you very little. Counting them is not enough.
The deadline is the real test. Whether a landlord corrected something inside the window is the city’s judgement, not ours, which makes it the most honest number on a report. We show it on every violation and we lead with how many ran past it.
Class alone misleads. Under Local Law 55 every pest violation is automatically Class C, the same class as no heat in January. Score by class and a single mouse outranks a winter without heating. So we weight each violation by what it actually is. Lead and heat sit at the top, paperwork at the bottom.
Age matters, more than we first thought. Weight halves every nine months, and anything still open counts triple, because that is a condition you would be moving into.
A violation fixed on time counts nothing. That is not a judgement about the landlord, it is what the records show: we tested the score against five years of history, asking whether a building’s record predicts a new hazardous violation in the year that follows. A violation the owner fixed inside the city’s deadline turned out to say almost nothing about what happens next. So the number is about the building’s condition now, not a verdict on its owner.
The owner’s record has not gone anywhere. The repair rate below, the direction of travel, and the portfolio they are named on are all on the report, stated separately — and when a building is clean today but the landlord rarely meets a deadline, the verdict at the top says so. Two claims stated plainly beat one number quietly making both.
We divide the total by the number of apartments, so a 200 unit building is not punished for being large.
The number we would look at
Whether anyone actually fixes things
A violation means an inspector showed up. The repair rate means somebody actually did something about it, the share fixed before the city’s deadline. Two buildings with forty violations each are very different places to live if one fixes 90% on time and the other fixes 9%.
Below ten assessable violations we say so, rather than publish a percentage about a named business off a handful of records.
Rent regulation
What we can and cannot tell you about stabilization
No public list says which apartments are stabilized. But the Department of Finance prints the count on every building’s annual tax bill, and those figures are public, with a link to each source document.
So where we have it, we report a fact. The 2024 tax bill recorded 41 of 43. We also show how that number has moved since 2018, because a falling count is what deregulation looks like in the record. Where we have no bill, we infer from the building’s age and size, and we label it as an inference.
None of this tells you about one apartment. Buildings hold stabilized and market rate units side by side. Only New York State can answer for a specific unit, it does that free, and every report links you straight there.
Plainly
What this is not
Not a verdict on a landlord.
We publish what the record says, with its date. We do not characterize anyone.
A missing building isn’t a good building.
No HPD record reads as “not found”, never as a clean bill of health.
Dismissed violations don’t count.
The city withdraws ~29% of what it issues. Not a repair, not a black mark.
Walk times are estimates.
Straight line distance plus an allowance for the street grid. Fine for comparing places, not a routing engine.
Not legal advice, and records can be wrong.
Check HPD Online before you decide. Every row links straight there.
Provenance
Where the data comes from
All public, refreshed daily from NYC Open Data.
- HPD violations ↗Every housing maintenance violation, its class, and whether it was corrected on time.
- HPD registrations & contacts ↗Who the city has on file as the owner or managing agent.
- PLUTO ↗Apartment counts, year built, floors. The denominator behind every per unit figure.
- Rent-stabilized unit counts ↗The number of stabilized apartments printed on each building’s annual Department of Finance tax bill, extracted by JustFix with a link to every source document.
- HPD complaints ↗What tenants reported, as opposed to what an inspector later confirmed. Counted per complaint rather than per problem, since one call often lists several.
- Residential evictions ↗Evictions actually carried out by a city marshal since 2017. An allegation is not a finding, and an eviction can follow non-payment, a lease dispute, or a case nobody contested.
- MTA station entrances ↗Every subway entrance, and which trains serve it.
- NYC Parks properties ↗Park boundaries, used to measure distance to the nearest edge.
Every report shows when the city last published each dataset, and warns you when one goes stale.
Try it on a real address
Or head back to the front page.