Methodology & sources
Every number on this site comes from a public government file or from one of the formulas below. Nothing is estimated by hand, surveyed by us, or written by an AI.
Data sources
| Source | Vintage | Retrieved | SHA-256 (first 12) |
|---|---|---|---|
| Occupational Employment and Wage Statistics (OEWS), May 2025 — metropolitan areas U.S. Bureau of Labor Statistics | May 2025 estimates | 2026-10-06 | cc3e6fa80edf |
| Occupational Employment and Wage Statistics (OEWS), May 2025 — national U.S. Bureau of Labor Statistics | May 2025 estimates | 2026-10-06 | b5855a37f3e0 |
| Fair Market Rents, FY2027 U.S. Department of Housing and Urban Development (HUD USER) | FY2027 (effective Oct 1, 2026) | 2026-10-05 | 423d1c6f8ef2 |
| American Community Survey 2020–2024 5-year estimates: Median gross rent (B25064) U.S. Census Bureau | ACS 2020–2024 5-year | 2026-10-05 | b36e6dc1fcef |
| American Community Survey 2020–2024 5-year estimates: Median household income (B19013) U.S. Census Bureau | ACS 2020–2024 5-year | 2026-10-05 | b25a176b0e6c |
Raw files are downloaded as-is from the agencies' public download pages. A daily job checks for newer releases and rebuilds the site when one appears.
Wages
Annual wages come from the BLS Occupational Employment and Wage Statistics (OEWS) program, May 2025 estimates, for each metropolitan statistical area (MSA) and Standard Occupational Classification (SOC) code. We use the published 10th, 25th, 50th (median), 75th and 90th percentile annual wages. BLS doesn't publish a value when estimates are unreliable or confidential, and it caps the highest figures ("#"). Those cells appear as "not published", and a job-metro page is only created when the median wage is published and at least 500 people hold the job in that metro.
Take-home pay
Take-home pay = annual wage − federal income tax − Social Security − Medicare, divided by 12. Federal income tax uses tax-year 2026 rules for a single filer taking the $16,100 standard deduction, with brackets of 10% to $12,400, 12% to $50,400, 22% to $105,700, 24% to $201,775, 32% to $256,225, 35% to $640,600, 37% above of taxable income (IRS Rev. Proc. 2025-32). Social Security is 6.2% up to $184,500; Medicare is 1.45% plus 0.9% above $200,000.
Not included: state and local income taxes, credits, pre-tax retirement or health deductions, and other filing statuses. In states that tax wages, real take-home pay will be lower than shown, and pages say so. Wages are from May 2025 while tax rules are for 2026; we don't adjust wages for inflation.
Rent
Rents are HUD Fair Market Rents (FMRs), FY2027 (effective Oct 1, 2026). An FMR is HUD's estimate of gross rent (contract rent plus basic utilities) at about the 40th percentile for standard-quality rental units, used to set Housing Choice Voucher limits. It is not an asking-rent average. Large metros are often split into several HUD FMR areas, and we use the most populous one for every comparison. Metro pages list all of them. For context, metro pages also show the Census Bureau's ACS 2020–2024 5-year median gross rent and median household income (with margins of error), from the keyless ACS table-based Summary File.
Metrics
- Hours of work to cover rent = 1-bedroom HUD FMR ÷ BLS median hourly wage. The OEWS full-year basis is 2,080 hours; a work month is 2,080 ÷ 12. Ledger hours for any dollar line use the same hourly wage.
- Rent share of take-home = 12 × FMR ÷ annual take-home pay.
- Affordability ratio = annual wage ÷ (12 × FMR ÷ 0.30). This follows HUD's rule that housing is "cost-burdened" above 30% of gross income. A ratio of 1.00 or more means the rent fits within 30% of gross pay.
- Left after rent = monthly take-home − monthly FMR.
- Bands (our own labels): Comfortable = rent ≤ 30% of take-home; Stretched = 30–40%; Strained = over 40%.
- Ranks compare only the metros or jobs currently published on this site, and say how many.
What we skip, and why
- Census Data API requires a key for all data queries since May 2026; used the keyless ACS table-based Summary File downloads instead.
- HUD FMR API requires a HUD USER token; used the public FMR workbook download instead.
- BLS API v2 needs a registration key for full limits; used the keyless OEWS bulk files.
Corrections
Found an error? Each page links its CSV, so you can check every figure against the source file. Send corrections through the contact form; they are applied in the next daily build.