About

About this site

GrowSF Elections gives San Franciscans a free, detailed look at the results of every election on the SF ballot — at the precinct, supervisor district, and neighborhood level. Hover or tap a precinct to see the result there; switch between turnout and any individual contest using the sidebar.

GrowSF Elections is built and maintained by GrowSF, an SF-based 501(c)(4) civic engagement organization.

Data sources

  • Vote totals. San Francisco Department of Elections Statement of the Vote (city-wide and precinct-level), plus the official Cast Vote Record (CVR) JSON export for ranked-choice contests.
  • Precinct, district, and neighborhood lines. SF Department of Elections precinct shapefiles and the district↔precinct↔neighborhood crosswalk.
  • Basemap. OpenFreeMap (positron style), based on OpenStreetMap data.

Methodology

Single-choice contests. Each precinct is colored by the candidate who received the most votes there, with color saturation modulated by the winner's margin over the runner-up.

Ranked-choice contests. By default the map shows voters' first-choice votes per precinct. Use the metric dropdown above the city-wide results to view any individual rank (voters' #2 choice, #3 choice, …), the final two-candidate runoff, or to step through each elimination round one at a time with the slider.

Ballot measures. Each precinct is colored on a green-to-red diverging ramp around 50% Yes-share.

Turnout. Ballots cast divided by registered voters per precinct, on a single-hue ramp.

Elections

Free, detailed San Francisco election data. Vote totals come from the SF Department of Elections; boundary data from DataSF and the SF Department of Elections.