Retrofit Atlas

Data

1902 sites and every table behind them, regenerated on each publish. One CSV per table, a SQLite copy for SQL and notebooks, GeoJSON and KML for maps, JSON per record; see integrations for Google Earth, Google Maps and ArcGIS. Licence undecided: research use only until terms are agreed with the authors.

Files

sites.csvone row per site: identity, place, before, after, planning, tier, screen
events.csvdated timeline entries per site, with source_id
sources.csvevery source with URL, date, licence and the quoted sentence that supports a field
deals.csvsales, listings, auctions, loans, special servicing, foreclosures
parcels.csvcounty assessor parcels within 40 m of a site: owner of record and mailing address, acres, use, zoning, appraised, assessed and taxable values, tax amount, last sale and deed reference where published, plus every raw county field as JSON
partys.csv + site_partys.csvorganisations and their roles per site (owner, operator, developer, architect), undated unless a year is present
photos.csvkey photo per site plus gallery photos (is_key=0), each with Commons title, author, licence, URL, how it was found, a vision-model caption and check result (ok/no:view:quality)
anchors.csv + site_anchors.csvdefunct and named retail chains per site
markets.csvcounty ACS 2018/2023: population, median gross rent, income, vacancy
provenances.csvwhich import, model or research set which field, when
contexts.csvper-site context layers as JSON: transit (OpenStreetMap), flood (FEMA NFHL), env (EPA FRS), tract (ACS 2023), yield (computed value and GLA per acre, FAR), assessment (model-written from the record), peers (six most similar sites), walk (EPA National Walkability Index block group: index, intersection density, transit distance, land-use mix, jobs within 45 min, zero-car share), fifteen (OpenStreetMap counts within 800 m: grocery, schools, parks, health, civic, food, cycleways, sidewalks), oz (federal Opportunity Zone tract), overture (Overture Maps place id, category, website, socials, phones, confidence, providers; building footprint id, area, height), pageviews (Wikipedia monthly views since 2015: total, last 12 months, trend, peak), web_presence (website liveness, social platforms, Wayback first/last capture), nrhp (National Register places within 500 m), tract_change (ACS 2013 vs 2023 tract: population, income, renter share, home value, with change), nri (FEMA National Risk Index: composite and per-hazard ratings, expected annual loss, resilience), lihtc (HUD tax-credit housing within 1 km: count, units, projects), retail_trend (county retail establishments and jobs 2012 vs 2023, Census CBP), housing_market (county typical home value and rent with 1- and 5-year change, Zillow Research), hpi (FHFA tract house price index with 1-, 5-, 10-year change), traffic (FHWA HPMS: max AADT, trucks, class, lanes within 600 m), permits (county housing permits 2023–24 by building size, Census BPS), svi (CDC/ATSDR Social Vulnerability Index 2022 tract percentiles), cluster (other atlas sites within 10 and 25 km), web (web image pages and ULI/planning/academic references found by search; links only)
party_facts.csvWikidata facts on owners and operators: type, HQ, ticker, parent, founded
site_details.csvbefore/after fields extracted from the record text (parking, architects, costs, units, sq ft by use, street grid, public investment) with the verbatim quote; unreviewed
sec_facts.csvCoStar-style mall facts from free SEC filings, one row per value with the filing URL and the verbatim table row or XML fields it came from: REIT 10-K property tables (GLA, in-line GLA, year built, acquired, renovated, occupancy or leased %, in-line sales psf, anchors, ownership share, tenure; origin sec-reit) and CMBS ABS-EE Exhibit 102 loan data (balance, original amount, maturity, rate, DSCR on NCF and NOI, NOI, payment status, special-servicer transfer, workout, servicer, originator, appraised value and date, occupancy, year built, NRSF, three largest tenants; origin sec-absee); match tier exact / name-city / name-state; unreviewed
elements.csv + site_elements.csvprofile elements (strategy, new use, policy tool, finance, ownership, anchor, place, scale, era) and which sites carry them, with the evidence snippet and origin
atlas.sqlitethe whole store (outreach drafts removed); schema in schema.sql
sites.geojson · sites.kml · sites.json · records/<id>.json · index.jsonmap and per-record formats

sites.csv atlas.sqlite sites.geojson deals.csv parcels.csv sources.csv

Codebook

verifiedcurated = taken from the authors' public 2021 map, not reviewed by them for this site · draft = imported from Wikipedia/Wikidata/Esri or drafted by a model with quotes, not yet reviewed · contributed = submitted through the form
strategyredevelop | reinhabit | regreen, semicolon-separated; empty = none recorded
statusoperating | closed | demolished | proposed | approved | under construction | built | partial | stalled | reversed | unknown (= not verified)
typemall | big-box | office-park | strip | garden-apartments | industrial | golf-course | gas-station | other
year_opened / year_closed / year_retrofitintegers; from Wikidata, the authors' map, the Esri layer or a quoted sentence (see provenances.csv)
acres / gla_sqftas recorded; acres may be a sum of county parcels within 40 m (provenance says so)
opp_score / opp_reasonsthe multifamily screen points and reasons; research only
owner_of_recordlargest parcel's owner from the county assessor, Title Case; present for sites with parcel data only
last_updated / last_verifiedsource last edited · reviewed by a person (empty = not yet)
encodingUTF-8, comma-separated, quoted; multi-valued fields use '; '

Working with it

In Python: pandas.read_csv("https://retrofitatlas.org/data/sites.csv"), or sqlite3 atlas.sqlite and SELECT state, count(*) FROM site GROUP BY 1. Joins are on site.id. For ArcGIS Online: Add layer from URL with the GeoJSON. There is also a read-only JSON API (sites, records, nearby, elements, owners, stats, changes).

Versions

Build 2026-10-20. No DOI yet. Methods and limits.