Methodology & sources
WeatherSignal follows one architecture principle: fetch once, normalize, cache, serve everyone. Your browser never calls a third-party weather or status API directly.
Data pipeline
EXTERNAL SOURCE -> WeatherSignal fetch worker (scheduled, server-side) -> provider adapter (normalize to one schema) -> store current snapshot + history -> cache -> public website and API
Every metric on the site shows two timestamps: when the source produced the data and when WeatherSignal last confirmed it. Past a per-source threshold the metric is labelled DATA DELAYED rather than shown as current, and an unreachable source is reported as unavailable — never silently substituted.
Sources, intervals, and rights
| Source | Used for | Poll interval | Stale after | Commercial-use status |
|---|---|---|---|---|
| NOAA / National Weather Service | Official alerts (US) | 60 s | 5 min | US Government public domain — commercial use permitted |
| NOAA National Hurricane Center | Tropical storm tracks | 5 min | 60 min | US Government public domain |
| Open-Meteo | Forecast, current conditions | 5 min per hot location | 60 min | Free tier is non-commercial — a paid plan is required before commercial launch |
| Open-Meteo Air Quality | AQI and pollutants | 15 min | 60 min | Same licensing as Open-Meteo |
| Open-Meteo Geocoding | Location search | on demand, cached 24 h | n/a | Attribution required |
| RainViewer | Radar tiles | 2 min index | 15 min | Free tier non-commercial — commercial plan required before launch |
| OpenStreetMap | Base map tiles | on demand | n/a | ODbL, attribution required; tile usage policy applies — self-hosted or paid tiles at scale |
| Provider status pages (Statuspage-compatible) | Service incidents | 3 min | 15 min | Public status feeds, attribution and link back |
| WeatherSignal reachability probes | DNS, CDN, and cloud network conditions | 60 s | 2 min | Own measurements against public endpoints, fair-use request rates |
Alert priority score (0–100)
Normalized level (Emergency 45 / Warning 35 / Watch 22 / Advisory 14 / Informational 6) plus official severity (Extreme 25 / Severe 18 / Moderate 10 / Minor 4), urgency (Immediate 20 / Expected 13 / Future 6 / Past 1), and certainty (Observed 10 / Likely 7 / Possible 4 / Unlikely 1), with a small adjustment for time remaining before expiry. The original official classification is always displayed next to it and is never modified.
Provider severity score (0–100)
Base value from the provider's own indicator (none 0 / maintenance 12 / minor 35 / major 65 / critical 88), plus up to 8 points for affected components, up to 6 for concurrent incidents, and up to 6 for incident duration.
Internet Health score
Starts at 100. Each non-operational provider subtracts (severity ÷ 100) × 30 × a category weight (cloud 1.0, payments 0.9, everything else 0.7). Elevated network congestion subtracts 3, high congestion 6, and an unreachable RPC endpoint 4. Bands: 95+ stable, 85+ minor issues, 70+ degraded, 50+ widespread issues, below 50 critical.
Global Conditions index
An informational index — not an official safety rating and not a measure of the whole planet. It starts at 100 and subtracts 3 points per active emergency-level alert, 0.5 per warning, 0.2 per watch, and 0.05 per advisory, each capped at 35 points. Coverage is currently the United States only, because that is where WeatherSignal has licensed official alert data.
Today's Weather Score (0–100)
A WeatherSignal calculation, not a source value. It starts at 100 and subtracts fixed penalties from the current and next-12-hour forecast: feels-like temperature (35 at 100°F+, 20 at 92°F+, 8 at 85°F+, 32 at 15°F or below, 18 at 32°F or below, 8 at 45°F or below), rain chance (22 at 80%+, 12 at 50%+, 5 at 30%+), wind (18 at 30 mph+, 9 at 20 mph+, 4 at 14 mph+), UV index (10 at 10+, 6 at 8+), and dew point (10 at 70°F+, 5 at 65°F+). Bands: 85+ excellent, 70+ good, 50+ mixed, 30+ rough, below 30 stay in. Every panel lists the exact inputs that moved the number.
Signal Insights checks
Each check is deterministic — the same forecast always produces the same answer, and no language model is involved. Thresholds:
- Umbrella or nah? — flags the next hours where rain chance reaches 40%; “bring it” once the peak passes 70%.
- Car wash check — bad if any hour in the window has a 50%+ rain chance or 0.02 in+ of precipitation; caution if wind reaches 22 mph (dust).
- Best time today — ranks remaining daylight hours by the same penalty model used for the daily score.
- Dog walk window — daylight hours between 25°F and 85°F with rain chance under 40%.
- Cookout check — evening hours (4–9 p.m.); bad at 50%+ rain or 25 mph wind, caution at 30%+ rain, 18 mph wind, or below 50°F.
- Hair weather — frizz risk at 75%+ humidity or a 68°F+ dew point; borderline at 60% / 60°F.
- Windows down? — yes between 58°F and 84°F with rain chance under 20% and wind under 18 mph.
When an input is missing for a location, the check reports “unknown” and says which reading is unavailable — it never guesses.
What WeatherSignal never claims
- Guaranteed forecast accuracy, alert delivery, outage detection, or safety.
- That severe weather will definitely occur, or that a storm will follow a specific path.
- That a provider is down without evidence from that provider's official source.
- That weather caused an outage, or an outage caused another outage, without a supporting source.
- Medical, financial, or investment advice.
WeatherSignal always distinguishes observed conditions, forecast conditions, official warnings, and WeatherSignal-generated summaries. Summaries are produced from structured data with fixed rules, never invented.