How GeoShake Validates Earthquakes: AFAD & USGS Integration
When a GeoShake community sensor detects ground motion, how do you know it's a real earthquake and not a passing truck? The answer is GeoShake's multi-source validation system — which cross-references community sensor data against official earthquake catalogs from AFAD (Turkey) and USGS (global).
The Validation Problem
Community sensor networks face an inherent challenge: individual sensors can be triggered by non-seismic sources — construction, traffic, applidence vibrations, even slamming doors. Without validation, these events would generate false alarms, eroding user trust.
GeoShake solves this with a two-level validation approach.
Level 1: Multi-Node Community Validation
When ground motion is detected, GeoShake checks for geographic correlation:
- Multiple sensors in the same region must report elevated ground motion within a narrow time window
- The timing of detections across sensors must be consistent with seismic wave propagation speeds
- Single-sensor triggers are logged but don't generate alerts
This eliminates local noise: a truck passing your house triggers one sensor. An earthquake triggers many sensors simultaneously, with detection time differences matching the known speed of seismic waves.
Level 2: Official Source Cross-Validation
Community detections are then cross-referenced against official earthquake catalogs:
AFAD (Disaster and Emergency Management Authority — Turkey)
- Turkey's official earthquake monitoring agency
- Operates a network of seismological stations across Turkey
- Reports earthquake location, magnitude, and depth
- GeoShake queries AFAD data to match community detections with official events
USGS (United States Geological Survey)
- Provides global earthquake data via public APIs
- Reports significant events worldwide within minutes
- GeoShake uses USGS as a secondary validation source for global events
The Matching Algorithm
GeoShake's backend (implemented as a Supabase Edge Function) uses a scoring system to match community detections with official reports:
- Time window — community detection must occur within a few minutes of the official event time
- Geographic proximity — the community detection location must be within a plausible distance of the official epicenter
- Magnitude consistency — detected intensity should be consistent with the reported magnitude at the detection distance
Events that match across community sensors AND official sources are classified as validated earthquakes and trigger user alerts with high confidence.
What This Means for Users
High Trust
You can trust GeoShake alerts because they require agreement from both:
- Multiple independent community sensors
- At least one official seismological agency
Low False Alarm Rate
The dual-validation system dramatically reduces false positives. Individual sensor triggers, phone falls, and local vibrations don't pass the multi-node + official validation filters.
Fast Detection
Community sensors can detect local events before official reports are published (AFAD and USGS take seconds to minutes for initial reports). The community detection provides speed; the official validation provides confirmation.
Transparency
GeoShake's validation logic is open source. You can inspect exactly how detections are scored and validated.
The Data Flow
Community Sensors → Cloud Backend → Multi-Node Check ──┐
├── Validate → Alert Users
AFAD/USGS APIs → Cloud Backend → Official Event Check ──┘
- Sensors stream data continuously
- Backend detects anomalies across multiple sensors
- Backend queries AFAD and USGS for matching official events
- Validated events → push notification to app users
- Unvalidated triggers → logged for review but no public alert
Why Both Sources Matter
| Source | Strength | Limitation |
|---|---|---|
| Community sensors | Fast local detection, dense coverage | Can trigger on non-seismic sources |
| AFAD | Authoritative for Turkey, precise epicenter | Reporting delay (seconds to minutes) |
| USGS | Global coverage, reliable | Limited sensitivity for small events outside the US |
| All three together | Fast + accurate + authoritative | Comprehensive validated detection |
Technical Details
For developers and researchers, GeoShake's validation system:
- Runs on Supabase Edge Functions — TypeScript-based serverless functions
- Queries AFAD XML feed and USGS GeoJSON API in real time
- Uses geographic distance calculation (Haversine formula) for proximity matching
- Implements configurable thresholds for time window, distance, and magnitude matching
- Archives all detections (validated and unvalidated) for research purposes
The entire matching codebase is available in GeoShake's open-source repository.
📱 Receive validated earthquake alerts. Download GeoShake — free on iOS and Android.
Related Articles:
Ready to join the network?
Get the GeoShake T1 sensor and start detecting earthquakes at home.
Get earthquake insights in your inbox
One short email a month — new guides, network updates, real detection stories. No spam, unsubscribe anytime.