Skip to content

Building Scores

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.

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.

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.

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.

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
ScoreScheduleData Source
HealthWeeklyHPD violations
NoiseWeekly311 complaints
SafetyWeeklyNYPD data
TransitMonthlyGTFS stops
Internet providersMonthlyFCC Broadband Map

Enrichment jobs run on a periodic schedule. Scores reflect the most recent computation cycle.

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.

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:

  • internetProviders should be treated as a provisional FCC-backed feature
  • fiberOnly and minDownloadMbps should 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

The FCC integration requires an FCC Broadband Map API key.

  1. Create an FCC Broadband Map account.
  2. Generate an API key from the FCC Broadband Map account tools.
  3. Set the worker secret as FCC_BDC_API_KEY.
  4. Trigger the broadband enrichment job manually for the initial backfill, then let the monthly cron maintain it.
  • 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