Pre-registration
Binding rent control (price ceilings below market clearing with enforcement teeth) reduces aggregate housing supply in affected markets, reduces the quality of existing rent-controlled stock through reduced maintenance incentives, and produces distributional effects favouring long-tenure incumbents over mobile workers and new household formation. These effects are well-identified in the literature and represent a framework-validation opportunity: consensus among economists is ~93% that rent control reduces housing availability and quality (IGM Forum survey). If the framework cannot reproduce this on natural- experiment data (Berlin Mietendeckel 2020-2021, San Francisco 1994 expansion, Stockholm persistent control), it is broken.
Falsification criterion — what would disprove this
This hypothesis is considered falsified if:
Not supported if ANY of: (a) Berlin Mietendeckel 2020-2021 did not reduce Berlin rental stock growth or new-rental listings relative to other German cities; (b) San Francisco 1994 expansion did not reduce housing supply growth in affected units relative to synthetic control (Diamond- McQuade-Qian replication); (c) Stockholm continuous control market does not show longer queues + higher informal transfer prices than non-controlled Stockholm non-regulated segment. A clean failure on all three cases would be extraordinary and would overturn current economic consensus; it has very low prior probability (<0.05).
formal test & threshold
test: rent_control_multi_case_replication threshold: All three cases show expected-direction effect at p<0.10 OR pooled meta-analytic coefficient is negative at p<0.05
Method
- Template
did_callaway_santanna- Fixed effects
metro, year- Clustering
metro- Sample
- 3 countries · 2000 – 2023
- Evidence type
- causal
Staggered DiD with metro + year FE. Primary outcomes: rent growth, housing stock growth, quality proxies. Synthetic control per treated case as robustness (Diamond-McQuade-Qian 2019 methodology for SF; Kholodilin-Kohl 2023 for Berlin). DATA STATE: this hypothesis is pre-registered ahead of data availability. The fetchers for city-level rent and permit data are not yet shipped. Hypothesis will run in v1.1 once fetchers (likely specialist BLS CPI rent subindex + Eurostat subnational housing) are implemented. Pre-registration now locks the spec so the subsequent run cannot be re-fitted to findings.
Data
| Variable | Source | Transform |
|---|---|---|
rent_growth_rate outcome | constructed:city-level rent index — fetcher pending. Candidates: BIS residential property prices by city (WS_SPP has city-level rowstier 5 | yoy_pct_change |
housing_stock_growth outcome | constructed:building-permits or housing-completions at treated-city level — fetcher pending.tier 5 | yoy_pct_change |
housing_quality_proxy outcome | constructed:maintenance complaints / code violations / age of unit mix — fetcher pending; likely requires city-administrative data ntier 5 | level |
rent_control_bind treatment | constructed:indicator = 1 in treated city-years (Berlin 2020-2021 Mietendeckel, SF 1994 expansion post-1995, Stockholm continuous). tier 5 | indicator |
metro_population control | pending | log |
metro_gdp_per_capita control | pending | level |
● ready · ● pending · ● reconstruct-needed
Detailed result card
Result card — rent_control_reduces_housing_supply_and_quality
Verdict: BLOCKED — required city/metro-level outcomes not in vintages (5 missing). Hypothesis is pre-registered ahead of fetcher work; running on country-level proxy would conflate treatment dilution with absence of effect. See BLOCKED.md.
Status
BLOCKED on data. See BLOCKED.md.
Missing data
bls:CUURS12B_rent_nyc_msabls:CUURS24B_rent_minneapolis_msabls:CUURS35B_rent_portland_msaeurostat:prc_hpi_q_berlinus_census:BPS_permits_metro
Estimator (pre-registered, awaiting data)
Callaway-Sant'Anna staggered DiD across cohorts:
- berlin_de: Mietendeckel (2020-02-23)
- stpaul_us: St Paul rent stabilisation (2021-11-02)
- nyc_us: HSTPA (2019-06-14)
- oregon_us: SB-608 (2019-02-28)
Outcomes (pre-registered)
- housing-permit issuance (city/metro)
- rental-listing counts
- median rent
Provenance
See manifest.yaml, BLOCKED.md, replication.py.
Strongest opposing argument
Every hypothesis ships with its charitable opposing argument. The framework earns credibility by handling objections at their strongest, not weakest.
Notes
Core literature for v1.1 when running: Diamond, McQuade, Qian (2019) 'The Effects of Rent Control Expansion on Tenants, Landlords, and Inequality' AER 109(9). Sims (2007) 'Out of control: what can we learn from the end of Massachusetts rent control?' J Urb Econ 61. Autor, Palmer, Pathak (2014) 'Housing market spillovers' J Pol Econ. Kholodilin, Kohl (2023) 'Rent control: a review of the evidence' J Housing Econ. IGM Forum Chicago Booth survey 'Rent Control' (2012). Data fetchers needed: - BLS CPI rent subcomponents by MSA (expand existing data.fetchers.bls) - Eurostat housing statistics (already-shipped fetcher, needs new series) - City-level administrative data for supply / quality proxies (likely requires specialist fetcher per-case) This is the first HOUSING-topic hypothesis in the repo. Needs new topic_dir hypotheses/housing/ (already implicit via topic enum).