San Francisco guide · Tier A · Rank #4 of 27
House hacking in San Francisco (Mission / Bernal Heights).
Mature, capital-backed upzoning, the deepest 2–4-unit stock in the metro, and two in-ZIP BART stations: a durable, transit-first house-hack ZIP that doesn't depend on any single future project.
Status check: Verified 2026-07-14: the Family Zoning Plan explicitly excludes the Eastern Neighborhoods (already upzoned historically), so it changes nothing about this ZIP's existing zoning capacity.
What's actually happening in 94110
- Adopted 2009; controlling
Eastern Neighborhoods / Mission Area Plan (adopted Jan 2009): flexible height by street width, with density-limit and parking-minimum removal near the Mission, Valencia, and 24th St transit corridors. The mature, controlling upzoning. SF General Plan Mission Area Plan
- Approved; construction 2027–2030
Potrero Yard Modernization: an SFMTA bus-yard rebuild with up to ~100 affordable units at Bryant and Mariposa (straddling 94110/94103); Board approved March 2026, construction 2027–2030, opens 2030. The unit count has already been scoped down once. SFMTA Potrero Yard Modernization Project
- Operational
16th St and 24th St Mission BART: two in or adjacent stations at 5–10 minutes to the Financial District, plus the 14/14R Mission, one of the city's highest-frequency bus corridors. SF General Plan Mission Area Plan
The numbers
- Median price
- $1,225,000 (Redfin, May 2026)
- Market rent
- ~$3,700/mo median (Zumper)
- Property tax (San Francisco County)
- 1.183% combined effective (SF Treasurer FY2025-26, consolidated city and county); new buyers pay about 1.183% of purchase price in year one, then assessed value rises at the 2%/yr Prop 13 cap until resale
- Per-bed rent band
- $1,500–2,100/mo per room
- ADU rent band
- $2,800–3,500/mo (ADU or in-law)
- Whole-home rent band
- $5,500–7,000/mo whole-home
- Underwriting vacancy
- 3.0% underwriting vacancy (structurally tight)
- Appreciation scenarios
- 3 / 5 / 6 %/yr (conservative / base / upside)
Vacancy is structurally tight at ~3%. Appreciation basis: Durable transit-first base; upside on Potrero Yard plus corridor infill. Rent bands are city-level medians; confirm the specific parcel before trusting any of them. Run your own scenario in the calculator.
Buildings we underwrote in 94110
71 buildings in 94110 carry a record. 10 beat renting and index funds, 1 rejected; the rest did not. Every row links to its own page, with the numbers it was scored on.
| Property | At our defaults | Status |
|---|---|---|
| 2-unit building · Inner Mission flats (26th St near Mission St; nearest neighborhood centroid) Members 2 units | +$90,717 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 3159-3163 23rd St 4 units · $1,595,000 | +$163,143 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 28-30 Camp St 2 units · $1,059,000 | +$82,593 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 1383-1385 Florida St 2 units · $1,299,000 | +$248,084 House-Hack | Published pick #5 |
| 2816 23rd St 2 units · $999,000 | +$186,763 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 2877 Cesar Chavez St 2 units · $899,000 | +$158,969 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 380 Dolores St, Apt 9 1 unit · $246,000 | +$347,530 House-Hack | Rejected — the verified listing record is filed under ZIP 94114, our listing feed says 94110 — ZIP disagreement (listing-feed ZIP error) · tenancy-in-common |
| 3660 20th St 2 units · $1,350,000 | +$67,396 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 3755-3759 Mission St 2 units · $1,399,000 | +$9,784 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 2388-2390 Bryant St 2 units · $1,495,000 | +$6,305 House-Hack | Underwritten — beats renting and index funds, below the publish cut |
| 161 Capp St 1 unit · $779,000 | −$10,743 S&P 500 | Underwritten — the index wins at our defaults |
| 380 Dolores St, Apt 10 1 unit · $639,000 | −$13,205 S&P 500 | Underwritten — the index wins at our defaults |
| 3173 21st St 2 units · $1,750,000 | −$50,265 S&P 500 | Underwritten — the index wins at our defaults |
| 1056-1058 Treat Ave 2 units · $1,125,000 | −$59,782 S&P 500 | Underwritten — the index wins at our defaults |
| 20-26 Dorland St 4 units · $1,199,000 | −$75,588 S&P 500 | Underwritten — the index wins at our defaults |
| 2924-2926 Cesar Chavez St 2 units · $1,328,000 | −$97,665 S&P 500 | Underwritten — the index wins at our defaults |
| 2782 Harrison St 2 units · $1,500,000 | −$135,487 S&P 500 | Underwritten — the index wins at our defaults |
| 2911 Folsom St 2 units · $1,500,000 | −$135,487 S&P 500 | Underwritten — the index wins at our defaults |
| 578 San Jose Ave 3 units · $1,150,000 | −$140,158 S&P 500 | Underwritten — the index wins at our defaults |
| 2171 Mission St, Apt 201 1 unit · $799,000 | −$158,406 S&P 500 | Underwritten — the index wins at our defaults |
| 2269 Bryant St 2 units · $1,195,000 | −$162,126 S&P 500 | Underwritten — the index wins at our defaults |
| 71 Santa Marina St 2 units · $895,000 | −$235,296 S&P 500 | Underwritten — the index wins at our defaults |
| 108 Albion St 1 unit · $599,000 | −$295,214 S&P 500 | Underwritten — the index wins at our defaults |
| 366-368 Richland Ave 2 units · $1,295,000 | −$307,074 S&P 500 | Underwritten — the index wins at our defaults |
| 2967-2969 26th St 2 units · $1,095,000 | −$320,271 S&P 500 | Underwritten — the index wins at our defaults |
| 333 Holly Park Cir 1 unit · $1,159,000 | −$407,701 S&P 500 | Underwritten — the index wins at our defaults |
| 3356-3360 24th St 3 units · $2,200,000 | −$364,554 S&P 500 | Underwritten — the index wins at our defaults |
| 3001 25th St 2 units · $1,795,000 | −$455,810 S&P 500 | Underwritten — the index wins at our defaults |
| 632 Shotwell St 1 unit · $1,149,000 | −$459,548 S&P 500 | Underwritten — the index wins at our defaults |
| 2906 Folsom St 2 units · $1,800,000 | −$528,828 S&P 500 | Underwritten — the index wins at our defaults |
| 1629 Dolores St, Apt 3 1 unit · $1,095,000 | −$570,039 S&P 500 | Underwritten — the index wins at our defaults |
| 45 Bartlett St, Unit 408 1 unit · $999,000 | −$582,002 S&P 500 | Underwritten — the index wins at our defaults |
| 2725 20th St 2 units · $1,388,000 | −$592,240 S&P 500 | Underwritten — the index wins at our defaults |
| 2963 23rd St 2 units · $1,600,000 | −$592,453 S&P 500 | Underwritten — the index wins at our defaults |
| 2619 Folsom St 2 units · $1,699,000 | −$594,539 S&P 500 | Underwritten — the index wins at our defaults |
| 2437-2441 24th St 3 units · $1,550,000 | −$602,162 S&P 500 | Underwritten — the index wins at our defaults |
| Harrison St 1 unit · $1,250,000 | −$632,985 S&P 500 | Underwritten — the index wins at our defaults |
| 2773 Folsom St, Apt 201 1 unit · $1,149,000 | −$637,606 S&P 500 | Underwritten — the index wins at our defaults |
| 1294 Guerrero St 3 units · $1,749,000 | −$640,611 S&P 500 | Underwritten — the index wins at our defaults |
| 739 Ellsworth St 1 unit · $1,395,000 | −$660,132 S&P 500 | Underwritten — the index wins at our defaults |
| 2950-2952 25th St 1 unit · $1,499,000 | −$686,600 S&P 500 | Underwritten — the index wins at our defaults |
| 3774 Mission St 2 units · $1,900,000 | −$700,116 S&P 500 | Underwritten — the index wins at our defaults |
| 3697-3699 Mission St 2 units · $1,895,000 | −$707,896 S&P 500 | Underwritten — the index wins at our defaults |
| 431 Capp St, Unit A 1 unit · $1,124,999 | −$716,796 S&P 500 | Underwritten — the index wins at our defaults |
| 103 Tiffany Ave 1 unit · $1,195,000 | −$718,669 S&P 500 | Underwritten — the index wins at our defaults |
| 3323-3325 26th St 2 units · $1,695,000 | −$743,392 S&P 500 | Underwritten — the index wins at our defaults |
| 199 Tiffany Ave, Apt 304 1 unit · $1,195,000 | −$790,698 S&P 500 | Underwritten — the index wins at our defaults |
| 3235 17th St 1 unit · $1,298,000 | −$809,891 S&P 500 | Underwritten — the index wins at our defaults |
| 301-303 San Jose Ave 2 units · $1,560,000 | −$885,966 S&P 500 | Underwritten — the index wins at our defaults |
| 2770 23rd St 2 units · $1,999,999 | −$907,403 S&P 500 | Underwritten — the index wins at our defaults |
| 3380 22nd St 1 unit · $1,495,000 | −$933,411 S&P 500 | Underwritten — the index wins at our defaults |
| 3691-3695 Mission St 2 units · $2,095,000 | −$997,723 S&P 500 | Underwritten — the index wins at our defaults |
| 39 San Carlos St, Apt 401 1 unit · $1,550,000 | −$1,052,696 S&P 500 | Underwritten — the index wins at our defaults |
| 90 Peralta Ave 2 units · $1,595,000 | −$1,190,341 S&P 500 | Underwritten — the index wins at our defaults |
| 282 Fair Oaks St 1 unit · $1,750,000 | −$1,306,165 S&P 500 | Underwritten — the index wins at our defaults |
| 8 Porter St 1 unit · $1,988,888 | −$1,329,723 S&P 500 | Underwritten — the index wins at our defaults |
| 751-753 Capp St 3 units · $3,648,000 | −$1,498,047 S&P 500 | Underwritten — the index wins at our defaults |
| 2730 23rd St 2 units · $2,998,888 | −$1,502,722 S&P 500 | Underwritten — the index wins at our defaults |
| 3475-3479 18th St 1 unit · $1,750,000 | −$1,552,023 S&P 500 | Underwritten — the index wins at our defaults |
| 280 Fair Oaks St 2 units · $2,395,000 | −$1,847,153 S&P 500 | Underwritten — the index wins at our defaults |
| 3545 20th St 1 unit · $2,700,000 | −$1,869,326 S&P 500 | Underwritten — the index wins at our defaults |
| 942 S Van Ness Ave 1 unit · $2,295,000 | −$1,918,667 S&P 500 | Underwritten — the index wins at our defaults |
| 50 Arnold Ave 1 unit · $2,488,000 | −$1,945,216 S&P 500 | Underwritten — the index wins at our defaults |
| 834-838 Dolores St 2 units · $2,595,000 | −$2,047,614 S&P 500 | Underwritten — the index wins at our defaults |
| 257 San Jose Ave 2 units · $3,298,000 | −$2,278,034 S&P 500 | Underwritten — the index wins at our defaults |
| 323-327 San Jose Ave 3 units · $3,450,000 | −$2,287,696 S&P 500 | Underwritten — the index wins at our defaults |
| 101-103 Elsie St 2 units · $2,795,000 | −$2,458,374 S&P 500 | Underwritten — the index wins at our defaults |
| 23-25 Peralta Ave 2 units · $2,995,000 | −$2,965,477 S&P 500 | Underwritten — the index wins at our defaults |
| 30 Fair Oaks St 2 units · $3,495,000 | −$3,294,332 S&P 500 | Underwritten — the index wins at our defaults |
| 280-282 Fair Oaks St 2 units · $4,295,000 | −$3,314,758 S&P 500 | Underwritten — the index wins at our defaults |
| 653 Dolores St 1 unit · $6,800,000 | −$6,386,374 S&P 500 | Underwritten — the index wins at our defaults |
The full board shows every region's current week; this table is every record we hold for 94110, newest basis first.
The house-hack angle
The metro's richest supply of pre-1940 2–4-unit flats with separable in-law units. Mission and Bernal tenant demand is structurally deep (young professionals, artists, tech), so room-by-room and small-multi both work.
What breaks it
- Premium land basis for the unit count, against Prop 13-driven low-basis incumbent competition
- Strong rent-control exposure on older multi-unit stock: verify vacancy-decontrol status per building before modeling market rents
- Potrero Yard housing units are at risk (already scoped down once)