How Parking SF builds the map.
Parking SF is based on public San Francisco parking meter and mobility datasets. It does not rely on a private live parking API and it does not invent real-time availability.
1. Metered blocks become the core geography
The pipeline starts with SF Open Data parking meter locations and groups meters into metered street blocks. Each block gets a centroid, a simplified path, and meter counts for map rendering.
2. Transactions become a typical week
Historical transaction counts are aggregated into 168 slots, covering every day of week and hour of day. Slot indexing is kept consistent as dow * 24 + hour, where Monday starts at 0.
3. Enforcement schedules control trust
During enforced meter hours, Parking SF uses meter-driven occupancy estimates. Outside enforcement windows, it avoids implying empty streets and instead blends in off-hours parking pressure.
4. 311 pressure fills the blind spots
Parking-related 311 activity provides a signal for where off-hours parking still feels contested, even when meters are off.
5. Bay Wheels adds mobility context
Bike-share demand is optional, but useful. It helps show whether neighborhood movement patterns line up with parking pressure changes.
6. Isochrones stay in the backend
Parking SF uses Apple Maps for the native iPhone map, but reachability polygons are a backend concern. When a local Valhalla instance is available, the backend computes isochrones and the app overlays them on top of the map.