Econ 66: Topics in Money and Finance · Research Paper
Flood Exposure and Asset Repricing
Flood Risk and Home Values
How FEMA Flood Zone Reclassifications Affect Property Markets
Cameron Keith · 231,130 zip-quarter obs · 2009–2022
The LOMR effect scales with flood insurance exposure: at full policy penetration, home values decline by over 7% within four years. Coefficients represent the effect per unit of pre-LOMR NFIP policy intensity (policies / population).
Research Question
Motivation and contribution
When FEMA updates a flood map through a Letter of Map Revision (LOMR), it officially changes the flood risk classification for properties in the affected area. Properties newly designated as high-risk must carry flood insurance if they have a federally backed mortgage - an immediate, tangible cost. Properties removed from high-risk zones see the opposite: reduced insurance burdens and an implicit signal that flood risk has diminished.
This paper asks a simple question: do housing markets actually capitalize these flood risk signals? If home prices respond to LOMR reclassifications, it suggests buyers and sellers are pricing in government-assessed flood risk. If prices don't respond, it raises questions about whether flood risk information reaches or influences market participants.
Using a staggered difference-in-differences design, this paper exploits the quasi-random timing of LOMR effective dates across U.S. coastal zip codes from 2009 to 2022 to estimate the causal effect of flood zone reclassification on home values.
Data & Sample
Sample construction and descriptive statistics
The sample consists of all US coastal zip codes (excluding Alaska and territories) observed quarterly from 2009 to 2022. Treatment zips are those whose ZCTA boundary intersects the ocean and received at least one LOMR during the analysis window. Control zips are adjacent coastal zips that share a boundary with treatment zips but never received a LOMR. Zips treated before 2009 and those with multiple LOMRs are excluded from the event study to ensure clean identification.
Summary Statistics
| Variable | N | Mean | Std Dev | Min | P25 | Median | P75 | Max |
|---|---|---|---|---|---|---|---|---|
| Home Value Index (Dec 2022 $) | 262,542 | $493,107.91 | $418,433.17 | $32,424.71 | $238,353.36 | $379,967.33 | $606,031.69 | $8,125,586.00 |
| ln(Real ZHVI) | 262,542 | $12.86 | $0.68 | $10.39 | $12.38 | $12.85 | $13.31 | $15.91 |
| Post-LOMR | 262,542 | 0.09 | 0.29 | 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
| Ever Treated | 262,542 | 0.24 | 0.42 | 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
| County Unemp. Rate (%) | 262,542 | 6.44 | 2.90 | 1.70 | 4.20 | 5.77 | 8.27 | 31.40 |
| NFIP Policies (qtr avg) | 262,542 | 71.14 | 177.94 | 0.00 | 2.00 | 8.33 | 47.33 | 3,941.33 |
| NFIP Avg Premium ($) | 262,542 | $725.61 | $629.30 | $0.00 | $368.39 | $576.08 | $935.69 | $19,570.33 |
| SFHA Zone Share | 262,542 | 0.36 | 0.30 | 0.00 | 0.04 | 0.33 | 0.60 | 1.00 |
| NFIP Claims (qtr avg) | 262,542 | 1.26 | 28.02 | 0.00 | 0.00 | 0.00 | 0.00 | 4,177.00 |
| Zip Population | 262,430 | 22,342.31 | 19,476.57 | 28.00 | 6,122.00 | 18,075.00 | 33,246.00 | 137,213.00 |
| Zip Pop. Density | 262,430 | 1,891.63 | 4,262.49 | 0.20 | 101.40 | 625.30 | 1,904.50 | 62,798.40 |
| Republican County | 262,542 | 0.49 | 0.50 | 0.00 | 0.00 | 0.00 | 1.00 | 1.00 |
| R Two-Party Vote Share | 256,127 | 0.42 | 0.15 | 0.06 | 0.32 | 0.43 | 0.51 | 0.89 |
Pre-Treatment Balance
Comparing pre-LOMR means for treated zips against all-period means for control zips. Significance: * p<0.10, ** p<0.05, *** p<0.01 (Welch t-test).
| Variable | Control | Treated | Difference |
|---|---|---|---|
| Home Value (Dec 2022 $) | $481,912.67 | $477,135.77 | $4,776.90 |
| Population | 19,564.02 | 23,916.72 | -4,352.70*** |
| Pop. Density (per sq mi) | 2,017.46 | 1,288.72 | 728.73*** |
| County Unemp. Rate (%) | 6.43 | 6.76 | -0.33*** |
| NFIP Policies (qtr avg) | 59.72 | 84.27 | -24.55*** |
| NFIP Avg Premium ($) | $692.27 | $786.34 | $-94.07*** |
| SFHA Zone Share | 0.34 | 0.40 | -0.06*** |
| NFIP Claims (qtr avg) | 1.06 | 1.35 | -0.28 |
| Treated: zips with single LOMR during 2009-2022. | |||
| Control: zips with no LOMR. | |||
| Pre-treatment means reported for treated zips. | |||
| Difference = Treated - Control. Welch t-test. | |||
| Significance: *** p<0.01, ** p<0.05, * p<0.1 | |||
Methodology
Identification strategy and econometric specification
This paper uses a staggered difference-in-differences design that exploits variation in the timing of LOMR effective dates across zip codes. The key assumption is that, absent the LOMR, home values in treated and control zips would have followed parallel trends, which is testable in the pre-treatment period.
The event study specification estimates dynamic treatment effects at each year relative to the LOMR:
where z indexes zip codes, t indexes quarters, and Ez is the LOMR effective date for treated zip z. The coefficients of interest are the βτ, which trace out the treatment effect at each event-time bin relative to the omitted reference period (τ = −1, the year before the LOMR).
Results
Event study estimates and regression tables
The main event study shows the effect of LOMR flood zone reclassification on log real home values (ZHVI, adjusted to December 2022 dollars). Pre-treatment coefficients near zero confirm the parallel trends assumption. Post-treatment, home values decline gradually, reaching −2.5% after four or more years.
Event Study: LOMR Effect on Home Values
| (1) No Controls | (2) Main Controls | (3) Full Controls | |
|---|---|---|---|
| τ = -4 (3+ yrs pre) | -0.0081 | -0.0081 | -0.0081 |
| (0.0075) | (0.0075) | (0.0075) | |
| τ = -3 (2-3 yrs pre) | -0.0005 | -0.0007 | -0.0006 |
| (0.0046) | (0.0046) | (0.0046) | |
| τ = -2 (1-2 yrs pre) | -0.0016 | -0.0017 | -0.0016 |
| (0.0030) | (0.0030) | (0.0030) | |
| τ = 0 (0-1 yr post) | -0.0005 | -0.0006 | -0.0006 |
| (0.0023) | (0.0023) | (0.0023) | |
| τ = +1 (1-2 yrs post) | -0.0044 | -0.0046 | -0.0046 |
| (0.0040) | (0.0040) | (0.0040) | |
| τ = +2 (2-3 yrs post) | -0.0086 | -0.0088 | -0.0088 |
| (0.0061) | (0.0061) | (0.0061) | |
| τ = +3 (3-4 yrs post) | -0.0130* | -0.0129* | -0.0129* |
| (0.0071) | (0.0071) | (0.0071) | |
| τ = +4 (4+ yrs post) | -0.0247** | -0.0249** | -0.0249** |
| (0.0115) | (0.0115) | (0.0115) | |
| Observations | 231,130 | 231,130 | 231,130 |
| Within R² | 0.0011 | 0.0026 | 0.0027 |
| Zip and county×year fixed effects. Standard errors clustered at county level. Reference period: 12-0 months before LOMR (τ = -1). Already-treated zips (LOMR before 2009) excluded. Significance: *** p<0.01, ** p<0.05, * p<0.1 | |||
Robustness
Diagnostics, parallel trends, and heterogeneity-robust estimation
Parallel Pre-Trends
The identifying assumption requires that treated and control zip codes would have followed parallel home value trajectories absent the LOMR. The raw trends below show treated zips are higher in levels (coastal proximity), but the year-over-year movements track closely. This is consistent with the parallel trends assumption that the zip and county×year fixed effects absorb.

Pre-Period Joint F-Test
A formal joint test of whether all pre-treatment coefficients (τ = −4, −3, −2) are simultaneously zero. Failure to reject supports the parallel trends assumption required for causal identification.
F(3, 342) = 1.05 p = 0.37
Cannot reject the null that all pre-treatment coefficients jointly equal zero. This supports the parallel trends assumption.
Treatment Timing Distribution
The staggered treatment design relies on variation in LOMR effective dates across zip codes. Treatment is spread across the full 2009–2022 window, with increasing frequency in later years as FEMA's mapping modernization program accelerated. This variation identifies the event-time coefficients.

Two-Way Fixed Effects DiD
A simple TWFE DiD with a binary post-treatment indicator estimates the average treatment effect. The coefficient is positive but imprecisely estimated, consistent with the event study showing effects that build gradually over time and would be attenuated in a single-period pooled estimate that averages early (near-zero) and late (large negative) effects.
| (1) TWFE DiD | |
|---|---|
| Post-LOMR | -0.0060 |
| (0.0078) | |
| County Unemp. Rate (%) | -0.0022*** |
| (0.0003) | |
| NFIP Policies (qtr avg) | 3.450e-7 |
| (1.050e-5) | |
| SFHA Zone Share | 0.0006 |
| (0.0065) | |
| Constant | 12.9200*** |
| (0.0030) | |
| Observations | 231130 |
| Within R² | 0.0015 |
| Zip and county×year FE. SE clustered at county level. Significance: *** p<0.01, ** p<0.05, * p<0.1 | |
Unweighted & Geographic Intensity
Unweighted specification: Dropping population weights yields same-direction but smaller and insignificant effects (τ=+4: −0.7% vs −2.5%), consistent with the effect being concentrated in larger, more liquid housing markets where Zillow coverage is strongest.
Geographic intensity: Replacing NFIP policy penetration with the LOMR polygon area / ZCTA area ratio as the intensity measure. Coefficients flip positive and are insignificant, reinforcing that the mechanism runs through insurance exposure (the mandate channel), not raw spatial overlap with reclassified zones.
| (1) (1) Main Weighted | (2) (2) Unweighted | (3) (3) Geographic Intensity | |
|---|---|---|---|
| τ = -4 (3+ yrs pre) | -0.0081 | -0.0049 | |
| (0.0075) | (0.0058) | ||
| τ = -3 (2-3 yrs pre) | -0.0007 | -0.0010 | |
| (0.0046) | (0.0035) | ||
| τ = -2 (1-2 yrs pre) | -0.0017 | -0.0018 | |
| (0.0030) | (0.0023) | ||
| τ = 0 (0-1 yr post) | -0.0006 | 0.0002 | |
| (0.0023) | (0.0020) | ||
| τ = +1 (1-2 yrs post) | -0.0046 | -0.0014 | |
| (0.0040) | (0.0035) | ||
| τ = +2 (2-3 yrs post) | -0.0088 | -0.0034 | |
| (0.0061) | (0.0050) | ||
| τ = +3 (3-4 yrs post) | -0.0129* | -0.0044 | |
| (0.0071) | (0.0062) | ||
| τ = +4 (4+ yrs post) | -0.0249** | -0.0071 | |
| (0.0115) | (0.0117) | ||
| τ = -4 × geo intensity | -0.0806* | ||
| (0.0473) | |||
| τ = -3 × geo intensity | -0.0227 | ||
| (0.0360) | |||
| τ = -2 × geo intensity | -0.0319 | ||
| (0.0259) | |||
| τ = 0 × geo intensity | 0.0113 | ||
| (0.0206) | |||
| τ = +1 × geo intensity | -0.0034 | ||
| (0.0328) | |||
| τ = +2 × geo intensity | 0.0100 | ||
| (0.0423) | |||
| τ = +3 × geo intensity | 0.0233 | ||
| (0.0557) | |||
| τ = +4 × geo intensity | 0.0562 | ||
| (0.0650) | |||
| Observations | 231,130 | 231,242 | 231,130 |
| Within R² | 0.0026 | 0.0013 | 0.0017 |
| Zip and county×year FE. SE clustered at county level. (1) Main specification with population weights. (2) Same specification without population weights. (3) Geographic intensity (LOMR area / ZCTA area) replacing NFIP policy intensity. Significance: *** p<0.01, ** p<0.05, * p<0.1 | |||
Goodman-Bacon Decomposition
With staggered treatment timing, the TWFE estimator is a weighted average of all 2×2 DiD comparisons, including potentially problematic comparisons that use already-treated units as controls (Goodman-Bacon, 2021). The decomposition below shows the weight and estimate for each comparison type. The positive overall TWFE estimate (+0.019) reflects the dominance of timing-group and always-treated comparisons. The event study's intensity specification reveals the heterogeneity that this single number obscures.

Callaway & Sant'Anna Estimator
The heterogeneity-robust Callaway & Sant'Anna (2021) estimator computes group-time average treatment effects separately for each cohort and aggregates them without the problematic comparisons identified by Goodman-Bacon. The ATT estimates are near zero with wide confidence intervals, consistent with the binary specification. The key insight is that the average effect masks strong heterogeneity by flood insurance exposure, which the intensity specification captures.

Data
Download research data and replication files
All datasets used in this research are available for download. Data is provided as-is for replication and academic use. The source code for the full data pipeline is available on GitHub.
Event Study Coefficients
Point estimates, standard errors, and 95% CIs for all event study specifications (main, intensity, up/down, disclosure, insurance).
Summary Statistics
Table 1: summary statistics for all regression variables (full sample, treated, control).
LOMR Treatment Timing
Zip-level treatment data: LOMR dates, number of LOMRs, treatment status, zip characteristics.
Stata Do-File
Complete event study estimation script with all specifications, tables, and figures.
Regression Panel
Full zip × quarter panel with ZHVI, treatment indicators, NFIP policies/claims, and BLS unemployment. Generate via the data pipeline on GitHub.
NFIP Policy Panel
Zip × month NFIP policy counts, premiums, claims, and SFHA shares. 997K rows. Generate via the data pipeline on GitHub.
About
Author and acknowledgments
Author
This research was conducted as part of the Economics 66 course. The full paper, data pipeline, and replication code are available on GitHub.
Methodology Note
Data pipeline: Python (pandas, geopandas) for data acquisition, spatial operations, and panel construction. All scripts are reproducible from raw inputs.
Econometrics: Stata (reghdfe) for high-dimensional fixed effects estimation. Callaway & Sant'Anna estimator via the csdid package.
This website: Next.js (static export), D3.js for charts, Tailwind CSS. Deployed on AWS S3 + CloudFront.
Data sources: FEMA NFHL (ArcGIS REST), NFIP policies and claims, Zillow ZHVI, BLS LAUS, Census TIGER/Line, MIT Election Lab, FRED CPI-U, NOAA coastal counties, state flood disclosure laws.