Housing Market Interventions and Residential Mobility in the San Francisco Bay Area
Bibliographic record
Abstract
This study seeks to fill this gap by examining the impacts of market-rate development, subsidized development, and tenant protections, including rent stabilization and just cause for evictions protections, on movers. Specifically, this study builds two unique and cross-validated datasets on mobility and links them to a bespoke block-level housing construction database. We use granular data on individual and household mobility to assess how specific housing interventions impact both direct and indirect displacement by looking at moves both out of and into neighborhoods with different characteristics in the nine-county San Francisco Bay Area. Our research reveals that new market-rate construction in a neighborhood results in a slight increase in people of all income levels moving in and moving out, i.e., churn. The increase in rates of displacement (involuntary moves) for very low- to moderate-socio-economic groups is not as high as commonly feared, at 0.5% to 2% above normal rates. However, the highest socio-economic group disproportionately benefits from new market-rate housing production—they are the least likely to move out and the most likely to move into neighborhoods with new construction. We also find that rent stabilization and just cause eviction protections help residents of the lowest socio-economic status remain in their neighborhoods. At the same time, these protections may have exclusionary impacts as we find that fewer low-income people move into neighborhoods with tenant protections. Together, these findings suggest that equitable solutions to the housing crisis will require more than just upzoning and tenant protections—these are complementary solutions, but not enough. Preserving unsubsidized affordable housing and substantially expanding social housing would help mitigate displacement and exclusion while addressing the housing affordability crisis through market rate housing production and tenant protections. Social housing is the provision of rental or homeownership units affordable at a moderate income or below, and is run by a public or nonprofit entity. To work, it would need to be widely implemented, requiring government investment at levels that match the urgency of the housing crisis. What follows is a short summary of the main findings of the study. Practitioner-oriented findings on the implications of new production, subsidized development, and tenant protections will be presented in a series of forthcoming policy briefs by the authors.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame distilled prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. Learned from the 10,348 direct Codex labels and 10,348 direct Gemma labels. Candidate is the union of thresholded teacher heads; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels or direct frontier model labels.
Codex and Gemma teacher scores by category
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.002 | 0.000 |
| Meta-epidemiology (narrow) | 0.000 | 0.000 |
| Meta-epidemiology (broad) | 0.000 | 0.000 |
| Bibliometrics | 0.000 | 0.000 |
| Science and technology studies | 0.001 | 0.000 |
| Scholarly communication | 0.000 | 0.000 |
| Open science | 0.000 | 0.000 |
| Research integrity | 0.000 | 0.000 |
| Insufficient payload (model declined to judge) | 0.004 | 0.000 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one teacher head, not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".