USGS Earthquake Data Scraper
Pricing
from $4.50 / 1,000 results
USGS Earthquake Data Scraper
Extract earthquake data from the USGS seismic network. Filter by date range, magnitude, location coordinates, and alert level. Get magnitude, depth, coordinates, felt reports, tsunami warnings, and significance scores. 150K+ events per year. Pure API, no proxy needed.
Pricing
from $4.50 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
0
Monthly active users
5 days ago
Last modified
Categories
Share

🌍 USGS Earthquake Scraper
🚀 Export real-time global earthquake data in seconds. Pull live seismic events from the USGS public feed - magnitude, depth, coordinates, tsunami warnings, and significance scores - no API key required.
🕒 Last updated: 2026-05-21 · 📊 14 fields per record · Up to 20,000+ events/month · Global coverage
The USGS Earthquake Hazards Program publishes real-time GeoJSON feeds updated every 60 seconds covering every seismic event detected by the global network. This actor fetches those feeds directly and delivers structured, analysis-ready earthquake records to your dataset - no browser automation, no authentication, no rate-limit workarounds.
The data comes straight from official USGS servers (earthquake.usgs.gov), the gold standard for seismic monitoring data trusted by governments, researchers, and emergency response teams worldwide.
Coverage
The USGS network monitors seismic activity globally across all magnitudes. Pre-built feeds cover the last hour, day, week, or 30 days. The custom date range mode queries the FDSNWS API and can retrieve historical events back to 1900. Each event record includes 14 structured fields covering identification, location, depth, magnitude, tsunami status, and USGS significance scoring.
Target Audience
| Who | What they need |
|---|---|
| Emergency managers | Real-time alerts for M4.5+ events near population centers |
| Seismologists & researchers | Historical datasets for pattern analysis and modeling |
| Journalists | Breaking news data on significant earthquakes |
| Insurance/reinsurance | Exposure analysis for earthquake-prone regions |
| App developers | Live feed data for earthquake notification apps |
| GIS analysts | Lat/lon + depth data for spatial mapping |
📋 What the USGS Earthquake Scraper does
- Fetches from official USGS GeoJSON feeds - updated every 60 seconds
- Supports pre-built feeds: last hour, last day, last week, last 30 days
- Custom date range mode for historical data via the FDSNWS API
- Magnitude filtering (0 to 10) to focus on events relevant to your use case
- Delivers 14 structured fields per earthquake event including coordinates, depth, tsunami warning flag, and USGS significance score
- Handles both "reviewed" and "automatic" status events
💡 Why it matters: USGS earthquake data is the authoritative global seismic record. Raw GeoJSON feeds require parsing, filtering, and structuring. This actor does that instantly - output is CSV/Excel/JSON-ready from the first run.
🎬 Full Demo
🚧 Coming soon
⚙️ Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| maxItems | integer | No | 10 | Maximum number of records to return. Free users limited to 10. |
| timeRange | select | No | last_day | Pre-built feed window: last_hour, last_day, last_week, last_month. |
| minMagnitude | number | No | 2.5 | Minimum magnitude filter (0-10). Use 0 for all events. |
| startTime | text | No | - | Custom range start (ISO 8601: 2024-01-01). Overrides timeRange. |
| endTime | text | No | - | Custom range end (ISO 8601: 2024-01-31). |
Example 1 - Last day, M2.5+:
{"maxItems": 100,"timeRange": "last_day","minMagnitude": 2.5}
Example 2 - Custom historical range:
{"maxItems": 500,"startTime": "2024-01-01","endTime": "2024-01-31","minMagnitude": 4.5}
⚠️ Good to Know: Custom date ranges (startTime/endTime) query the FDSNWS event API and can return large result sets for long periods. Always set maxItems when querying extended historical ranges to avoid timeouts.
📊 Output
| Field | Type | Description |
|---|---|---|
| 🆔 id | string | Unique USGS event identifier (e.g. hv74965437) |
| 📊 magnitude | number | Richter magnitude of the earthquake |
| 📍 place | string | Human-readable location description |
| 🕒 time | string | ISO 8601 timestamp of the event |
| 🔄 updated | string | ISO 8601 timestamp of last USGS data update |
| 🔗 url | string | USGS event detail page URL |
| ✅ status | string | Review status: "reviewed" or "automatic" |
| 🌊 tsunamiWarning | boolean | True if tsunami warning issued for this event |
| 📈 significance | number | USGS significance score 0-1000 (higher = more significant) |
| ⬇️ depth | number | Hypocenter depth in kilometers |
| 🌐 latitude | number | Epicenter geographic latitude |
| 🌐 longitude | number | Epicenter geographic longitude |
| 🕓 scrapedAt | string | ISO 8601 timestamp when record was collected |
| ❌ error | string | Error message if record could not be collected |
Sample records (real output, 2026-05-21 run):
[{"id": "hv74965437","magnitude": 2.73,"place": "1 km N of Pāhala, Hawaii","time": "2026-05-21T20:53:16.190Z","updated": "2026-05-21T22:43:22.280Z","url": "https://earthquake.usgs.gov/earthquakes/eventpage/hv74965437","status": "reviewed","tsunamiWarning": false,"significance": 115,"depth": 31.88,"latitude": 19.219,"longitude": -155.478166666667,"scrapedAt": "2026-05-21T22:56:29.090Z"},{"id": "nc75366637","magnitude": 3.89,"place": "62 km W of Petrolia, CA","time": "2026-05-21T19:00:10.190Z","updated": "2026-05-21T22:52:21.187Z","url": "https://earthquake.usgs.gov/earthquakes/eventpage/nc75366637","status": "reviewed","tsunamiWarning": false,"significance": 233,"depth": 10,"latitude": 40.3773333333333,"longitude": -125.010666666667,"scrapedAt": "2026-05-21T22:56:29.090Z"},{"id": "tx2026jyhaxp","magnitude": 2.7,"place": "15 km SE of Pearsall, Texas","time": "2026-05-21T16:46:54.711Z","updated": "2026-05-21T22:46:53.848Z","url": "https://earthquake.usgs.gov/earthquakes/eventpage/tx2026jyhaxp","status": "reviewed","tsunamiWarning": false,"significance": 112,"depth": 8.457,"latitude": 28.799,"longitude": -98.98,"scrapedAt": "2026-05-21T22:56:29.090Z"}]
✨ Why choose this Actor
| Feature | Benefit |
|---|---|
| 🌍 Official USGS source | Authoritative data trusted by governments worldwide |
| ⚡ 60-second freshness | Feeds update every minute - near-real-time awareness |
| 📅 Historical access | Query events back to 1900 via custom date range |
| 🎛️ Magnitude filtering | Focus on events that matter - from micro to major |
| 🌊 Tsunami flag | Built-in boolean for coastal hazard screening |
| 📊 Significance score | USGS-computed 0-1000 impact score for prioritization |
| 🔑 No auth required | Zero API keys, zero setup friction |
| 💰 Pay-per-event pricing | Only pay for what you extract |
📈 How it compares to alternatives
| Option | Freshness | Historical | Structured output | No auth | Cost |
|---|---|---|---|---|---|
| This Actor | 60 sec | Yes (1900+) | Yes (14 fields) | Yes | Pay-per-event |
| Manual GeoJSON parsing | 60 sec | Partial | Manual work | Yes | Dev time |
| Third-party seismic APIs | Varies | Varies | Yes | No - API key | Subscription |
| Web scraping USGS UI | Slow | Limited | Manual work | Yes | Dev time |
🚀 How to use
- Create a free Apify account w/ $5 credit
- Open the actor and click Try for free
- Set your
timeRange(last_hour / last_day / last_week / last_month) or provide customstartTime/endTime - Set
minMagnitudeto filter by event size (e.g. 2.5 for local significant events, 4.5 for globally notable) - Set
maxItemsto control dataset size - Click Start and download results as CSV, Excel, JSON, or XML
💼 Business use cases
Emergency Management and Alerts
Monitor M4.5+ events in real time and trigger automated alerts when earthquakes occur near monitored regions. Connect to Slack or email via Apify webhooks - no polling code needed.
Insurance and Reinsurance Risk Modeling
Pull last-30-days datasets to map seismic activity against policy exposure. Combine latitude/longitude + depth + magnitude for loss estimation models. Schedule monthly runs for automated exposure reports.
Academic and Government Research
Build historical seismic catalogues for specific regions and time windows using the custom date range mode. Export to CSV for analysis in R, Python, or GIS tools. The USGS significance score helps triage large datasets.
Media and Journalism
Set up automatic runs to detect significant earthquakes (sig > 600, magnitude > 5) and pipe results to a CMS or news wire workflow. The url field links directly to the official USGS event page for verification.
🔌 Automating USGS Earthquake Scraper
Connect this actor to your favorite automation platform:
- Make (formerly Integromat): Trigger on actor completion, filter by magnitude, post to Slack or create Google Sheets rows
- Zapier: Connect dataset output to PagerDuty, email, or SMS for alerting workflows
- Slack: Post earthquake summaries to a monitoring channel via webhook
- Google Sheets: Schedule hourly/daily runs and append new records automatically
- Apify Schedules: Set a cron schedule (e.g. every hour) directly in the Apify console for continuous monitoring
🌟 Beyond business use cases
Research and Education
Seismology students and researchers can pull datasets for any global region and time window to study earthquake clustering, depth distribution, and plate boundary behavior. The 14-field structured output feeds directly into pandas, R, or MATLAB analysis pipelines.
Creative Projects
Artists and data journalists can use magnitude and coordinates to generate geographic visualizations, sonifications of seismic rhythms, or interactive maps showing global tectonic activity.
Non-profit and Humanitarian
NGOs working in earthquake-prone regions can build low-cost early-warning dashboards using scheduled runs and webhook integrations - no seismic infrastructure required.
Personal Experimentation
Build a home earthquake notification system: schedule hourly runs for M2.0+ events within 200km of your city and get a daily digest via email. The actor does the data collection - you focus on the logic.
🤖 Ask an AI assistant about this scraper
Not sure which settings to use? Paste this into any AI assistant:
"I'm using the ParseForge USGS Earthquake Scraper on Apify. It pulls real-time and historical earthquake data from USGS feeds with fields: id, magnitude, place, time, updated, url, status, tsunamiWarning, significance, depth, latitude, longitude. I want to [describe your goal]. What input settings should I use and how should I process the output?"
❓ Frequently Asked Questions
🔑 Do I need an API key or USGS account? No. USGS earthquake feeds are fully public. No registration, no authentication, no rate limits to manage.
⚡ How fresh is the data? USGS pre-built feeds are updated every 60 seconds. Custom API queries reflect the same near-real-time database.
📅 How far back can I query historical data? The FDSNWS event API (used for custom date ranges) covers events back to 1900.
🌍 Does this cover global earthquakes or just the US? Global. USGS monitors seismic activity worldwide through its network of monitoring stations and partner agencies.
📊 What does the significance score mean? It's a USGS-computed integer (0-1000) combining magnitude, felt reports, and PAGER alert level. Higher = more socially significant. Use sig > 600 to filter major events.
🌊 When is tsunamiWarning true? When USGS flagged the event as generating or having potential to generate a tsunami (properties.tsunami === 1 in the source data).
📈 How many records can I get from last_month?
The all_month feed typically contains 8,000-20,000 events. M2.5+ last month is usually 1,000-3,000. Set maxItems accordingly.
🕒 How long does a run take? Pre-built feeds: under 5 seconds for any maxItems. Custom date range queries depend on the date window and result count - typically under 30 seconds for a month of M2.5+ events.
💳 How is billing calculated? This actor uses pay-per-event pricing. You are only charged for records successfully pushed to the dataset. Errors are free.
🔧 Can I get additional fields like felt reports or shakemap data?
Not in this actor. USGS provides additional detail via per-event GeoJSON detail URLs (the detail field in raw data). A future version may support detail-page enrichment.
🆓 What can free users access? Free users get a preview of 10 records per run. Upgrade to a paid plan to unlock up to 1,000,000 records.
📁 What export formats are available? JSON, CSV, Excel, XML, RSS - selectable from the Apify dataset view after any run.
🔌 Integrate with any app
Connect your earthquake dataset to the tools you already use:
- Google Sheets - Append earthquake records to spreadsheets on a schedule
- Airtable - Build an earthquake monitoring base with filtered views
- Make (Integromat) - Automate alert workflows triggered by significant events
- Zapier - Connect to 7,000+ apps: Slack, email, PagerDuty, Notion, and more
- n8n - Self-hosted automation with Apify node
- REST API - Direct dataset API access with your Apify token
- Python / pandas -
pd.read_json(dataset_url)for instant DataFrame - R -
jsonlite::fromJSON(dataset_url)for seismic analysis - Power BI / Tableau - Connect to Apify dataset URL as JSON data source
- QGIS / ArcGIS - Import lat/lon/depth for spatial analysis
🔗 Recommended Actors
| Actor | Description |
|---|---|
| OpenSky Network Flight Tracker | Real-time global flight data from ADS-B transponders |
| USDA NRCS Snow & Water Data | World Bank development indicators dataset |
| OurAirports Global Airport Database | 70,000+ airports with coordinates, ICAO codes, and runways |
💡 Pro Tip: browse the complete ParseForge collection for 50+ ready-to-run public data scrapers covering aviation, finance, government, science, and more.
Disclaimer: This actor uses the publicly available USGS Earthquake Hazards Program GeoJSON feeds (earthquake.usgs.gov). All data is provided by the United States Geological Survey and is in the public domain. ParseForge is not affiliated with USGS. Use of this data is subject to USGS terms of service. This actor is provided for informational and research purposes only and should not be used as the sole basis for emergency response decisions.