FEMA NRI County Risk Profile — Asset Hazard Join
Pricing
from $3.30 / 1,000 results
FEMA NRI County Risk Profile — Asset Hazard Join
Join any asset (address, lat/lon, or county FIPS) to FEMA's National Risk Index hazard profile at county or census-tract resolution: composite risk score, expected annual loss, social vulnerability, resilience, and ranked top-3 hazards across all 18 FEMA perils.
Pricing
from $3.30 / 1,000 results
Rating
0.0
(0)
Developer
Kyle Maloney
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 hours ago
Last modified
Categories
Share
Join any list of assets — street addresses (via state+county), GPS coordinates, or county FIPS codes — to FEMA's National Risk Index (NRI) hazard profile: composite risk score, expected annual loss ($), social vulnerability, community resilience, and a ranked top-3 hazards breakdown across all 18 FEMA perils (wildfire, hurricane, earthquake, tornado, inland flooding, drought, and more). Resolve at county resolution (default, ~3,144 areas) or census-tract resolution (~85,000 areas, finer-grained).
Source: FEMA National Risk Index Counties and Census Tracts FeatureServers (ArcGIS, keyless). County/tract geocoding for lat/lon assets uses the keyless FCC Census Block API. No API keys required.
Who this is for
- Insurers & reinsurers scoring a book of business by county- or tract-level hazard exposure.
- Real estate & REITs screening acquisition targets for climate/hazard risk down to the neighborhood.
- Corporate risk / business continuity teams profiling facility and supply-chain locations.
- Lenders & underwriters adding a hazard-risk data point to due diligence.
- AI agents (via MCP) that need a quick "how risky is this location" tool call.
County vs. census-tract resolution
Set the resolution input to "county" (default) or "tract":
- County — FEMA's county-level NRI roll-up, ~3,144 areas nationwide. Works with any of the three asset input types (fips, state+county, or lat/lon).
- Tract — FEMA's finer-grained census-tract NRI, ~85,000 areas nationwide.
Only applies precisely to lat/lon assets: the point is geocoded to a
15-digit Census block FIPS via the FCC API, and the tract FIPS (its first 11
digits) is joined against the NRI tract layer.
fipsandstate+countyassets carry no tract-level signal, so they always resolve at county level. If a tract lookup misses or the tract FeatureServer errors, the record gracefully falls back to its county profile — the run never fails, and the output tells you which resolution was actually used (resolution_used).
Honesty note on tract-level precision: FEMA's National Risk Index tract data
is a finer-grained cut of the same underlying hazard/loss/vulnerability models,
not an independently-collected dataset — smaller geographic areas mean smaller
underlying sample sizes for some inputs, so treat tract-level scores as
directionally useful rather than as statistically tight as the county
aggregate, and expect more Not Applicable ratings for geographically-gated
hazards (e.g. avalanche, coastal flooding, tsunami) in small inland tracts.
When precision matters for a decision, cross-check the tract score against its
parent county's score (both are always included via stcofips/county).
Two modes
1. Asset mode (default) — join your locations to NRI
Provide an assets array. Each item can be any one of:
{ "fips": "08031" }— 5-digit county FIPS code (always resolves at county level){ "state": "Colorado", "county": "Denver" }— state + county name (always resolves at county level){ "lat": 39.7392, "lon": -104.9903 }— geocoded via the FCC Census Block API (resolves at tract level whenresolution: "tract")
Add an optional "label" to identify each asset in the output.
{"resolution": "tract","assets": [{ "lat": 39.7392, "lon": -104.9903, "label": "Denver HQ" },{ "lat": 29.9511, "lon": -90.0715, "label": "New Orleans warehouse" },{ "fips": "06037", "label": "LA County DC (county-level — no lat/lon)" }]}
2. Inventory mode — full NRI dumps by state/county
Leave assets empty and set states and/or counties to pull full NRI profiles
for those areas, at the resolution set by resolution (all ~3,144 counties or
~85,000 tracts if left fully empty, bounded by maxResults).
{ "resolution": "tract", "states": ["CO"], "counties": ["Denver"] }
Output fields (per record)
asset_label,input_type,match_status(matched/not_found/geocode_failed/invalid_input)resolution_used—"tract"or"county", whichever resolution actually produced this record's profile (see fallback note above)state,county,stcofips,tract_fips,tract,nri_idrisk_score,risk_rating— FEMA NRI composite risk (0-100 percentile + category)expected_annual_loss_usd,expected_annual_loss_score— modeled $ loss/year, all hazards combinedsocial_vulnerability_score,social_vulnerability_rating— CDC/ATSDR SVI-basedresilience_score,resilience_rating— community recovery capacitytop_hazards— the area's 3 highest-scoring hazards of 18, each{code, hazard, score, rating}hazards— full breakdown of all 18 hazard types for the area
Example output row (tract resolution)
{"asset_label": "Denver HQ","input_type": "lat_lon","match_status": "matched","resolution_used": "tract","state": "Colorado","county": "Denver","stcofips": "08031","tract_fips": "08031002000","tract": "002000","nri_id": "T08031002000","risk_score": 63.34,"risk_rating": "Relatively Moderate","expected_annual_loss_usd": 3123456.78,"social_vulnerability_rating": "Relatively Moderate","resilience_rating": "Relatively Moderate","top_hazards": [{ "code": "HAIL", "hazard": "Hail", "score": 97.5, "rating": "Very High" },{ "code": "IFLD", "hazard": "Inland Flooding", "score": 73.9, "rating": "Relatively Moderate" }]}
Use as an MCP tool
This actor is discoverable to AI agents (Claude, Cursor, etc.) via mcp.apify.com.
Field-level output descriptions make it a clean, chainable tool: an agent can pass
a {state, county} or {lat, lon} (optionally with resolution: "tract") and get
back a structured hazard profile it can reason over directly — no scraping or
parsing needed.
Pricing
$6 per 1,000 results (single automatic Result/dataset-item event — one billed record per asset in asset mode, or per county/tract in inventory mode).
FAQ
Does this need an API key? No — the FEMA NRI FeatureServers and the FCC Census Block geocoder are all keyless public APIs.
What if my county name doesn't match? The join strips common suffixes
("County", "Parish", "Borough") and matches case-insensitively. If a county still
doesn't resolve, the record is returned with match_status: "not_found" (not an
error) so batch runs never fail partway through.
Can I get census-tract-level risk for a street address without lat/lon?
Not directly — tract resolution requires a coordinate (geocode the address to
lat/lon first, e.g. with a free geocoder, then pass it in). fips and
state+county inputs only carry county-level precision.
What does "Inland Flooding" mean vs "Coastal Flooding"? FEMA NRI's 18 hazard
types split flood risk into IFLD (Inland/riverine flooding) and CFLD (coastal
flooding, Not Applicable for landlocked areas) — both are included in the
hazards array.
How current is the data? FEMA NRI is a static, periodically-updated dataset (not real-time); this actor always queries the live FeatureServers for the current published version.