A single-family home in SF is the holy grail, and many buyers are chasing it. With a $1.5M cap, competition can be even more intense and flexibility is key. So where can you still find a home that’s not a total fixer for under $1.5M? Here are five neighborhoods to watch, based on sales over the past six months. And remember: Strategy matters. Aim for homes listed near $1M to stay under budget, with room to stretch if a property lingers.
1. Outer Parkside
Median house price: $1,427,500
Average overbid: 14%
The scoop: Houses by the beach became very popular during Covid, and that exuberance continues. However, it’s still possible to buy a home in this price range. Tenant-occupied properties tend to pop up, but you’ll find vacant homes with room for cosmetic upgrades.
2. Excelsior
Median house price: $1,055,000
Average overbid: 12%
The scoop: With Mission Street as the retail strip, Excelsior is well connected by bus or the nearby Balboa Park BART line. Small grocery stores, bars and shops line Mission Street, and McLaren Park is a great place to spend an afternoon.
3. Crocker Amazon
Median house price: $1,051,000
Average overbid: 9%
The scoop: Just south of Excelsior lies Crocker Amazon, another neighborhood populated with single-family homes. Nearby Mission Street provides multiple transportation lines, and the Balboa BART station is not very far. Good for commuting to downtown or the Peninsula.
4. Outer Mission
Median house price: $1,100,000
Average overbid: 9.5%
The scoop: You can find some very nice houses in this neighborhood. For example 248 Niagara (photo above, courtesy City Real Estate) was a remodeled 2BR/1BA with excellent expansion potential down, as well as a large yard. Listed for $995,000, the house closed for $1,248,000 last August 2025.
5. Portola
Median house price: $1,210,000
Average overbid: 10.5%
The scoop: Portola is a cool neighborhood known as the Garden District, and has community gardens as well as proximity to McLaren Park and a close-knit community. South Bay commutes are a snap on the 101 or 280.