← Back to Home

Methodology

How HazardPrep calculates your personalized multi-hazard risk score.

Overview

HazardPrep generates a composite risk score (0–100) for any US address by combining data from four federal government sources. Each address is geocoded using the US Census Bureau API, then assessed across multiple hazard types simultaneously.

The system uses a provider-based architecture where each data source independently calculates risk scores for its domain. Providers run in parallel, and the system degrades gracefully if any source is unavailable — you still get results from the remaining providers.

Assessment Pipeline

1. Address Input

↓ US Census Bureau Geocoder

2. Geocoding → (latitude, longitude, FIPS code, county, state)

↓ Parallel API queries

3. Data Fetch → FEMA + USGS + NOAA + NIFC (concurrent)

↓ Normalize to 0-100

4. Per-Hazard Scoring → individual scores per hazard type

↓ Weighted average

5. Composite Score → overall risk score (0-100)

↓ Rule-based

6. Recommendations → personalized preparation checklist

Data Sources

FEMA Disaster Declarations

API →

Federal Emergency Management Agency

Historical disaster declarations by county. Covers floods, hurricanes, tornadoes, wildfires, severe storms, and winter storms.

Coverage

All US counties, 1953–present

Scoring Method

Counts disaster declarations per hazard type for the county. Uses logarithmic scaling (log₂) to normalize: 0 declarations = 0, 1 = 20, 5 = 50, 15+ = 80, 30+ = 100.

USGS Earthquake Hazards

API →

United States Geological Survey

Historical earthquake events within 150km of the location over the past 30 years (M2.5+).

Coverage

Global coverage, address-level precision

Scoring Method

Composite of maximum magnitude (60% weight) and frequency of M4.0+ events (40% weight). Max magnitude is scored as (magnitude / 8.0) × 100.

NOAA National Weather Service

API →

National Oceanic and Atmospheric Administration

Active weather alerts for the location. Covers hurricanes, tornadoes, severe storms, and winter weather.

Coverage

All US locations, real-time

Scoring Method

Categorizes active alerts by hazard type. Scores by maximum severity: Extreme = 100, Severe = 80, Moderate = 50, Minor = 25.

NIFC Wildfire Data

API →

National Interagency Fire Center

Active wildfire incidents within 200km of the location.

Coverage

All US locations, real-time during fire season

Scoring Method

Composite of active fire count (up to 50 points) and total acreage burned (up to 50 points, logarithmic scale).

USDA Drought Monitor

API →

USDA / NOAA / National Drought Mitigation Center

Current drought conditions by county. Reports five severity levels from D0 (Abnormally Dry) to D4 (Exceptional Drought).

Coverage

All US counties, updated weekly

Scoring Method

Weighted score based on drought severity and area coverage: D0 = 10%, D1 = 25%, D2 = 50%, D3 = 75%, D4 = 100% of affected area percentage.

NOAA Storm Events Database

API →

NOAA National Centers for Environmental Information

Historical severe weather events over the past 20 years. Covers tornadoes, thunderstorms, hail, floods, hurricanes, ice storms, and heat events.

Coverage

All US counties, 2004–present

Scoring Method

Log-scale normalization of event count (up to 80 points) plus casualty bonus (up to 20 points) per hazard type.

FEMA NFIP Claims

API →

Federal Emergency Management Agency

Historical National Flood Insurance Program claims by county. Tracks flood insurance payouts over decades.

Coverage

All US counties with NFIP policies

Scoring Method

Composite of total claims count (0–60 points, log scale), total payout amount (0–20 points), and recent claim recency (0–20 points).

NASA/USGS Landslide Catalog

API →

NASA / United States Geological Survey

Global landslide events within 100km of the location. Includes event size, fatalities, and injuries.

Coverage

Global coverage, address-level precision

Scoring Method

Event count (0–50 points) plus size-weighted severity (0–30 points) plus casualty score (0–20 points), all log-scaled.

Composite Score Calculation

The overall risk score is a weighted average of individual hazard scores. When multiple data sources report on the same hazard type (e.g., both FEMA and NOAA report hurricane risk), the highest score is used.

Hazard TypeDefault Weight
Flood20%
Earthquake15%
Wildfire15%
Hurricane15%
Tornado10%
Severe Storm10%
Winter Storm5%
Drought5%
Heatwave5%

Weights are automatically re-normalized when not all hazard types are present for a given location.

Region-Aware Weights

HazardPrep automatically adjusts weights based on your state's region. For example, earthquake weight increases to 25% on the Pacific Coast, while hurricane weight increases to 25% on the Gulf Coast. This ensures the composite score reflects regionally relevant risks rather than applying a one-size-fits-all model. Regions: Pacific, Gulf Coast, Atlantic, Tornado Alley, Mountain West, Upper Midwest, Alaska, Hawaii.

Risk Level Classification

0–19
Very Low
20–39
Low
40–59
Moderate
60–79
High
80–100
Very High

Limitations

  • FEMA disaster data is at the county level, not address-specific. Two addresses in the same county will receive the same FEMA-based scores.
  • NOAA weather alerts reflect current conditions, not historical risk. Scores fluctuate based on active weather events.
  • Wildfire data reflects active fires only. Historical burn area and vegetation analysis would improve baseline risk assessment.
  • The composite weighting system uses fixed defaults. Ideal weights would vary by region (e.g., earthquakes weighted higher on the West Coast).
  • This tool is for informational purposes only. It should not be used as the sole basis for insurance, real estate, or emergency planning decisions.

Open Source

The scoring engine is available as a standalone npm package: @hazardprep/core. You can integrate it into your own applications, extend it with custom data providers, or contribute improvements.

View on GitHub