How the Rent Stress Index is built
The Rent Stress Index scores every US ZIP code on rent-market durability — how much margin renters have before rent becomes unaffordable, and how exposed a market is if conditions tighten. It blends four independent, public data sources into a single 0–100 score.
What it measures — and what it doesn't
The Rent Stress Index is a market-level measure. Each score describes the economic environment renters face in a place: how stretched their incomes are against rents, how strong the local job market is, how accessible credit is, and how far market rents sit above the government's fair-market benchmark.
It is not a tenant-screening or tenant-scoring tool. It does not predict whether any individual renter will pay, and it must not be used for that purpose. The unit of analysis is always the market — a ZIP, a county, a metro — never a person or household. We deliberately exclude any demographic variables that could proxy for protected classes; the index is built only from economic and housing-cost data.
The four signals
| Signal | What it captures | Source |
|---|---|---|
| Rent burden | Share of renters paying 30%+ of income on rent — the standard cost-burden threshold. | Census ACS 5-Year, table B25070 |
| Income fragility | Local unemployment rate — how secure the incomes behind those rents are. | BLS Local Area Unemployment Statistics (county) |
| Credit access | Mortgage application denial rate — how tight the local credit environment is. | CFPB HMDA (county, all applicants) |
| Affordability gap | How far the market rent sits above (or below) HUD's fair-market rent ceiling for the area. | Zillow ZORI vs HUD Fair Market Rent |
A note on the rent-burden denominator
Cost-burden share is computed only over renter households with a computable rent-to-income ratio — we divide the burdened households by the renters who actually pay cash rent and report income, not by the full renter universe. Roughly 6–7% of renter households nationally fall into a "not computed" category (no cash rent, or zero/negative reported income); including them in the denominator would understate burden everywhere. This is a small choice that materially changes the numbers, so we make it explicit.
How the four signals become one score
Each signal is first oriented so that higher always means more stress (more burden, higher unemployment, tighter credit, rents further above the fair-market ceiling). We then convert each to a national percentile rank — a ZIP at the 90th percentile on rent burden is more burdened than 90% of ZIPs — and blend the four ranks into a weighted composite, rescaled to 0–100:
score = 40% · rent-burden rank + 25% · unemployment rank + 15% · credit-denial rank + 20% · affordability-gap rank
When a ZIP is missing a signal — for example, a rural ZIP outside any metro that has no fair-market-rent benchmark — the remaining weights are renormalized so the score reflects the signals that are present, and we show how many of the four each ZIP carries. We require at least two of the four for a published score.
The five bands
The 0–100 score is grouped into five bands:
Ample headroom Comfortable Moderate Tight Severe
A worked example: expensive isn't the same as stressed
The index is built to separate price from durability, and two coastal markets show why that matters.
Miami Beach carries one of the highest rent burdens in the country — a large share of renters stretched past 30% of income. But its unemployment is low and credit access is reasonable, so its overall stress score lands in the middle, not the top. San Francisco's Mission district has rents far above the fair-market ceiling — the largest affordability gap of any market in a typical run — yet a low burden score, because high incomes absorb those rents, alongside low unemployment and easy credit. The Mission scores as durable despite being expensive.
A naive "rent index" would rank both near the top on price. The Rent Stress Index correctly reads Miami Beach as moderately exposed and the Mission as comfortable — because the question it answers is not "is rent high?" but "how much can this market absorb before rent stress turns into turnover and missed payments?"
Honest limitations
The score is relative, not absolute. A percentile rank places a ZIP against every other ZIP in the same period. It tells you where a market sits in the national distribution, not an absolute probability of anything.
Rent-burden data lags. The Census ACS 5-Year estimate is an overlapping five-year window published with roughly a 14-month delay — it is structurally slower-moving than the monthly unemployment signal. The score mixes a slow structural signal with faster cyclical ones by design.
Multi-county ZIPs inherit their dominant county. Unemployment and credit-denial are measured at the county level. A ZIP that straddles two counties takes the economic signal of the county where most of its addresses sit, not a blended figure.
The rent-vs-ceiling comparison is approximate. Market rent (an all-home-types index) is compared to the two-bedroom fair-market rent, which is a reasonable "typical unit" proxy but not an exact like-for-like.
We don't trend the composite score. Because the score is a percentile rank, a ZIP's score can move even when its underlying conditions don't — if other markets shift around it. Trend views in the tool plot the raw signals over time (burden, unemployment, the rent gap), which reflect real measured change, not the rank.
Data sources
U.S. Census Bureau, American Community Survey 5-Year Estimates (public domain) · U.S. Bureau of Labor Statistics, Local Area Unemployment Statistics (public domain) · Consumer Financial Protection Bureau, HMDA (public domain) · U.S. Department of Housing and Urban Development, Fair Market Rents (public domain) · Zillow Research, ZORI (used with attribution). All sources are public; no individual-level or loan-level records are used or stored.
← Back to the Rent Stress Index