Building Scores
Overview
Section titled “Overview”Borough enriches building data with quality scores computed from NYC Open Data sources. Each score ranges from 0 to 100, where higher is better.
Scores are available via GET /v1/building/{id}/scores.
Score types
Section titled “Score types”Health Score
Section titled “Health Score”Source: HPD Violations (NYC Department of Housing Preservation & Development)
Measures building maintenance quality based on open HPD violations.
- Class C (immediately hazardous): -3 points each
- Class B (hazardous): -2 points each
- Class A (non-hazardous): -1 point each
- Formula:
max(0, 100 - weighted_sum)
Individual violations are available via GET /v1/building/{id}/violations.
Noise Score
Section titled “Noise Score”Source: 311 Service Requests (noise complaints)
Measures ambient noise levels based on 311 noise complaints within 200 meters of the building over the trailing 6 months.
Uses logarithmic inverse normalization against a max of 50 complaints.
Safety Score
Section titled “Safety Score”Source: NYPD Complaint Data
Measures neighborhood safety based on NYPD complaint data within 400 meters over the trailing 12 months.
Weighted by severity:
- Felony: 5 points
- Misdemeanor: 2 points
- Violation: 1 point
Uses logarithmic decay against a max of 200 weighted points.
Transit Score
Section titled “Transit Score”Source: MTA GTFS Stops
Measures public transit accessibility based on proximity and density of subway/bus stops within 400 meters.
Two components (50 points each):
- Proximity: Linear decay based on distance to nearest stop (0-400m)
- Density: Logarithmic scale of stops within 400m
Update frequency
Section titled “Update frequency”| Score | Schedule | Data Source |
|---|---|---|
| Health | Weekly | HPD violations |
| Noise | Weekly | 311 complaints |
| Safety | Weekly | NYPD data |
| Transit | Monthly | GTFS stops |
| Internet providers | Monthly | FCC Broadband Map |
Enrichment jobs run on a periodic schedule. Scores reflect the most recent computation cycle.
Internet provider availability
Section titled “Internet provider availability”Borough also enriches buildings with likely internet provider availability from the FCC Broadband Map Public Data API.
- Coverage level: building
- Source: FCC Broadband Map public availability data
- Cadence: monthly scheduled refresh plus manual backfills when needed
- Disclaimer: provider availability may vary by apartment or unit
This product uses FCC APIs and/or Data but is not endorsed or certified by the FCC.
Contract validation status
Section titled “Contract validation status”As of March 2-3, 2026, Borough reviewed live National Broadband Map browser traffic and observed broadbandmap.fcc.gov/nbm/map/api/fabric/... responses that included CostQuest Fabric license language restricting unauthorized scripted or programmatic access.
Until Borough completes contract validation for that access pattern:
internetProvidersshould be treated as a provisional FCC-backed featurefiberOnlyandminDownloadMbpsshould be treated as provisional FCC-backed filters- no further production rollout of the FCC broadband feature set should be assumed
- response shapes and matching behavior may change in a future update if Borough must switch to a different approved FCC integration path
Internal ops
Section titled “Internal ops”The FCC integration requires an FCC Broadband Map API key.
- Create an FCC Broadband Map account.
- Generate an API key from the FCC Broadband Map account tools.
- Set the worker secret as
FCC_BDC_API_KEY. - Trigger the
broadbandenrichment job manually for the initial backfill, then let the monthly cron maintain it.
Availability
Section titled “Availability”- Scores require building geo-coordinates (latitude/longitude)
- Health score additionally requires a BBL (Borough-Block-Lot) identifier
- Not all buildings have all scores; missing scores return
null