Retrofit Atlas

Data model

22 tables, 246 columns, 36 context layers. The canonical store is SQLite (download it, 1,904 sites); every table below is also a CSV on the downloads page, and /api/v1/sites/{id} returns the same joined for one record. Counts are from the database this site was built from on 2026-10-21.

Principles

Relationships

site 1 ─── n site_detail · event · source · provenance · photo · deal · parcel · sec_fact · challenge · policy_tool · context · change_log
site n ─── n party      (site_party: role, years)        party 1 ─── 1 party_fact
site n ─── n anchor     (site_anchor: years, fate)
site n ─── n element    (site_element: evidence)
site n ─── 1 market     (county_fips)

Context layers one JSON document per site per layer; "sheet" = included in the MCP location_sheet

LayerWhatGrainVintageSourceLicenceSitesKeys (sample)
assessmentStructured assessment of the recordsitebuildmodel, record-only, with quotesours1,905what_happened, why, where_it_stands, for_a_planner, for_a_developer, risks_and_unknowns, data_quality, one_line, model, machine, record_sha1
peersSix most similar sitessitebuildcomputedours1,724peers, method
clusterMarket clustersitebuildcomputedours1,549within_10km, count_10km, count_25km
elevation sheetElevation at the site pointpoint3DEP currentUSGS EPQSpublic domain1,487elevation_ft, resolution, source, retrieved
food_access sheetLow-income low-access flag, share more than 1 mile from a supermarket, poverty, SNAPtract (2010)FARA 2019USDA ERS Food Access Research Atlas (ArcGIS-hosted copy)public domain1,487tract10, urban, lila_1_10, low_access_1mi, poverty_rate, median_family_income, snap_households, pop2010, source, retrieved
qcew_retail sheetRetail trade establishments, employment, average pay, location quotientcountyQCEW 2025 or latestBLS QCEW open data APIpublic domain1,487county, year, establishments, employment, avg_annual_pay, lq_employment, employment_change_1y, source, retrieved
retail_trend sheetRetail establishments and jobs 2012 vs 2023countyCBP 2012, 2023Census County Business Patternspublic domain1,4872012, 2023, estab_change, emp_change, county_fips
schools sheetUnified school district; public schools within 1 milepointdistricts SY2024-25, schools SY2023-24NCES EDGEpublic domain1,487district, district_geoid, grades, district_vintage, public_schools_1mi, schools, schools_vintage, source, retrieved
permits sheetBuilding permits, countycountyBPS 2019 to 2024Census Building Permits Surveypublic domain1,486county, 2024, 2023, retrieved
opportunity sheetUpward mobility: adult income rank of children from 25th-percentile families, incarceration ratetract (2010)children born 1978-83, outcomes 2014-15 (2018 release)Opportunity Insights, Opportunity Atlasfree; cite Chetty, Friedman, Hendren, Jones, Porter (2018)1,471tract10, kfr_p25, jail_p25, kids_count, commuting_zone, vintage, source, retrieved
listings sheetHomes for sale: median list price, active listings, days on market, price-cut shareZIP (ZCTA at the point)latest monthRealtor.com Researchfree with attribution to Realtor.com; no resale1,458zip, month, median_listing_price, median_listing_price_yy, active_listing_count, median_days_on_market, price_reduced_share, pending_ratio, source, retrieved
housing_market sheetHome values and rents, 10-year changecountySep 2026Zillow Research ZHVI / ZORIfree with attribution; resale needs Zillow terms1,454zhvi, zori, county_fips, source
storms sheetCounty-typed storm events: counts by type, property damage, direct deaths; forecast-zone events excludedcounty2016-2025 details filesNOAA NCEI Storm Events Databasepublic domain1,451county, years, events, by_type, property_damage_usd, deaths_direct, injuries_direct, note, source, retrieved
jobs_lodes sheetJobs located in the tract: all, retail, accommodation and foodtract (2020), blocks summedLODES8 WAC 2022Census LEHDpublic domain1,450tract20, jobs, retail_jobs, food_accommodation_jobs, year, source, retrieved
traffic sheetRoad traffic (AADT) within 600 mroad segmentHPMS 2023/24FHWA HPMS via geo.dot.govpublic domain1,416max_aadt, trucks_aadt, road, class, lanes, segments_600m, year, source, retrieved
webWeb referencessiteliveSearXNG meta-searchmixed942images, refs, query, retrieved
overturePlaces and buildings on the sitepoint / polygonOverture 2025 releaseOverture MapsCDLA-Permissive 2.0 / ODbL835candidates, place, retrieved, building, large_buildings_nearby, buildings_done
pageviewsWikipedia attentionarticlelast 12 monthsWikimedia RESTCC0 metrics731article, months, total, last_12m, prior_12m, trend, peak_month, peak_views, series, retrieved
envEPA facilities and brownfields nearbypoint, 1 kmliveEPA FRS / ECHOpublic domain726count, facilities, brownfield, retrieved
flood sheetFEMA flood zonepointNFHL currentFEMA NFHLpublic domain726zone, subtype, sfha, bfe, retrieved
lihtc sheetTax-credit housing nearbypoint, 1.6 kmHUD LIHTC 2023HUDpublic domain726count_1km, units_1km, li_units_1km, projects, retrieved
nrhpNational Register listings nearbypointNRHP currentNPSpublic domain726count, places, retrieved
oz sheetOpportunity Zonetract2018 designationHUDpublic domain726opportunity_zone, tract, rural, retrieved
nri sheetFEMA National Risk Indexcounty / tractNRI 2023FEMApublic domain725tract, risk_score, risk_rating, eal_score, eal_rating, expected_annual_loss_usd, social_vulnerability, community_resilience, hazards, high_hazards, retrieved
tract sheetCensus tract profile: population, income, rent, vacancytractACS 2023 5-yrUS Census ACS APIpublic domain725geoid, pop, pop_per_sqmi, median_hh_income, median_gross_rent, renter_share, vacancy_rate, transit_commute_share, retrieved
tract_change sheetTract change 2013 to 2023tractACS 2013 and 2023US Census ACS APIpublic domain725geoid, y2013, y2023, retrieved, pop_change, median_hh_income_change, renter_share_change
svi sheetCDC Social Vulnerability IndextractSVI 2022CDC/ATSDRpublic domain724tract, overall_pct, socioeconomic_pct, household_pct, minority_pct, housing_transport_pct, pop, poverty150_share, no_vehicle_share, minority_share, unemployed_share, retrieved
fifteenAmenities within a 15-minute walkpoint, 1.2 kmlive OSMOpenStreetMap via OverpassODbL705grocery, schools, parks, health, civic, food_drink, cycleway_ways, sidewalk_ways, residential_buildings, categories_present, retrieved
edgar sheetCMBS trusts and public owners naming the mallsite (name + city text match)filings 2001 to dateSEC EDGAR full-text searchpublic domain588query, city, total, name_only_total, common_name, sampled, latest, earliest, cmbs, public, other, forms, url, retrieved
web_presenceMall website liveness and archivedomainlivesite + Wayback CDXmixed564websites, socials, phones, platforms, overture_id, website_status, website_final, website_alive, retrieved, wayback
walk sheetEPA National Walkability Indexblock group2021EPA Smart Location Databasepublic domain562geoid, walk_index, intersection_density, road_density, transit_distance_m, land_use_mix, jobs_per_acre, jobs_45min_auto, jobs_45min_transit, zero_car_share, pop, housing_units, acres_land, retrieved
hpi sheetHouse price index, tracttractFHFA 2025FHFA HPIpublic domain523year, index, change_1y, change_5y, change_10y, base, tract, retrieved
transit sheetRail stations within 800 mpointlive OSMOpenStreetMapODbL357rail_stations, bus_stops, bus_stations, motorway_junctions, retrieved
deadmalls sheetStory page on DeadMalls.com for the same mall (link only; nothing copied)site (name + state, city when it agrees)index read Oct 2026DeadMalls.com stories index© DeadMalls.com; linked, not reproduced310url, title, match, index, retrieved
sec sheetMall facts from the filings: GLA, year built, occupancy, sales psf, anchors, owner share (REIT 10-K tables); loan balance, maturity, DSCR, appraisal, servicer status (ABS-EE Exhibit 102)property (name + place match)10-Ks 2002 to 2026, ABS-EE latest monthSEC EDGAR filingspublic domain172reit, absee, source, retrieved
yield sheetTax yield per acreparcelassessor yearcounty assessorcounty terms67value_per_acre, gla_per_acre, far, parcel_value_total

Method and refresh cadence per layer: data sources. Missing layers on a site mean the public API returned nothing for that geography, not a zero.

Vocabularies with live counts

site.type

ValueRows
mall1,043
office-park214
other178
industrial108
golf-course96
strip83
big-box81
garden-apartments62
gas-station37

site.status

ValueRows
built476
proposed289
operating224
demolished219
unknown181
closed172
partial123
under construction111
approved96
stalled8
reversed3

site.verified (tier)

ValueRows
draft1,722
curated180
rejected2

site.country (top)

ValueRows
US1,555
Canada60
United Kingdom58
Australia45
England40
UK35
Singapore18
Philippines13
(null)9
Taiwan8
Scotland6
Germany6

event.kind

ValueRows
note4,774
opened565
retrofit390
closed163

source.kind

ValueRows
wikipedia6,889
quote1,372
news870
arcgis152
hermes-web146
planning23
research20

site_party.role

ValueRows
owner (from text)795
developer508
owner81
owner (Wikidata, undated)41
original_developer36
original_architect14
architect5
operator (Wikidata, undated)3

deal.kind

ValueRows
sale483
loan23
foreclosure22
special_servicing14
auction12
listing11

element.grp

ValueRows
anchor85
place37
era36
finance20
use18
policy9
scale4
owner4
strategy3

provenance.origin

ValueRows
extraction3,725
newtypes-extraction2,821
arcgis-webmap1,282
wikipedia727
wikidata506
esri-closed-us-malls-2014474
census-geocoder174
derived from authors' map (retrofit year present)114
research-planning111
research-deals59
hermes-web43
gapfill-2026-10-16/nominatim-reverse34
gapfill-2026-10-16/nominatim34
staffbox-seed-2026-10-1431
gapfill-2026-10-16/census-coordinates12
atlas-staff-review6
staff-review4
gapfill-2026-10-16/wikidata-p6254
derived (no status in authors' map)3
gapfill-2026-10-162

sec_fact.field

ValueRows
name_in_filing471
owner424
gla_sqft423
anchors398
occupancy_pct370
ownership_pct324
gla_inline_sqft245
year_built196
year_acquired172
year_renovated137
tenure133
sales_psf72
property_status47
appraised_value47
appraisal_date47
originator46

challenge.challenge

ValueRows
housing shortage57
retail disruption53
auto dependence42
social equity35
office disruption27
water and energy resilience20
public health19
climate14
jobs and competitiveness10
traffic1
aging population1

policy_tool.tool

ValueRows
rezoning7
overlay district7
public subsidy: yes4
planned unit development4
floating zone3
public subsidy: tax increment financing2
planned unit development (pud)2
planned development2
permitted development rights (pdr)2
form-based code2
deerfield’s affordable housing ordinance2
county plan2

Tables

site 1,904 rows

one row per place (a mall, a box, an office park...)

ColumnTypeMeaning
idTEXTarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
slugTEXTcity-name, URL part
typeTEXT
nameTEXTaka: JSON array
akaTEXT
cityTEXT
countyTEXT
stateTEXT
countryTEXT
census_divisionINTEGER
latREAL
lonREAL
geocode_methodTEXT
addressTEXT
metroTEXT
original_useTEXT
year_openedINTEGER
year_closedINTEGER
acresREAL
gla_sqftINTEGER
stores_peakINTEGER
levelsINTEGER
original_developerTEXT
original_architectTEXT
before_notesTEXT
strategyTEXTJSON array of redevelop|reinhabit|regreen
new_useTEXTJSON array of healthcare|education|housing|office|civic|park|retail|industrial|hotel|church|mixed
share_retrofitTEXTher map scale: 25-75% / >75%
statusTEXT
year_retrofitINTEGER
developerTEXT
architectTEXT
after_notesTEXT
narrativeTEXT
narrative_licenseTEXT
narrative_sourceTEXT
zoning_changeTEXT
public_subsidyTEXT
entitlement_yearINTEGER
planning_notesTEXT
wikidata_qidTEXT
wikipediaTEXT
osm_idTEXT
verifiedTEXTtier: curated (from the authors' public map, not reviewed by them) | draft (imported or model-extracted, unreviewed) | contributed (submitted through the form and reviewed) | rejected
verified_byTEXT
last_verifiedTEXT
last_updatedTEXT
createdTEXT
contributor_nameTEXT
contributor_orgTEXT
contributor_linkTEXT
internationalINTEGER
county_fipsTEXT5-digit county FIPS
opp_scoreREALmultifamily screen points (research, unreviewed)
opp_reasonsTEXTJSON list of the reasons behind the points
for_saleINTEGER1 when a listing row exists
distressedINTEGER1 when a loan or foreclosure row exists

site_detail 0 rows

before/after facts extracted with a quote (field, value, quote, origin)

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
fieldTEXT
valueTEXT
quoteTEXTthe sentence from the source that supports the value
originTEXTwhich import, model run or research set produced the value

event 5,892 rows

the before/after timeline: dated facts

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
dateTEXT
yearINTEGER
kindTEXT
detailTEXT
shareTEXT
source_idINTEGER
verifiedTEXTtier: curated (from the authors' public map, not reviewed by them) | draft (imported or model-extracted, unreviewed) | contributed (submitted through the form and reviewed) | rejected

source 9,472 rows

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
urlTEXT
titleTEXT
publisherTEXT
dateTEXT
quoteTEXTthe sentence from the source that supports the value
kindTEXT
licenseTEXT
retrievedTEXTdate fetched

provenance 10,166 rows

which import or model produced which field, when

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
fieldTEXT
valueTEXT
originTEXTwhich import, model run or research set produced the value
refTEXT
modelTEXT
atTEXT

context 35,684 rows

one JSON document per site per context layer (the location sheet)

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
layerTEXTcontext layer name (see Context layers)
dataTEXTJSON document, keys per layer
retrievedTEXTdate fetched

party 1,196 rows

owners, operators, developers, architects, cities, REITs

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
nameTEXTaka: JSON array
kindTEXT
wikidata_qidTEXT
urlTEXT
notesTEXT

site_party 1,483 rows

who did what, when

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
party_idINTEGER
roleTEXT
year_fromINTEGER
year_toINTEGER
source_idINTEGER

party_fact 123 rows

Wikidata facts per party, JSON

ColumnTypeMeaning
nameTEXTaka: JSON array
dataTEXTJSON document, keys per layer

anchor 1,580 rows

anchor-store vocabulary

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
nameTEXTaka: JSON array
categoryTEXT
wikipediaTEXT
defunct_yearINTEGER
notesTEXT

site_anchor 2,824 rows

anchors per site with dates and fate

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
anchor_idINTEGER
year_fromINTEGER
year_toINTEGER
fateTEXTwhat happened to the anchor box

deal 565 rows

listings, sales, loans, special servicing, foreclosures, auctions

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
kindTEXT
dateTEXT
yearINTEGER
priceREAL
price_per_acreREAL
price_per_sqftREAL
acresREAL
sqftINTEGER
buyerTEXTperforming|watchlist|special servicing|default|foreclosed|REO
sellerTEXT
brokerTEXT
lenderTEXT
loan_amountREAL
loan_maturityTEXT
loan_statusTEXT
asking_priceREAL
listing_urlTEXT
statusTEXT
notesTEXT
source_urlTEXT
source_titleTEXT
source_dateTEXT
quoteTEXTthe sentence from the source that supports the value
verifiedTEXTtier: curated (from the authors' public map, not reviewed by them) | draft (imported or model-extracted, unreviewed) | contributed (submitted through the form and reviewed) | rejected
retrievedTEXTdate fetched

parcel 157 rows

county assessor parcels matched to the site

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
pinTEXTparcel identifier as the county publishes it
ownerTEXT
owner_addrTEXT
acresREAL
land_useTEXT
zoningTEXT
assessedREAL
appraisedREAL
taxableREAL
tax_amountREAL
sale_dateTEXT
sale_priceREAL
deed_refTEXT
rawTEXTassessor payload; never published
county_fipsTEXT5-digit county FIPS
source_urlTEXT
retrievedTEXTdate fetched

sec_fact 4,252 rows

facts from SEC filings: REIT 10-K property tables and CMBS ABS-EE Exhibit 102

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
fieldTEXT
valueTEXT
unitTEXT
as_ofTEXTdate the fact is stated for
quoteTEXTthe sentence from the source that supports the value
source_urlTEXT
filerTEXTSEC registrant
cikTEXTSEC Central Index Key
formTEXTSEC form type
filedTEXT
originTEXTwhich import, model run or research set produced the value
matchTEXThow the filing was matched to the site (exact | name+place | weak)
verifiedTEXTtier: curated (from the authors' public map, not reviewed by them) | draft (imported or model-extracted, unreviewed) | contributed (submitted through the form and reviewed) | rejected
retrievedTEXTdate fetched

market 3,222 rows

county context from Census ACS for the multifamily screen

ColumnTypeMeaning
stateTEXT
county_fipsTEXT5-digit county FIPS
county_nameTEXT
pop_2018INTEGER
pop_2023INTEGER
median_rent_2023INTEGER
median_hh_income_2023INTEGER
vacancy_rateREAL
retrievedTEXTdate fetched

element 216 rows

profile element vocabulary (BuiltWith-style tags)

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
slugTEXTcity-name, URL part
nameTEXTaka: JSON array
grpTEXT
descriptionTEXT

site_element 18,985 rows

element per site with the evidence snippet

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
element_idINTEGER
evidenceTEXTsnippet supporting the element
originTEXTwhich import, model run or research set produced the value

challenge 279 rows

challenges addressed (the authors' 2021 lens), with quote

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
challengeTEXT
quoteTEXTthe sentence from the source that supports the value
source_urlTEXT
originTEXTwhich import, model run or research set produced the value

policy_tool 148 rows

public tools behind a retrofit (rezoning, TIF, land bank…), with quote

ColumnTypeMeaning
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
toolTEXT
detailTEXT
quoteTEXTthe sentence from the source that supports the value
source_urlTEXT
originTEXTwhich import, model run or research set produced the value

photo 6,026 rows

key photos, with credit, for pages and for later mining

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
stageTEXT
fileTEXT
src_urlTEXT
commons_titleTEXT
authorTEXT
licenseTEXT
license_urlTEXT
creditTEXT
takenTEXT
widthINTEGER
heightINTEGER
is_keyINTEGER
captionTEXT
checkedTEXT

change_log 244 rows

public per-page change log

ColumnTypeMeaning
idINTEGERarcgis-webmap|staffbox-seed|wikidata|wikipedia|watcher|contributor|editor|excel-import
site_idTEXTowner|operator|developer|architect|original_developer|anchor_tenant|municipality|lender
atTEXT
whoTEXT
whatTEXT
from_verifiedTEXT
to_verifiedTEXT

Not published: outreach (drafts only a person sends) and parcel.raw (assessor payloads).

Documentation built 2026-10-21 from the live database (1,904 records). Corrections: the form or desk@retrofitatlas.org.