How long do stairs permits take in San Francisco's Excelsior neighborhood?
In the Excelsior neighborhood of San Francisco, of the 29 stairs permits filed from October 2025 through September 2026 that have been issued, half were issued within 1 day, down from 6 days a year earlier. Of the 31 permits filed from October 2023 through September 2024 that have reached final sign-off, half did so within 150 days of being issued, down from 204 days the year before.
From the city’s permit records, by the quarter each permit was filed. Data as of 8 October 2026. How to cite this · How this is calculated
How long until a permit is issued, and until final sign-off?
This chart as an image (SVG), with its title, source and date, free to embed under CC BY 4.0.
At a glance
| Stage | Permits filed | Permits counted | Median days | Counted a year earlier | Median a year earlier |
|---|---|---|---|---|---|
| Filed to permit issued | October 2025 through September 2026 | 29 issued | 1 | 48 issued | 6 |
| Permit issued to final sign-off | October 2023 through September 2024 | 31 finished | 150 | 28 finished | 204 |
“Counted” is the permits the median was taken over: those filed in the window that have been issued, or that have reached final sign-off. The first stage covers the last four complete quarters, since most permits are issued within the year. The second covers the last four quarters that ended two or more years ago, so that most of their permits have had time to finish. Citywide, the median was 7 days to issue and 175 days from issue to final over the same quarters.
Every quarter since 2000
| Quarter filed | Filed | Issued | Median days to issue | Slowest 10% | Reached final | Median days issue to final | Slowest 10% | Never finaled | Settled |
|---|---|---|---|---|---|---|---|---|---|
| 2026-Q3 | 10 | 8 | 0 | 25 | 2 | 0 | too recent | ||
| 2026-Q2 | 12 | 6 | 2 | 18 | 1 | 0 | too recent | ||
| 2026-Q1 | 7 | 6 | 64 | 114 | 1 | 0 | too recent | ||
| 2025-Q4 | 11 | 9 | 1 | 195 | 7 | 101 | 201 | 0 | too recent |
| 2025-Q3 | 19 | 17 | 4 | 170 | 12 | 150 | 270 | 0 | too recent |
| 2025-Q2 | 14 | 13 | 7 | 103 | 8 | 141 | 305 | 0 | too recent |
| 2025-Q1 | 13 | 10 | 11 | 100 | 6 | 159 | 263 | 0 | too recent |
| 2024-Q4 | 8 | 8 | 6 | 56 | 5 | 202 | 425 | 0 | too recent |
| 2024-Q3 | 10 | 10 | 6 | 29 | 10 | 264 | 378 | 0 | yes |
| 2024-Q2 | 12 | 12 | 3 | 79 | 8 | 98 | 367 | 0 | yes |
| 2024-Q1 | 8 | 7 | 1 | 7 | 6 | 104 | 346 | 0 | yes |
| 2023-Q4 | 9 | 8 | 7 | 51 | 7 | 275 | 370 | 1 | yes |
| 2023-Q3 | 12 | 10 | 3 | 60 | 8 | 172 | 648 | 1 | yes |
| 2023-Q2 | 11 | 11 | 6 | 36 | 10 | 199 | 513 | 1 | yes |
| 2023-Q1 | 11 | 8 | 2 | 81 | 5 | 307 | 456 | 5 | yes |
| 2022-Q4 | 6 | 6 | 2 | 56 | 5 | 211 | 388 | 1 | yes |
| 2022-Q3 | 8 | 7 | 3 | 78 | 5 | 148 | 693 | 1 | yes |
| 2022-Q2 | 13 | 9 | 9 | 493 | 7 | 245 | 502 | 3 | yes |
| 2022-Q1 | 13 | 11 | 23 | 316 | 10 | 332 | 557 | 1 | yes |
| 2021-Q4 | 15 | 14 | 46 | 523 | 12 | 185 | 669 | 2 | yes |
| 2021-Q3 | 12 | 11 | 17 | 351 | 8 | 144 | 685 | 3 | yes |
| 2021-Q2 | 9 | 8 | 6 | 234 | 4 | 5 | yes | ||
| 2021-Q1 | 6 | 6 | 148 | 775 | 5 | 515 | 749 | 0 | yes |
| 2020-Q4 | 14 | 14 | 50 | 292 | 12 | 249 | 457 | 1 | yes |
| 2020-Q3 | 10 | 9 | 76 | 250 | 8 | 414 | 651 | 1 | yes |
| 2020-Q2 | 5 | 5 | 5 | 52 | 5 | 29 | 324 | 0 | yes |
| 2020-Q1 | 5 | 5 | 0 | 1 | 4 | 1 | yes | ||
| 2019-Q4 | 8 | 7 | 11 | 380 | 5 | 231 | 378 | 2 | yes |
| 2019-Q3 | 8 | 7 | 21 | 38 | 6 | 258 | 370 | 2 | yes |
| 2019-Q2 | 20 | 20 | 22 | 176 | 17 | 231 | 416 | 3 | yes |
| 2019-Q1 | 13 | 11 | 0 | 14 | 10 | 124 | 272 | 1 | yes |
| 2018-Q4 | 16 | 14 | 20 | 597 | 11 | 328 | 776 | 2 | yes |
| 2018-Q3 | 18 | 17 | 16 | 180 | 14 | 148 | 314 | 3 | yes |
| 2018-Q2 | 14 | 13 | 12 | 150 | 9 | 49 | 234 | 3 | yes |
| 2018-Q1 | 5 | 5 | 14 | 32 | 4 | 1 | yes | ||
| 2017-Q4 | 8 | 7 | 1 | 5 | 7 | 230 | 586 | 0 | yes |
| 2017-Q3 | 14 | 13 | 1 | 200 | 11 | 355 | 771 | 1 | yes |
| 2017-Q2 | 10 | 8 | 8 | 298 | 7 | 48 | 288 | 1 | yes |
| 2017-Q1 | 5 | 5 | 14 | 670 | 4 | 1 | yes | ||
| 2016-Q4 | 8 | 5 | 8 | 123 | 3 | 1 | yes | ||
| 2016-Q3 | 17 | 15 | 1 | 156 | 12 | 128 | 709 | 1 | yes |
| 2016-Q2 | 7 | 6 | 9 | 345 | 4 | 1 | yes | ||
| 2016-Q1 | 10 | 8 | 13 | 1,130 | 6 | 150 | 206 | 3 | yes |
| 2015-Q4 | 7 | 7 | 49 | 300 | 6 | 282 | 707 | 0 | yes |
| 2015-Q3 | 16 | 15 | 7 | 635 | 14 | 148 | 995 | 2 | yes |
| 2015-Q2 | 7 | 5 | 0 | 11 | 4 | 1 | yes | ||
| 2015-Q1 | 5 | 4 | 4 | 0 | yes | ||||
| 2014-Q4 | 15 | 13 | 0 | 25 | 10 | 203 | 1,425 | 3 | yes |
| 2014-Q3 | 6 | 6 | 1 | 402 | 4 | 1 | yes | ||
| 2014-Q2 | 12 | 11 | 0 | 14 | 8 | 75 | 246 | 3 | yes |
| 2014-Q1 | 7 | 7 | 0 | 12 | 5 | 154 | 221 | 2 | yes |
| 2013-Q4 | 5 | 5 | 1 | 440 | 3 | 2 | yes | ||
| 2013-Q3 | 5 | 5 | 3 | 27 | 5 | 104 | 232 | 0 | yes |
| 2013-Q2 | 9 | 9 | 0 | 19 | 8 | 149 | 562 | 1 | yes |
| 2013-Q1 | 8 | 7 | 95 | 714 | 5 | 305 | 1,401 | 2 | yes |
| 2012-Q4 | 11 | 10 | 0 | 2 | 9 | 133 | 290 | 1 | yes |
| 2012-Q3 | 8 | 8 | 0 | 272 | 6 | 62 | 127 | 2 | yes |
| 2012-Q2 | 14 | 13 | 1 | 118 | 13 | 98 | 343 | 0 | yes |
| 2012-Q1 | 7 | 7 | 0 | 1 | 6 | 141 | 202 | 1 | yes |
| 2011-Q4 | 5 | 5 | 1 | 4 | 5 | 128 | 295 | 0 | yes |
| 2011-Q3 | 11 | 10 | 0 | 170 | 7 | 95 | 268 | 2 | yes |
| 2011-Q2 | 14 | 14 | 1 | 31 | 13 | 74 | 385 | 1 | yes |
| 2011-Q1 | 14 | 14 | 0 | 233 | 14 | 103 | 207 | 0 | yes |
| 2010-Q4 | 12 | 12 | 0 | 6 | 8 | 160 | 464 | 2 | yes |
| 2010-Q3 | 12 | 11 | 1 | 14 | 9 | 119 | 285 | 1 | yes |
| 2010-Q2 | 7 | 7 | 2 | 237 | 5 | 89 | 310 | 2 | yes |
| 2010-Q1 | 7 | 5 | 11 | 276 | 4 | 2 | yes | ||
| 2009-Q4 | 11 | 11 | 0 | 2 | 9 | 59 | 266 | 1 | yes |
| 2009-Q3 | 11 | 11 | 2 | 125 | 10 | 108 | 284 | 0 | yes |
| 2009-Q2 | 13 | 12 | 1 | 28 | 9 | 76 | 267 | 1 | yes |
| 2009-Q1 | 9 | 9 | 0 | 108 | 8 | 74 | 260 | 1 | yes |
| 2008-Q4 | 13 | 12 | 4 | 48 | 9 | 80 | 309 | 2 | yes |
| 2008-Q3 | 8 | 8 | 3 | 76 | 6 | 104 | 257 | 1 | yes |
| 2008-Q2 | 13 | 13 | 0 | 3 | 9 | 40 | 217 | 1 | yes |
| 2008-Q1 | 8 | 8 | 0 | 101 | 6 | 97 | 150 | 0 | yes |
| 2007-Q4 | 13 | 13 | 0 | 3 | 12 | 106 | 176 | 1 | yes |
| 2007-Q3 | 10 | 8 | 0 | 3 | 6 | 47 | 170 | 2 | yes |
| 2007-Q2 | 15 | 15 | 0 | 8 | 9 | 84 | 234 | 2 | yes |
| 2007-Q1 | 15 | 15 | 0 | 163 | 8 | 108 | 225 | 2 | yes |
| 2006-Q4 | 9 | 9 | 0 | 0 | 7 | 108 | 294 | 0 | yes |
| 2006-Q3 | 13 | 13 | 0 | 327 | 6 | 90 | 262 | 1 | yes |
| 2006-Q2 | 16 | 15 | 0 | 0 | 11 | 110 | 188 | 2 | yes |
| 2006-Q1 | 6 | 5 | 0 | 118 | 2 | 1 | yes | ||
| 2005-Q4 | 13 | 12 | 0 | 0 | 9 | 82 | 217 | 0 | yes |
| 2005-Q3 | 12 | 12 | 0 | 31 | 7 | 47 | 285 | 2 | yes |
| 2005-Q2 | 9 | 9 | 0 | 126 | 7 | 43 | 284 | 1 | yes |
| 2005-Q1 | 9 | 9 | 0 | 0 | 6 | 124 | 352 | 0 | yes |
| 2004-Q4 | 8 | 8 | 0 | 0 | 6 | 172 | 432 | 1 | yes |
| 2004-Q3 | 10 | 10 | 0 | 188 | 4 | 4 | yes | ||
| 2004-Q2 | 10 | 10 | 0 | 104 | 8 | 84 | 396 | 0 | yes |
| 2004-Q1 | 13 | 13 | 0 | 0 | 12 | 70 | 266 | 0 | yes |
| 2003-Q4 | 11 | 10 | 0 | 16 | 9 | 113 | 455 | 1 | yes |
| 2003-Q3 | 13 | 12 | 0 | 2 | 9 | 109 | 296 | 0 | yes |
| 2003-Q2 | 14 | 14 | 0 | 0 | 12 | 114 | 788 | 1 | yes |
| 2003-Q1 | 3 | 3 | 3 | 0 | yes | ||||
| 2002-Q4 | 2 | 2 | 2 | 0 | yes | ||||
| 2002-Q3 | 14 | 14 | 0 | 245 | 12 | 173 | 314 | 1 | yes |
| 2002-Q2 | 15 | 15 | 0 | 101 | 10 | 206 | 497 | 0 | yes |
| 2002-Q1 | 12 | 12 | 0 | 113 | 7 | 80 | 290 | 0 | yes |
| 2001-Q4 | 10 | 10 | 0 | 56 | 6 | 142 | 254 | 0 | yes |
| 2001-Q3 | 13 | 12 | 0 | 254 | 8 | 184 | 561 | 0 | yes |
| 2001-Q2 | 14 | 14 | 0 | 15 | 9 | 87 | 282 | 0 | yes |
| 2001-Q1 | 11 | 11 | 0 | 275 | 8 | 54 | 476 | 0 | yes |
| 2000-Q4 | 8 | 7 | 0 | 8 | 4 | 0 | yes | ||
| 2000-Q3 | 11 | 11 | 0 | 202 | 7 | 72 | 531 | 0 | yes |
| 2000-Q2 | 7 | 7 | 0 | 48 | 3 | 0 | yes | ||
| 2000-Q1 | 7 | 7 | 0 | 11 | 4 | 0 | yes |
A blank median means fewer than 5 permits behind it: issued permits for the first stage, and for the second, finished permits whose final is dated after their issue (a permit never issued has no span). “Slowest 10%” is the 90th percentile: one permit in ten took at least this long. Download the table as CSV or JSON; both carry the source, license and data date.
What the numbers leave out
113 of the 1,120 stairs permits filed since 2000 (10%) have no final sign-off 3 years after they were issued or, if never issued, filed. A median over finished permits understates the real wait: the permits that never finish are not in it. Inspection records are not yet included: “final sign-off” is the city’s own completion date on the permit.
Project types in San Francisco's Excelsior neighborhood
Shown apart, with their own page here: bathroom remodel (2,869 filed, 2,106 finished; contractors); kitchen remodel (1,940 filed, 1,370 finished; contractors); stairs (1,120 filed, 785 finished; contractors); deck (780 filed, 535 finished; contractors). Other types: 12,100 permits. All permits in San Francisco's Excelsior neighborhood
Nearby neighborhoods
Outer Mission, McLaren Park, Glen Park; all of San Francisco; every neighborhood compared.
How this is calculated
Approved means the city issued the permit: the permit’s issue date. The first stage counts days from the filing date to the issue date, over permits issued on or after they were filed. Final sign-off means the city’s own status for the permit is “complete”, with its completion date; this site does not yet read inspection records, so the inspection date is not a separate stage. The second stage counts days from the issue date to the completion date, over permits that have reached it.
Permits are grouped by the quarter they were filed. A quarter’s median counts only its permits that have finished the stage, so recent quarters look faster than they will end up: their slow permits have not finished yet. Quarters that ended two or more years ago are marked settled; the rest are shaded in the chart. The headline’s first stage uses the last four complete quarters; its second uses the last four settled quarters.
The median is the middle permit: half took less, half more. The slowest 10% is the 90th percentile. A median needs at least 5 permits behind it, or it is left out. A project type is shown apart within a neighborhood only when it has 30 or more finished permits there; the rest are “other types”.
Never finaled means no final sign-off three years after the permit was issued (or filed, if never issued), and not expired, cancelled, withdrawn, revoked, disapproved, denied or suspended (the site’s “expired or cancelled” outcome). About a quarter of permits citywide end this way; often the work was done and nobody called for the final inspection. These permits are in the counts and not in the medians.
A permit’s neighborhood is the Analysis Neighborhood the city writes on the permit record (the official set of 41). Permits with none are counted citywide only; the page says how many. “Nearby” neighborhoods are the three nearest by the center of their permits. The site reloads the city’s data every night; permits filed since 1 January 2000 are included. The placement of a permit, its dates and its status are the city’s; the grouping and the words are this site’s. How to read these records.