How We Calculate Livability Scores
Every address gets 41 checks in 12 modules. 35 of them add or subtract points; the other 6 are shown for context only. This page lists every rule, radius, time window and point value.
Scoring Algorithm
Every address starts at 100. Each check that returns data adds its points: negative for problems, positive for advantages. There are no category weights; a point is a point in every module. Penalties all count. Bonuses count up to +30 in total, however many a location earns. The result is clamped to 0–100:
score = clamp(100 + Σ penalties + min(Σ bonuses, 30), 0, 100)
The cap exists because the bonuses in the table below sum to +104 against −224 of penalties. Without it, a well-located address could absorb the −25 bedbug penalty and still show 100 — parks, transit and restaurants alone paid for it, and the clamp hid the fact that the raw total was still above 100. Penalties now have to reach only −30 before the score leaves 100. Per-check points are unchanged; the cap is applied once, to their sum. When it bites, the report says so ("+41 in bonuses, +30 counted").
A check whose data could not be fetched adds 0 and is marked unavailable in the report. It never counts as a clean result.
Score bands:
The 12 Modules
The range next to each module is the most it can add and the most it can subtract, if every check hit its best or worst case. Distances are straight-line.
Building Health
0 to −67 pointsRecords filed against this tax lot (BBL) or its buildings. No radius.
- Heat Complaints
- 311 heat and hot water complaints at this lot in the past 12 months, measured per residential unit so a 200-unit tower is not penalised for being large: −18 at the 99th percentile of NYC buildings (10+ filings and 1.66 per unit, or 38+ filings where the unit count is unknown); −10 at the 95th percentile of NYC buildings (5+ filings and 0.4 per unit, or 8+ filings where the unit count is unknown); −4 at the 90th percentile of NYC buildings (3+ filings and 0.16 per unit, or 2+ filings where the unit count is unknown).
- −18
- Bedbugs
- HPD bedbug filings (Local Law 69) for this lot in the past 24 months, measured per residential unit: −25 at the 99.6th percentile of NYC buildings (2+ filings and 0.16 per unit, or 4+ filings where the unit count is unknown); −15 at the 99th percentile of NYC buildings (1+ filings and 0.05 per unit, or 2+ filings where the unit count is unknown); −8 at the 98th percentile of NYC buildings (1+ filings and 0.0118 per unit, or 1+ filings where the unit count is unknown). A filing that reports zero infested units does not count.
- −25
- Elevator
- DOB NOW elevator compliance: −10 if any elevator is sealed by DOB, or is active, was in service before last year, and has no periodic inspection or Category 1 test on file for last year or this year.
- −10
- HPD Violations
- Open class B (hazardous) and C (immediately hazardous) HPD violations issued in the past 24 months, divided by the lot's residential units from PLUTO. −10 at 4.4+ per unit and 10+ violations (top 1% of NYC buildings with 3+ units); −6 at 1+ per unit and 5+; −3 at 0.33+ per unit and 3+. Without a unit count the thresholds are 58, 15 and 5 violations.
- −10
- DOB Complaints
- Open DOB complaints entered in the past 24 months for every building on the lot: −4 for 2 or more, −2 for 1.
- −4
Safety
+8 to −34 pointsNYPD records around the address. Crime, shooting and arrest windows are the 12 months ending at the latest date NYPD has published, not today.
- Crime
- NYPD crime complaints within 300m, compared with the borough average: the mean count within 300m of 100 random points in each residential neighborhood (NTA) of the borough, over the same kind of window. 50%+ above average: −8. 20–50% above: −4. 30%+ below: +5. Otherwise −2 if there are 5 or more incidents, else 0.
- +5 to −8
- Shootings
- NYPD shooting incidents within 500m: −8 for 1–5, −12 for 6 or more. The dataset does not say which shootings were fatal.
- −12
- Arrests
- NYPD arrests within 300m (year-to-date and historic arrest files combined), compared with the borough average: the mean count within 300m of 100 random points in each residential neighborhood (NTA) of the borough, over the same kind of window. 50%+ above average: −8. 20–50% above: −5. 30%+ below: +3. Otherwise −2 if there are 5 or more arrests, else 0. Each felony arrest adds −2, up to −6 more.
- +3 to −14
Nuisance
0 to −68 points311 complaints and construction permits near the address.
- Construction Noise
- Issued DOB after-hours variance permits within 200m with a variance night still to come: −5.
- −5
- Trash
- 311 Missed Collection and Dirty Condition complaints within 100m in the past 6 months: −5 if more than 9. NYC renamed "Dirty Sidewalk" to "Dirty Condition"; until September 15, 2026 this check still asked for the retired name, which had returned no records for two years, so it counted missed collections alone.
- −5
- Rats
- 311 rodent complaints within 150m in the past 6 months: −1 each, capped at −10.
- −10
- Noise
- 311 noise complaints within 100m in the past 6 months: with 3 or more, −1 each, capped at −8.
- −8
- 311 Building
- 311 complaints at this lot in the past 12 months, except the 15 types listed under "What the two 311 density counts leave out" below. 10–19: −5. 20–39: −12. 40–59: −20. 60–99: −25. 100+: −30.
- −30
- 311 Adjacent
- The same complaint types within 50m, excluding this lot, in the past 12 months. 10–24: −3. 25–49: −6. 50+: −10.
- −10
Risks
0 to −10 pointsCoastal flood exposure at the address point.
- Flood Risk
- NYC Future Floodplain 2020s map (FEMA 2013 Preliminary Work Maps plus the NPCC 11-inch sea-level-rise projection). Inside the 100-year floodplain (zones A, AE, AH, AO, V, VE): −10. Inside only the 500-year band: −5. The hurricane evacuation zone and whether Hurricane Sandy flooded the spot are shown but not scored. This is not FEMA's current effective flood map, and rain-driven street flooding is not scored.
- −10
Building Info
+8 to −3 pointsTax-lot facts from PLUTO and HPD registration.
- Building Age
- PLUTO year built. Before 1940: −3. 1940–1959: −2. 1960–1979: 0. 1980–1999: +3. 2000 or later: +5. Age is a proxy; no pipe or paint records are checked.
- +5 to −3
- Building Details
- Residential units, floors and zoning from PLUTO. Informational.
- Info only
- HPD Registration
- +3 if the lot has an HPD Multiple Dwelling Registration. Most rental buildings with 3 or more units must register, so this is a rough proxy, not a rent-stabilization record. DHCR data is not checked.
- +3
Commute
+11 to −13 pointsSubway, bike share and airport access.
- Transit Access
- Straight-line distance to the nearest subway or Staten Island Railway entrance. Under 0.1 mile: +5. Over 0.6 mile: −8.
- +5 to −8
- Commute Times
- Estimated minutes to 8 destinations. Subway: walk to each of the 6 nearest stations plus the scheduled weekday midday (10:00–15:00) ride from MTA timetables, with typical waits and transfers; the fastest is shown. Bike, taxi and walk: straight-line distance at 11, 12 and 3 mph. Informational.
- Info only
- Weekend Service
- Planned work in the MTA service alerts feed affecting the nearest station between Saturday 00:00 and Monday 00:00 of the coming weekend (New York time). Shown, not scored: it cost −5 until September 15, 2026, but a score is cached for up to 14 days, so the penalty outlived the weekend its own text named.
- Info only
- Citibike
- +3 if a Citi Bike station is within 200m.
- +3
- Airport Access
- Median recorded Uber/Lyft/Via trip time from the address's taxi zone to JFK, LaGuardia and Newark, from 4 sample months of 2024 TLC trip records; airports with fewer than 30 recorded trips are left out. Fastest airport 19 minutes or less: +3. Up to 29: 0. Up to 33: −3. Over 33: −5. The cut-offs are the 25th, 75th and 90th percentiles of that fastest-airport figure across all 255 taxi zones with trip data, so a zone is ranked against the city rather than against a round number: 29.8% of zones reach the top tier and 8.599999999999994% fall into the bottom one. Before September 15, 2026 the cut-offs were 25, 40 and 60 minutes, inherited from a straight-line estimate the TLC medians replaced; 59.2% of zones cleared the old top tier and none reached the bottom one.
- +3 to −5
Quality of Life
+15 to −11 pointsStreet-level conditions around the address.
- Restaurants
- Restaurants within 300m, each counted once at its latest letter grade. 70%+ grade A: +5. Otherwise more than 3 grade C: −3.
- +5 to −3
- Traffic Safety
- Motor vehicle crashes within 200m in the 12 months ending at the newest crash date in the dataset, which can be months before today. 0–1: +3. 4–7: −3. 8+: −5.
- +3 to −5
- WiFi Access
- +2 if free Wi-Fi is within 200m: a LinkNYC kiosk whose Wi-Fi was reported up in the past 30 days, or another provider's hotspot from the 2019 city hotspot list.
- +2
- Bus Access
- MTA bus stops within 400m. Any stop: +3, plus +2 if the stops serve 3 or more routes. No stop: −3.
- +5 to −3
Amenities
+23 to −4 pointsEveryday destinations within a short walk.
- Food Access
- +8 if a SNAP-authorized supermarket, super store or grocery store is within 400m. Convenience stores and pharmacies do not count.
- +8
- Parks
- +10 if a NYC Parks property is within 150m, measured to the edge of parks over 10 acres and to the center of smaller ones.
- +10
- Scaffolding
- −4 if the lot has an issued, unexpired DOB NOW permit for a sidewalk shed or supported scaffold.
- −4
- Schools
- +5 if a public school location is within 400m (city school locations file, 2017–18). Attendance and other metrics from the latest School Quality Reports are shown, not scored.
- +5
Environment
+8 to −7 pointsAir and tree canopy.
- Air Quality
- NYC Community Air Survey annual mean NO₂ and PM2.5 for the community district, latest published year: −5 if NO₂ is over 20 ppb or PM2.5 is over 10 µg/m³. These are DwellCheck's thresholds, not EPA limits (EPA annual standards: 53 ppb NO₂, 9 µg/m³ PM2.5).
- −5
- Street Trees
- Living trees within 250m from the NYC Parks tree inventory. Each tree's canopy is estimated from its trunk diameter and weighted by condition; the canopy score is weighted canopy area as a share of the circle, where 8% scores 100. Score 80+: +8. 50–79: +5. 25–49: 0. Under 25: −2.
- +8 to −2
Wellness
+18 to −4 pointsCalm and busy surroundings, and free public places to spend time.
- Sensory Environment
- Calm score minus busy score, each starting at 50. Busy: firehouse within 100m +15 or 200m +8; 311 noise complaints within 200m in 6 months, 15+ +5, 40+ +12, 80+ +20; +3 more with 20+ complaints including vehicle or street noise. Calm: library within 200m +15; NYC Parks property within 300m, measured to the edge of parks over 10 acres and to the center of smaller ones, the largest such park +10, +15 if 1+ acre, +20 if 5+ acres; community garden within 200m +12; public plaza or atrium (POPS) within 200m, +15 indoor or +8 outdoor. Difference of +20 or more: +8. −10 to −29: −2. −30 or less: −4.
- +8 to −4
- Street Vitality
- Permitted community events (block parties, street fairs, farmers markets and similar) held in the borough in the past 12 months. The event data has no coordinates, so this is borough-wide. Informational.
- Info only
- Third Places
- Public libraries, public plazas and atriums (POPS) and community gardens within 400m. 1–2: +5. 3+: +10.
- +10
- Shelter Proximity
- Homeless services facilities within 500m and 311 homeless assistance complaints within 200m in the past 12 months. Informational.
- Info only
Lifestyle
+13 to −3 pointsCafés, errands and nightlife mapped in OpenStreetMap.
- Coffee Index
- Cafés within 400m. 3–4: +3. 5 or more: +5.
- +5
- Walkable Errands
- A 0–100 index of five errand types (grocery, pharmacy, bank or ATM, laundry, post office) within 800m, with extra credit for types within 400m and for several supermarkets or pharmacies. 80+: +5. 60–79: +3. 40–59: 0. Under 40: −3.
- +5 to −3
- Nightlife
- +3 if 6 or more bars, pubs, clubs, beer gardens or late-night restaurants are within 400m.
- +3
Demographics
No score impactCensus context. Never scored.
- Census Data
- Median household income, population, race and ethnicity, poverty rate and education for the census tract, from the American Community Survey 5-year estimates (2018–2022). Informational.
- Info only
Context shown alongside the points
- The neighborhood percentile in the safety card ("fewer incidents than N% of sampled points in <neighborhood>") ranks the address's count of crime, violent crime and severity against the same 100 sample points per neighborhood used for the borough average (share of points with more incidents, ties counted as half). Shooting and arrest percentiles are still estimated from each neighborhood's mean and spread. None of these percentiles change the score, and none of them set the safety verdict — that comes from the borough comparison described below. Until September 15, 2026 the percentile did set the verdict, which is how a card could read "safer than average" above a Crime row that was subtracting points.
- The violent-crime count in the safety breakdown is NYPD complaints for murder, rape, robbery and felony assault (offense key codes 101, 104, 105 and 106). Grand larceny, including theft from a person, is a property crime and is not counted as violent. The count is shown, not scored.
- The neighborhood comparison next to trash, rat and noise counts ("more than at N% of spots sampled in the neighborhood") ranks the address's count among 100 random points in its neighborhood (NTA), one of 197 residential neighborhoods. Each point is counted the same way as the check: same complaint types, radius and window length, from 311 data through September 13, 2026, pulled September 14, 2026. An address in a non-residential NTA (a park or airport, for example) is ranked among all sample points in its borough. The comparison is text only and does not change the score. The sample is refreshed by rerunning the baseline script, not automatically.
- Some report text (the safety summary, arrest pattern note, neighborhood transit description and park descriptions) is written by an AI model (google/gemini-2.5-flash-lite, via OpenRouter) from the data above. It never changes the score.
How the safety verdict is decided
The headline on the safety card and the points on the Crime row answer the same question, from the same number: how far the count of NYPD complaints within 300m sits from the borough average, as a share of that average. Call it rel = (count − borough average) ÷ borough average.
| Count vs borough average | Verdict | Crime points |
|---|---|---|
| 50% or more above it | MUCH HIGHER THAN AVERAGE | −8 |
| 20%–50% above it | HIGHER THAN AVERAGE | −4 |
| Within 30% below to 20% above it | NEAR AVERAGE | −2 at 5+ incidents, else 0 |
| 30%–50% below it | SAFER THAN AVERAGE | +5 |
| 50% or more below it | MUCH SAFER THAN AVERAGE | +5 |
Shootings can only make the verdict worse, never better: any shooting within 500m rules out "EXCEPTIONALLY SAFE", 3 or more rule out "MUCH SAFER THAN AVERAGE", and 5 or more hold the verdict at "NEAR AVERAGE" at best. NYPD no longer publishes a fatality flag, so the fatal-shooting caps in the code never apply.
The neighborhood percentile is printed beside the verdict as context and is labelled as such. It answers a different question — how this block compares with the rest of its own neighborhood — and a quiet block in a busy neighborhood can rank well on one and badly on the other.
What the two 311 density counts leave out
311 Building and 311 Adjacent count how much a lot and its immediate neighbors are complained about. 15 complaint types are left out of both, for two reasons.
- Already scored by a check of their own, so counting them here was a straight double count: HEAT/HOT WATER, Rodent, Missed Collection, Dirty Condition, Noise - Residential, Noise - Commercial, Noise - Street/Sidewalk, Noise - Vehicle, Noise - Park, Noise, Noise - Helicopter and Noise - House of Worship.
- Not building conditions: Illegal Parking, Taxi Complaint and Lost Property are complaints about a vehicle or a driver that happen to be recorded at a kerbside address.
The exclusions are applied in the query, so the same types are gone whether the report lists the complaints individually or falls back to a total. Both sets of tiers are unchanged, so a building with heavy non-excluded complaint traffic scores exactly as it did before. At one Midtown lot the change took the 12-month count from 130 to 48, and the penalty from −30 to −20.
Data Sources
44 public sources: 35 datasets on the NYC Open Data Portal and 9 from the MTA, NY State, USDA, Citi Bike, OpenStreetMap, the US Census Bureau and the Department of City Planning. Cadences are as the publisher lists them, checked September 14, 2026.
Buildings and property
Safety
Environment and flood risk
Neighborhood places
Transportation
Other public sources
How Current the Data Is
- Score cache: a score is calculated when an address is first requested, then reused for up to 14 days. Every report shows when it was calculated.
- NYPD data is published quarterly. Crime, shooting and arrest counts cover the 12 months ending at the latest date NYPD has published, usually one to four months before today. Months before January 1 come from NYPD's historic files. On September 14, 2026 all three ran through June 30, 2026.
- Crash data can stall. The crash dataset is listed as daily, but on September 14, 2026 its newest crash was from June 11, 2026. Traffic Safety counts the 12 months ending at that newest crash, so it always covers a full year but can end months before today.
- Borough crime and arrest averages were computed on September 14, 2026 from the 12 months ending June 30, 2026, and are refreshed by rerunning the baseline script, not automatically.
- Precomputed and static files: subway commute times come from the MTA schedule published August 26, 2026; airport trip times from 2024 TLC trips, before congestion pricing began in January 2025; subway entrances from a 2024 file; school locations from 2017–18; non-LinkNYC Wi-Fi hotspots from 2019; firehouses from a 2022 list; the floodplain from 2013 FEMA work maps projected to the 2020s; census figures from the 2018–2022 estimates.
- Daily sources (311, HPD violations, DOB complaints and permits, restaurant grades) are usually current to within a few days of when the score was calculated.
Confidence Score
Confidence is the share of the score's possible movement that is backed by data. A check's weight is the points it can actually move a score by: its worst case in full, plus its best case scaled by 30 ÷ 104 — the bonus cap divided by every bonus in the table — because only 30 of those 104 bonus points can ever land. Across every check the weights add up to 254 points (224 of penalty plus the 30 of bonus that counts), split by module as Nuisance 68, Building Health 67, Safety 36.3, Commute 16.2, Quality of Life 15.3, Amenities 10.6, Risks 10, Environment 9.3, Wellness 9.2, Lifestyle 6.7, Building Info 5.3, Demographics 0. Each check that failed removes its weight; a module in which no check returned data removes the weight of all its checks. Informational checks weigh 0, so they never lower confidence. 100% means every scored check returned data. Lower confidence usually means:
- A source API was down or timed out
- A source rate-limited the request
- The address is missing from a dataset (for example, a new building)
The bonus scaling is an apportionment, not a measurement. For an address whose bonuses stay under the cap, a failed bonus check really did cost its full value; for one far above the cap it cost nothing. One fixed factor sits between those two cases and keeps the denominator comparable across addresses.
A failed check adds 0 points; nothing is estimated in its place. When Safety, Building Health or Nuisance returns no data at all, the report is marked "Incomplete" and names the missing module, because the score is then missing that module's points. Treat a low-confidence score with caution and check the address again later.
Limitations & Disclaimers
- Not real estate advice: DwellCheck is an informational tool. Always visit addresses in person and consult professionals before making housing decisions.
- Complaints are not verified problems: 311 counts reflect how often people call, not inspected conditions. Arrests reflect police activity as well as crime.
- Address precision: building checks match the tax lot (BBL); neighborhood checks use straight-line circles around the geocoded point, not walking routes.
- No owner or landlord records: DwellCheck does not query ACRIS deeds, landlord portfolios or housing court filings.
- Subjective factors: Scores cannot capture personal preferences, neighbor quality, or future changes.
- No guarantee: A high score does not guarantee a positive living experience, and a low score does not mean an address should be avoided.