US Municipal Energy Benchmarking Disclosure Scraper avatar

US Municipal Energy Benchmarking Disclosure Scraper

Pricing

Pay per event

Go to Apify Store
US Municipal Energy Benchmarking Disclosure Scraper

US Municipal Energy Benchmarking Disclosure Scraper

Aggregates annual building energy benchmarking disclosures from 15+ US cities with mandatory benchmarking ordinances. Covers NYC LL84, Chicago, Seattle, Montgomery County, Cincinnati, and more — all normalized to a single schema with EUI, ENERGY STAR Score, and GHG emissions fields.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Aggregates annual building energy benchmarking data from 15+ US jurisdictions with mandatory disclosure ordinances — NYC LL84, Chicago, Seattle, Montgomery County MD, Cincinnati, and more. All data lands in a single normalized schema, including site/source EUI, ENERGY STAR Score, GHG emissions, and reporting status.

What It Does

US cities with mandatory benchmarking laws publish their data through open data portals, mostly Socrata SODA v2 APIs. Each city uses slightly different field names, date formats, and coverage. This scraper handles all of that — pulling from each jurisdiction's endpoint, normalizing fields to a consistent schema, and delivering one dataset you can actually use across cities.

You can pull a single jurisdiction or queue them all in a single run.

Who Uses This Data?

ESG analysts pricing carbon risk into REITs, commercial real estate underwriters modeling transition risk, building decarbonization consultants scoping retrofit projects, and climate-tech startups building benchmarking tools. NYC LL97 carbon penalties started hitting in 2025 — the data is no longer academic.

Input

FieldTypeDescription
maxItemsintegerMaximum total records to return across all jurisdictions. Default: 15.
jurisdictionsarrayList of jurisdiction slugs to scrape. Leave empty to scrape all available.
minYearintegerOptional. Only return records from this year or later.

Available jurisdiction slugs:

SlugSourceRecords (approx.)
nyc-ll84NYC Local Law 84 — data.cityofnewyork.us~28,000
chicagoChicago Energy Benchmarking — data.cityofchicago.org~28,000
seattleSeattle Building Energy Benchmarking — cos-data.seattle.gov~35,000
montgomery-county-mdMontgomery County MD — data.montgomerycountymd.gov~5,000
cincinnatiCincinnati Energy Benchmarking — insights.cincinnati-oh.gov~600

Output Schema

Each record represents one property disclosure. Fields not available in a given jurisdiction are returned as null.

FieldTypeDescription
source_jurisdictionstringJurisdiction slug (e.g. nyc-ll84)
data_yearintegerReporting year
property_idstringSource-system property identifier
property_namestringProperty name
parent_property_idstringParent property ID (campus groupings)
addressstringStreet address
citystringCity
statestringState abbreviation
postal_codestringZIP code
latitudenumberLatitude
longitudenumberLongitude
bblstringNYC Borough-Block-Lot (NYC LL84 only)
binstringNYC Building Identification Number (NYC LL84 only)
primary_property_typestringEPA property type (Office, Multifamily, K-12 School, etc.)
gross_floor_area_sqftintegerTotal gross floor area in square feet
year_builtintegerYear of original construction
num_buildingsintegerNumber of buildings in the property
occupancy_percentnumberOccupancy rate
energy_star_scoreintegerENERGY STAR Score (1-100)
site_eui_kbtu_sqftnumberSite energy use intensity (kBtu/ft2)
source_eui_kbtu_sqftnumberSource energy use intensity (kBtu/ft2)
weather_normalized_site_eui_kbtu_sqftnumberWeather-normalized site EUI
weather_normalized_source_eui_kbtu_sqftnumberWeather-normalized source EUI
electricity_use_kwhnumberElectricity use (kWh)
natural_gas_use_thermsnumberNatural gas use (therms)
district_steam_use_kbtunumberDistrict steam use (kBtu)
water_use_kgalnumberWater use (kgal)
total_ghg_emissions_metric_tons_co2enumberTotal GHG emissions (metric tons CO2e)
direct_ghg_emissions_metric_tons_co2enumberDirect GHG emissions (metric tons CO2e)
indirect_ghg_emissions_metric_tons_co2enumberIndirect GHG emissions (metric tons CO2e)
ghg_intensity_kgco2e_sqftnumberGHG emissions intensity (kgCO2e/ft2)
reporting_statusstringCompliance reporting status
compliance_statusstringOrdinance compliance status
penalty_imposednumberPenalty amount (where published)
ll97_emissions_limitnumberNYC LL97 carbon cap (where applicable)
chicago_energy_ratingintegerChicago's 0-4 star energy rating

Usage Notes

Jurisdictions are scraped sequentially. Each jurisdiction is a separate API call with skip/limit pagination. Large runs (all jurisdictions, no maxItems limit) will take several minutes.

Data update frequency varies. NYC LL84 publishes annual snapshots, typically 12-18 months behind the calendar year. Other jurisdictions vary. Check each portal's "last updated" metadata if recency matters.

Field coverage is uneven by design. NYC has the richest schema (BBL, BIN, full energy breakdown). Chicago reports at a coarser level. The normalized schema makes cross-jurisdiction comparison possible — null fields in a row tell you the jurisdiction does not publish that metric, not that data is missing.

No proxy required. All endpoints are public Socrata APIs with no authentication or IP restrictions.

Frequently Asked Questions

How much does US Municipal Energy Benchmarking Disclosure Scraper cost to run? US Municipal Energy Benchmarking Disclosure Scraper uses pay-per-event pricing. Each building record scraped counts as one event. A full NYC LL84 pull (~28,000 records) costs approximately $0.03 USD. A full multi-jurisdiction run across all five cities (~100,000 records) runs approximately $0.10 USD.

What data can I get from US Municipal Energy Benchmarking Disclosure Scraper? US Municipal Energy Benchmarking Disclosure Scraper returns one record per building per disclosure year, including ENERGY STAR Score, site/source EUI, electricity use, natural gas use, GHG emissions, property type, floor area, and compliance status where available.

Can I filter by year? US Municipal Energy Benchmarking Disclosure Scraper supports a minYear input that applies a server-side date filter before data is returned.

Does US Municipal Energy Benchmarking Disclosure Scraper need proxies? US Municipal Energy Benchmarking Disclosure Scraper does not require proxies. All source APIs are public Socrata endpoints without IP restrictions or authentication.

Which jurisdictions are covered? US Municipal Energy Benchmarking Disclosure Scraper currently covers NYC (LL84), Chicago, Seattle, Montgomery County MD, and Cincinnati. Additional jurisdictions with Socrata-hosted open data are on the expansion roadmap.