Pull Your San Francisco Building Permit — Direct Links + How to Read Codes
San Francisco splits permit data between two systems of record: the Planning Permit Center (zoning, Section 311/312 notification, historic review) and the Department of Building Inspection (building, electrical, plumbing, mechanical, occupancy, NOVs, and Soft Story compliance). Most projects need both. We deep- link you to each — no middleman, no stale mirror — and we point you to the California CSLB for contractor verification.
Opens on sfplanning.org — the official City and County of San Francisco government site. For the building-side record (NOVs, Soft Story, inspections), use SF DBI. Verify the contractor at CSLB License Lookup.
What to look up
DBI accepts three search axes: street address, permit number, and block/lot. Address search returns every permit ever pulled on the parcel — essential when buying a Mission Victorian with a finished basement or a Sunset stucco with an in-law unit, and wanting to confirm the work was permitted. Permit number lookup pulls the full job card, including plan-review comments and inspection history. The portal also surfaces Section 311 / 312 neighborhood notifications, historic-resource determinations, Soft Story Mandatory Retrofit status (critical for any wood-frame multi-unit building built before 1978), and DBI Notices of Violation, none of which appear on private scraped mirrors. For pre-2000 records, request the building file at DBI's 49 South Van Ness counter.
How to read SF permit codes
DBI uses a sequential application number. Building applications run as BPA (building permit application — full plan check) or OTC (over-the-counter — minor work). Trade permits are filed separately: EWA (electrical work authorization), PWA (plumbing work authorization), MWA (mechanical work authorization). A permit ID like 2024.0512.1234 encodes the filing date and sequence. The status field reads Filed, Issued, Complete (CFC — Certificate of Final Completion), Expired, or Cancelled. On historic-district properties, watch for an associated HRER (Historic Resource Evaluation Response) from Planning — a building permit on a historic property without an HRER reference means the historic review may have been skipped.
Red flags to watch for
The single biggest red flag on an SF property record is an expired permit on substantial work — kitchen re-do, in-law unit, deck, addition. Expiration without a CFC means DBI never confirmed the work meets code, and the buyer inherits the open permit. Second: open NOVs — DBI's enforcement list is public; NOVs run against the property and routinely block close of escrow. Third: Soft Story non-compliance on any wood-frame multi-unit built before 1978 — SF's mandatory retrofit program requires a recorded completion, and a non-compliant building is both a safety issue and a financing issue. Fourth: an in-law unit with no permit history is the SF classic — extremely common, but legalization through SF's ADU/legalization track is the only path to a marketable, financeable second unit. Fifth: contractor expired on the date of permit issuance — cross-check the CSLB. Finally: a building permit on a property in the Mission, Castro, or other historic district without a corresponding HRER reference can mean the historic review was skipped, which Planning can later force to be undone.
Questions LA homeowners actually ask
Because DBI and Planning records change throughout the day. A pulled permit, an issued NOV, or a final sign-off updates on the city portals in real time — any third-party mirror is already out of date. The only honest answer is the source system, so we deep-link you there.
AskBaily does not scrape DBI, Planning, or CSLB
We have no DBI, Planning, or CSLB database mirror. We do not cache permit results. We do not sell permit data. The deep- links above are the entire integration — the homeowner reads the City and County of San Francisco record on the city's own systems and verifies the contractor against the California CSLB directly. That is the only way to know what is actually on file.
Last reviewed 2026-04-24.