Type an address. Get the social determinants of health, chronic-disease prevalence, environmental exposures, and provider supply for the surrounding census tract — sourced from Census, CDC, EPA, and HRSA, refreshed on the cadence each agency publishes.
Why census tracts
Health outcomes vary block by block. A ZIP-level view averages away the gradients that matter — the diabetes prevalence on one side of a freeway, the uninsured rate two stops down the bus line, the housing-cost burden in one neighborhood of a county that looks affluent in aggregate.
GeoHealth resolves any U.S. address to its census tract and returns the data clinicians, planners, and researchers actually need to act on — at the granularity where intervention happens.
What you get
Every census tract is enriched with demographic, vulnerability, health-outcome, environmental, provider-supply, and decision-support signals — all queryable through one API, one map, and one Python SDK.
ACS population, income, poverty, insurance, unemployment, and age — plus multi-year history (2018–2022) with absolute and percent change.
U.S. Census Bureau
CDC/ATSDR SVI percentile rankings across four themes — socioeconomic status, household composition, minority status & language, housing & transportation.
CDC / ATSDR
Fourteen tract-level health measures from CDC PLACES — diabetes, obesity, mental health, asthma, hypertension, smoking, dental visits, and more.
CDC PLACES
EPA EJScreen indicators — PM2.5, ozone, diesel particulate matter, lead paint, Superfund proximity, hazardous waste, and air toxics cancer risk.
EPA EJScreen
PCP density, individual NPI provider lookup, HRSA HPSA shortage designations, and FQHC presence — the supply side of access.
NPPES · HRSA
Composite SDOH index, AI-generated plain-English narratives, and a Direct Primary Care market-fit score (0–100) across five dimensions.
Computed
Provenance
Built entirely on publicly available federal data — no proprietary signals, no opaque models.
See the Methodology page for vintages, update cadence, and scoring details.
For developers & AI agents
Hit the REST API directly, install the typed Python client, or wire it into Claude Desktop and Claude Code as a native MCP tool. Authenticated requests, rate-limit headers, OpenAPI 3.1 schema, and an /llms.txt agent overview included.
from geohealth.sdk import GeoHealthClient
BASE = "https://geohealth-api-production.up.railway.app"
with GeoHealthClient(BASE, api_key="…") as client:
ctx = client.context(
address="1234 Main St, Minneapolis, MN",
narrative=True,
)
print(ctx.tract.geoid) # 27053026200
print(ctx.tract.poverty_rate) # 18.2
print(ctx.tract.svi_themes.rpl_themes)
print(ctx.tract.places_measures.diabetes)
print(ctx.narrative) # Plain-English summary