How we build forecasts
Every number on this platform comes from a defined pipeline: ingest authoritative data, run a pinned model, check governance gates, and publish with full provenance. Here is exactly how each step works.
The governing equation
We calculate: How likely is this hazard? plus a range showing how sure we are. If our quality checks fail, we do not publish.
Every forecast is a conditional probability: the chance of a hazard event given the latest ingested data, a pinned model version, and confirmation that all governance gates passed. The confidence band quantifies how much the estimate could shift given data and model uncertainty. If any blocking gate fails, the forecast is not published.
Data sources
We get all our data from official US government agencies:
- Earthquakes — US Geological Survey (USGS), updated continuously
- Hurricanes — NOAA weather models and National Hurricane Center, updated every 6 hours
- Tornadoes — Storm Prediction Center and NOAA radar, updated every 15 minutes to 1 hour
All input data comes from authoritative government and scientific agencies. We do not generate our own observations.
Real-time and reviewed earthquake events. Updated continuously. Feed latency: typically 1–5 minutes after event detection. Used for: seismicity rates, b-value computation, event clustering, Coulomb stress updates.
Synoptic-scale atmospheric analysis and forecasts. Updated every 6 hours (00Z, 06Z, 12Z, 18Z). Used for: deep-layer shear, SST, ocean heat content, upper-level divergence, moisture fields.
Official tropical cyclone intensity/track advisories and Statistical Hurricane Intensity Prediction Scheme outputs. Updated with each advisory cycle. Used for: current intensity, track forecast, environmental predictors.
Storm Prediction Center real-time mesoscale analysis fields. Updated hourly. Used for: CAPE, CIN, STP, SRH, composite parameters, LCL height. Freshness threshold: 45 minutes. Beyond this, gate G1 triggers degrade.
Real-time storm-object attributes including radar rotation, atmospheric profiles, and lightning data. Updated every 2 minutes. Used for: storm-level tornado scoring via hp-tornado-coherence-v1.
Rapid Refresh / High-Resolution Rapid Refresh model output and Multi-Radar Multi-Sensor precipitation/rotation products. Updated hourly (RAP) and every 15 min (HRRR/MRMS). Used for: convective initiation, mesocyclone detection, environmental verification.
Model architectures
Earthquake
A statistical model that learns from past earthquake patterns to estimate the chance of a significant earthquake in the next 30 days. Global AUC 0.907 | Temporal AUC 0.799.
Hurricane
Combines ocean temperature, wind patterns, and historical hurricane behavior to estimate the chance of rapid intensification (30+ knot increase in 24 hours). AUC: 0.938.
Tornado
Scores individual thunderstorms using radar rotation, atmospheric instability, and wind shear to estimate tornado probability. AUC: 0.894 (storm-object model).
Each hazard has its own model tailored to the physics and data characteristics of that domain.
Earthquake (hp-etas-v3.2.1)
Hurricane RI (hp-hurricane-ri-v8.1)
Tornado formation (hp-tornado-meso-v1.4.2)
Tornado storm-object (hp-tornado-coherence-v1)
Evaluation protocol
After each forecast window closes, we check what actually happened using official records:
- Did the earthquake happen? We check the USGS catalog.
- Did the hurricane intensify rapidly? We check the NHC best track.
- Did a tornado form? We check the SPC storm reports.
Results are published publicly so you can see our track record. We never edit past results.
Every forecast is evaluated against observed outcomes after its valid window closes.
Resolution process
- Each forecast has a defined valid window (e.g., 30 days for earthquake, 24h for RI/tornado).
- After the window closes, we check authoritative sources for the observed outcome.
- Earthquake: USGS reviewed catalog. Hurricane: NHC best track. Tornado: SPC storm reports.
- The outcome is recorded immutably in the verification ledger.
- No manual overrides or retroactive adjustments.
Scoring metrics
- Brier score - Mean squared probability error. Lower is better. 0 = perfect.
- Brier skill score - Improvement over climatological baseline.
- AUC - Discrimination ability (ROC curve area).
- Log score - Information-theoretic proper scoring rule.
- Calibration - Agreement between predicted and observed rates by bin.
- Sharpness - How decisive forecasts are (spread of probabilities).
Caveats and boundaries
- Always follow official NWS/USGS guidance. Visit the National Weather Service at weather.gov.
- A 40% probability does not mean it will happen. It means there is a 60% chance it will not.
- Our models are not perfect. We publish our accuracy scores so you can judge for yourself.
- These are not official forecasts. HazardPulse is an independent hazard intelligence platform. Always follow guidance from USGS, NHC, NWS, and SPC.
- Models have known limitations. Earthquake probability in low-seismicity regions has high uncertainty. Hurricane RI skill degrades for weak/disorganized systems. Tornado forecasting at long lead times (>12h) has low sharpness.
- Probabilities are not certainties. A 40% probability means 60% chance the event does not happen. Interpret accordingly.
- Calibration is approximate. Reliability diagrams show systematic tendencies but are computed on finite samples. Small bins have high sampling noise.
- Data freshness matters. If an input source is stale (exceeds threshold), gate G1 triggers degrade, widening uncertainty bands and displaying a warning.
- Models are retrained periodically. Version changes can cause abrupt shifts in probability that reflect improved skill, not real changes in hazard.
- Geographic scope is limited. Earthquake coverage focuses on well-instrumented seismic networks. Hurricane RI applies to Atlantic and East Pacific named storms. Tornado covers CONUS only.
Governance and gates
Every forecast must pass 13 automatic quality checks before you see it. These checks verify the data is fresh, the model is correct, the math is right, and the output is safe. If a check fails, the forecast either gets a warning label or is not published at all.
13 hard gates must pass before any forecast reaches you. This is not optional.
| # | Gate | What it checks |
|---|---|---|
| G0 | Schema Validity | All fields present and correctly typed |
| G1 | Source Freshness | Input data within acceptable latency |
| G2 | Model Lineage Pinned | Model version matches registry |
| G3 | Provenance Complete | All hashes present and chain intact |
| G4 | Calibration Floor | Brier score below threshold |
| G5 | Spatiotemporal Sanity | Scope within valid bounds |
| G6 | Alert Harm Guard | No alarmist or misleading language |
| G7 | Explanation Minimum | Why-changed panel has sufficient factors |
| G8 | Replayability | Replay artifact emitted and hash-verified |
| G9 | Public Projection Policy | Disclaimer attached to output |
| G10 | Security Policy | HTTP headers and CSP valid |
| G11 | Performance Budgets | Payload within size limits |
| G12 | Trust Surface Sync | UI chips match actual gate state |
pass = fully publish. degrade = publish with warning banner and widened uncertainty. block = forecast is not published.
Interpretation guidance
What this is
- Independent probabilistic hazard intelligence
- A platform for understanding risk, not a replacement for official warnings
- Transparent about uncertainty and limitations
- Fully auditable through public evidence chain
What this is not
- Not an official forecast or warning
- Not a substitute for USGS, NHC, NWS, or SPC guidance
- Not guaranteed to be accurate for any individual event
- Not advice for evacuation or emergency decisions