Data, API & the affordability spine

Free JSON

GET /api/afford?salary=100000&down=0.10 — rank all 377 metros for a salary.
GET /api/metro?slug=austin-tx&salary=120000 — one metro's full affordability picture.

The 3 dream-sibling APIs (same spine)

GET /api/fire?portfolio=600000&savings=30000 — rank every metro by years-to-FIRE for you.
GET /api/fire-metro?slug=austin-tx&portfolio=800000 — one town's FIRE number + coast-FIRE.
GET /api/best-town?budget=400000&climate=warm&water=1 — scored best-town ranking.
GET /api/take-home?salary=150000&a=austin-tx&b=san-francisco-ca — real after-tax-after-housing delta.

Pages: /fire-by-town · /best-town-for-me · /take-home-comparison.

Bulk JSON (x402, keyless)

GET /api/bulk?salary=100000 — full ranked metro-affordability dataset.
GET /api/bulk-fire?portfolio=600000&savings=30000 — full FIRE-by-town dataset.
GET /api/bulk-best-town?budget=400000&climate=warm — full scored best-town ranking.
Each pay-per-call over x402 on Base mainnet. Agent-payable, no login. See /.well-known/x402 and /llms.txt.

Data sources (honest pollability)

Zillow ZHVI
Keyless. Public research CSV, typical home value per metro, refreshed monthly.
FRED 30-yr mortgage (MORTGAGE30US)
Keyless. Graph CSV endpoint, weekly Freddie Mac average.
Census ACS median income (B19013)
Keyless via the data.census.gov front-end API (the documented api.census.gov now requires a key).
HUD Fair Market Rents
Free token required (not keyless) — rent-vs-own angle is honest-null until a token is set.
BLS OEWS occupation wage
Keyless (25 req/day) — occupation+location mode is an enhancement with honest-null fallback to metro median income.

← back to the affordability map