Ten collections describing property, zoning, vacancy, and affordable housing in Philadelphia, mirrored from the City of Philadelphia's ArcGIS services via OpenDataPhilly.
Guidance for AI agents and LLMs working with this collection.
Boundaries of Philadelphia's zoning base districts under the code enacted in December 2011 and effective 22 August 2012. 29,205 polygons.
A base district sets what may be built on a parcel and how it may be used. Read it with zoning_overlays, which layer extra rules on top.
Coordinates are EPSG:3857 (Web Mercator) metres. DuckDB reads geometry
natively, so do not wrap it in ST_GeomFromWKB.
long_code — district code with dashes, e.g. RSA-5. Joins to zoning_descriptions.new_code.code — the same code without dashes, e.g. RSA5. This is what the styles key on.zoninggroup — four broad families: Residential/Multi-Family/Residential Mixed-Use (17,839 polygons), Commercial/Commercial Mixed-Use (9,020), Industrial/Industrial Mixed-Use (1,406), and Special Purpose (940).pending, pendingbill, pendingbillurl — legislation that would change this district.sunset_date, sunsetbillnum, sunsetbilllink — when a district expires and the bill that set that date.citycor — flag whose meaning the publisher does not document.All 39 distinct codes present in the data resolve through zoning_descriptions. The most common are RSA-5 (8,730 polygons), CMX-2 (4,065), RM-1 (3,768), and CMX-1 (3,130).
This is the current vintage. The publisher also releases 2015, 2016, 2020, 2021, and 2025 layers, which this catalog does not carry.
pendingbillurl and sunsetbilllink point at city legislative records that move independently of this dataset, so some links go stale.
Polygons partition the city, so a point falls in exactly one base district.
Zoning codes with readable names. All 29,205 rows match:
Zoning mix within one council district:
Districts with pending legislation:
long_code.